Index: /branches/eam_branches/ippconfig.20240412/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/Makefile.am	(revision 42661)
@@ -0,0 +1,63 @@
+SUBDIRS = \
+	recipes \
+	isp \
+	gpc1 \
+	gpc1-tdi \
+	gpc2 \
+	cfh12k \
+	megacam \
+	mosaic2 \
+	simple \
+	simmosaic \
+	simtest \
+	vysos5 \
+	vysos20 \
+	tc3 \
+	skycell \
+	sdssmosaic \
+	sdss \
+	esowfi \
+	lbc_red \
+	lulin \
+	ssp \
+	uh8k \
+	suprime  \
+	hsc
+
+install_files = \
+	system.config \
+	GSCregions.tbl \
+	dvo.photcodes
+
+built_sources = \
+	ipprc.config.in \
+	dvo.site.in
+
+built_files = \
+	ipprc.config \
+	dvo.site
+
+installdir = $(datadir)/ippconfig
+
+install_DATA = $(install_files) $(built_files)
+
+install-data-hook:
+	chmod 0755 $(installdir) 
+
+EXTRA_DIST = $(install_files) $(built_sources)
+
+BUILT_SOURCES = $(built_files)
+
+#ACLOCAL_AMFLAGS = -I m4
+
+# From the autoconf manual, section 4.7.2 "Installation Directory Variables"
+edit = sed \
+	-e 's|@pkgdatadir[@]|$(pkgdatadir)|g' \
+	-e 's|@prefix[@]|$(prefix)|g'
+
+ipprc.config dvo.site: Makefile
+	rm -f $@
+	$(edit) '$(srcdir)/$@.in' > $@
+
+ipprc.config: $(srcdir)/ipprc.config.in
+dvo.site: $(srcdir)/dvo.site.in
Index: /branches/eam_branches/ippconfig.20240412/README
===================================================================
--- /branches/eam_branches/ippconfig.20240412/README	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/README	(revision 42661)
@@ -0,0 +1,21 @@
+
+Please read installation section of the IPP User's Guide for more details.
+
+To build and install the IPP configuration scripts, run the following:
+
+configure
+make
+make install
+
+After installation:
+
+Copy dvo.site to ~/.ptolemyrc
+
+Copy ipprc.config to ~/.ipprc
+
+Edit this file:
+  - Set the DBUSER and DBPASSWORD to your mysql username and password
+
+Copy recipes/nightly_science.config.template to recipes/nightly_science.config in ipprc
+PATH.  
+
Index: /branches/eam_branches/ippconfig.20240412/Recipes.txt
===================================================================
--- /branches/eam_branches/ippconfig.20240412/Recipes.txt	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/Recipes.txt	(revision 42661)
@@ -0,0 +1,20 @@
+
+The recipes may be defined by files at two levels: system and camera.
+
+A single recipe (eg, PPIMAGE) must have a system-level file which
+defines all of the recipe variables.  The camera-level recipe may
+superceed values define in the system-level file.  
+
+Any recipe file may also define alternative symbolic names for
+recipes by including metadata folders named by the symbolic name.  
+
+The order of precedence is: 
+
+* primary system-level values
+* symbolic system-level values
+* primary camera-level values
+* symbolic camera-level values
+
+XXX the MULTI RESET thing is broken: the flag is not being carried
+through to the psMetadataItemAdd function...
+
Index: /branches/eam_branches/ippconfig.20240412/autogen.sh
===================================================================
--- /branches/eam_branches/ippconfig.20240412/autogen.sh	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/autogen.sh	(revision 42661)
@@ -0,0 +1,103 @@
+#!/bin/sh
+# Run this to generate all the initial makefiles, etc.
+
+srcdir=`dirname $0`
+test -z "$srcdir" && srcdir=.
+
+ORIGDIR=`pwd`
+cd $srcdir
+
+PROJECT=ippConfig
+TEST_TYPE=-f
+# change this to be a unique filename in the top level dir
+FILE=autogen.sh
+
+DIE=0
+
+LIBTOOLIZE=libtoolize
+ACLOCAL="aclocal $ACLOCAL_FLAGS"
+AUTOHEADER=autoheader
+AUTOMAKE=automake
+AUTOCONF=autoconf
+
+#($LIBTOOLIZE --version) < /dev/null > /dev/null 2>&1 || {
+#        echo
+#        echo "You must have $LIBTOOLIZE installed to compile $PROJECT."
+#        echo "Download the appropriate package for your distribution,"
+#        echo "or get the source tarball at http://ftp.gnu.org/gnu/libtool/"
+#        DIE=1
+#}
+
+($ACLOCAL --version) < /dev/null > /dev/null 2>&1 || {
+        echo
+        echo "You must have $ACLOCAL installed to compile $PROJECT."
+        echo "Download the appropriate package for your distribution,"
+        echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/"
+        DIE=1
+}
+
+#($AUTOHEADER --version) < /dev/null > /dev/null 2>&1 || {
+#        echo
+#        echo "You must have $AUTOHEADER installed to compile $PROJECT."
+#        echo "Download the appropriate package for your distribution,"
+#        echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/"
+#        DIE=1
+#}
+
+($AUTOMAKE --version) < /dev/null > /dev/null 2>&1 || {
+        echo
+        echo "You must have $AUTOMAKE installed to compile $PROJECT."
+        echo "Download the appropriate package for your distribution,"
+        echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/"
+        DIE=1
+}
+
+($AUTOCONF --version) < /dev/null > /dev/null 2>&1 || {
+        echo
+        echo "You must have $AUTOCONF installed to compile $PROJECT."
+        echo "Download the appropriate package for your distribution,"
+        echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/"
+        DIE=1
+}
+
+if test "$DIE" -eq 1; then
+        exit 1
+fi
+
+test $TEST_TYPE $FILE || {
+        echo "You must run this script in the top-level $PROJECT directory"
+        exit 1
+}
+
+if test -z "$*"; then
+        echo "I am going to run ./configure with no arguments - if you wish "
+        echo "to pass any to it, please specify them on the $0 command line."
+fi
+
+#$LIBTOOLIZE --copy --force || echo "$LIBTOOLIZE failed"
+$ACLOCAL || echo "$ACLOCAL failed"
+#$AUTOHEADER || echo "$AUTOHEADER failed"
+$AUTOMAKE --add-missing --force-missing --copy || echo "$AUTOMAKE failed"
+$AUTOCONF || echo "$AUTOCONF failed"
+
+cd $ORIGDIR
+
+run_configure=true
+for arg in $*; do
+    case $arg in
+        --no-configure)
+            run_configure=false
+            ;;
+        *)
+            ;;
+    esac
+done
+
+if $run_configure; then
+    $srcdir/configure --enable-maintainer-mode "$@"
+    echo
+    echo "Now type 'make' to compile $PROJECT."
+else
+    echo
+    echo "Now run 'configure' and 'make' to compile $PROJECT."
+fi
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/Makefile.am	(revision 42661)
@@ -0,0 +1,27 @@
+
+installdir = $(datadir)/ippconfig/cfh12k
+
+install_files = \
+	dvo.config \
+	dvo.layout \
+	rejections.config \
+	camera.config \
+	format_mef.config \
+	format_mef_early.config \
+	format_split.config \
+	format_split_early.config \
+	format_split_cmf.config \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	dark.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/camera.config	(revision 42661)
@@ -0,0 +1,139 @@
+# Camera configuration file for Cfh12k: describes the camera
+
+# File formats that we know about
+FORMATS		METADATA
+	EARLY	STR	cfh12k/format_mef_early.config
+#	ESPLIT	STR	cfh12k/format_split_early.config
+	MEF	STR	cfh12k/format_mef.config
+	SPLIT	STR	cfh12k/format_split.config
+	CMF	STR	cfh12k/format_split_cmf.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA	METADATA
+	ccd00	STR	Amp
+	ccd01	STR	Amp
+	ccd02	STR	Amp
+	ccd03	STR	Amp
+	ccd04	STR	Amp
+	ccd05	STR	Amp
+	ccd06	STR	Amp
+	ccd07	STR	Amp
+	ccd08	STR	Amp
+	ccd09	STR	Amp
+	ccd10	STR	Amp
+	ccd11	STR	Amp
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+   B       STR    B           	
+   V       STR    V           	
+   R       STR    R           	
+   I       STR    I           	
+   	              		
+   Z       MULTI
+   Z       STR    Z''           	
+   Z       STR    Z''''           	
+   Z       STR    Z           	
+   Z       STR    Zp           
+   Z       STR    Zprime       
+   	              		
+   Ha      MULTI
+   Ha      STR    Ha           
+   Ha      STR    Ha.MP7605    
+   Ha      STR    Halpha       
+   Ha      STR    Haalpha.on   
+   	              		
+   HaOff   MULTI
+   HaOff   STR    HaOFF        
+   HaOff   STR    HaOFF.MP7604 
+   HaOff   STR    Halpha.off   
+   	              		
+   Hb      STR    Hb           
+   HbOff   STR    HbOff        
+   	              		
+   CN      MULTI
+   CN      STR    CN           
+   CN      STR    CN.MP780     
+   CN      STR    cn.MP7803    
+   CN      STR    CN.MP7803    
+   	              		
+   TiO     MULTI
+   TiO     STR    TiO          
+   TiO     STR    TiO.MP77     
+   TiO     STR    tio.MP7701   
+   TiO     STR    TiO.MP7701   
+   	              		
+   NB920   STR    NB920        
+   	              		
+   B2F     MULTI
+   B2F     STR    B2F          
+   B2F     STR    UKN:B2F
+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	cfh12k		# Camera directory for DVO
+
+DARK.NORM 	STR cfh12k/dark.config
+DARK.NORM.KEY 	STR fpa_{CHIP.NAME}_Amp
+# DARK.NORM.KEY STR BASIC ## rough version from global stats
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES		METADATA
+	# Other recipes
+        PSPHOT          STR     cfh12k/psphot.config           # psphot details
+        PSASTRO         STR     cfh12k/psastro.config          # psastro details
+	PPIMAGE         STR     cfh12k/ppImage.config		# ppImage recipe
+	REJECTIONS      STR     cfh12k/rejections.config	# rejection recipe
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	recipes/filerules-mef.mdc		# File rules appropriate for MEF format
+
+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.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
+
+  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.N}		# Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/dark.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/dark.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/dark.config	(revision 42661)
@@ -0,0 +1,106 @@
+
+# basic fit to mosaic-level bg
+BASIC METADATA
+   NORDER_X         S32       2                # number of x orders
+   VAL_X00          F64      -1.366
+   VAL_X01          F64       8.974e-03
+   VAL_X02          F64       7.864e-06
+   NELEMENTS        S32       3                # number of unmasked components
+END
+
+fpa_ccd00_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -2.42585939637 
+   VAL_X01   F64 0.0218932386738 
+   VAL_X02   F64 1.63910422999e-05 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd01_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -0.673311998929 
+   VAL_X01   F64 0.00351724865032 
+   VAL_X02   F64 3.82106321907e-06 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd02_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -0.516624899086 
+   VAL_X01   F64 0.002322522999 
+   VAL_X02   F64 3.24144163863e-06 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd03_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -0.571626302054 
+   VAL_X01   F64 0.00233441005459 
+   VAL_X02   F64 2.35198601494e-06 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd04_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -2.06687190434 
+   VAL_X01   F64 0.00214124485304 
+   VAL_X02   F64 2.26141245447e-06 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd05_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -0.938425768984 
+   VAL_X01   F64 0.00787794459813 
+   VAL_X02   F64 6.18544058024e-06 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd06_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -1.01351177035 
+   VAL_X01   F64 0.00665585528024 
+   VAL_X02   F64 6.34327926043e-06 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd07_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -0.475706521997 
+   VAL_X01   F64 0.00151765156459 
+   VAL_X02   F64 3.19325558938e-06 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd08_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -0.555167026441 
+   VAL_X01   F64 0.00287603928732 
+   VAL_X02   F64 4.31016033628e-06 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd09_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -0.999503837142 
+   VAL_X01   F64 0.00530642880692 
+   VAL_X02   F64 5.64208407175e-06 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd10_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -1.66026335274 
+   VAL_X01   F64 0.0163728070101 
+   VAL_X02   F64 1.28840808261e-05 
+   NELEMENTS S32 3     
+END 
+
+fpa_ccd11_Amp METADATA 
+   NORDER_X  S32 2    
+   VAL_X00   F64 -4.47794069907 
+   VAL_X01   F64 0.0347579009973 
+   VAL_X02   F64 2.78713468204e-05 
+   NELEMENTS S32 3     
+END 
+
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/dvo.config	(revision 42661)
@@ -0,0 +1,64 @@
+
+# location of DVO database tables
+CATDIR			/data/alala.0/eugene/isp/catdir
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+#DATE-KEYWORD		DATE-OBS
+#DATE-MODE		yyyy-mm-dd
+#UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+EXTNAME-KEYWORD		IMAGEID
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/dvo.layout	(revision 42661)
@@ -0,0 +1,29 @@
+# this file defines the layout of the mosaic imager:
+
+NCCD 12
+NAXIS1 2080
+NAXIS2 4128
+
+MOSAIC_X 6
+MOSAIC_Y 2
+
+# lines need to contain:
+
+CHIPID_KEYWORD CHIPID
+
+# ID  CHIPID xoffset yoffset xflip yflip datasec         biassec                 Xo    Yo     theta
+CCD.0  chip00      0       0     0     0 [6:2049,5:4100] [2050:2080,2:4128]     0.0    0.0   0.00
+CCD.1  chip01      1       0     0     0 [6:2049,5:4100] [2050:2080,2:4128]  2000.0    0.0   0.00
+CCD.2  chip02      2       0     1     0 [6:2049,5:4100] [2050:2080,2:4128]  6000.0    0.0   0.00
+CCD.3  chip03      3       0     1     0 [6:2049,5:4100] [2050:2080,2:4128]  8000.0    0.0   0.00
+CCD.4  chip04      4       0     0     0 [6:2049,5:4100] [2050:2080,2:4128]  8000.0    0.0   0.00
+CCD.5  chip05      5       0     0     0 [6:2049,5:4100] [2050:2080,2:4128] 10000.0    0.0   0.00
+CCD.6  chip06      0       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]     0.0 8000.0   1.00
+CCD.7  chip07      1       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]  2000.0 8000.0   0.00
+CCD.8  chip08      2       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]  4000.0 8000.0   0.00
+CCD.9  chip09      3       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]  6000.0 8000.0   0.00
+CCD.10 chip10      4       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]  8000.0 8000.0   0.00
+CCD.11 chip11      5       1     0     1 [6:2049,5:4100] [2050:2080,2:4128] 10000.0 8000.0   0.00
+
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/format_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/format_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/format_mef.config	(revision 42661)
@@ -0,0 +1,166 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# The spliced MecaCam data is stored in single extensions for each chip
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m
+	DETECTOR	STR	CFH12K
+	INSTRUME	STR	CFH12K Mosaic
+	EXTEND		BOOL	T
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# The extensions represent chips
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier
+	CHIP.NAME	STR	IMAGEID	# An extension keyword for unique identifie
+	EXTWORD         STR     IMAGEID
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chip name:component cell
+	 0		STR	ccd00:MIT-LL
+	 1		STR	ccd01:MIT-LL
+	 2		STR	ccd02:MIT-LL
+	 3		STR	ccd03:MIT-LL
+	 4		STR	ccd04:MIT-LL
+	 5		STR	ccd05:MIT-LL
+	 6		STR	ccd06:MIT-LL
+	 7		STR	ccd07:MIT-LL
+	 8		STR	ccd08:MIT-LL
+	 9		STR	ccd09:MIT-LL
+	10		STR	ccd10:MIT-LL
+	11		STR	ccd11:MIT-LL
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	MIT-LL	STR	Amp:cell
+END
+
+# Specify the cells
+CELLS		METADATA
+	cell		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.X0			S32	0
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBJECT
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTERID    STR     FILTER
+        FPA.FILTER      STR     FILTER
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+	CELL.TIME	STR	MJD-OBS
+        CELL.GAIN       STR     GAIN
+        CELL.SATURATION STR     SATURATE
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	CFH12K		# this value is used in ipprc.config to find the recipes
+	FPA.DETECTOR	        STR	CFH12K
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4096
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4096
+	CELL.READNOISE          F32     10.0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.BAD                S32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	10240
+		ccd01	S32	8192
+		ccd02	S32	6144
+		ccd03	S32	4096
+		ccd04	S32	2048
+		ccd05	S32	0
+		ccd06	S32	10240
+		ccd07	S32	8192 
+		ccd08	S32	6144 
+		ccd09	S32	4096 
+		ccd10	S32	2048 
+		ccd11	S32	0    
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	8192
+		ccd01	S32	8192
+		ccd02	S32	8192
+		ccd03	S32	8192
+		ccd04	S32	8192
+		ccd05	S32	8192
+		ccd06	S32	0
+		ccd07	S32	0
+		ccd08	S32	0
+		ccd09	S32	0
+		ccd10	S32	0
+		ccd11	S32	0
+	END
+	CHIP.XPARITY		S32	-1
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	+1
+		ccd07	S32	+1
+		ccd08	S32	+1
+		ccd09	S32	+1
+		ccd10	S32	+1
+		ccd11	S32	+1
+	END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/format_mef_early.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/format_mef_early.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/format_mef_early.config	(revision 42661)
@@ -0,0 +1,184 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# The spliced MecaCam data is stored in single extensions for each chip
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m
+	DETECTOR	STR	CFH12K
+	INSTRUME	STR	CFH12K Mosaic
+	EXTEND		BOOL	T
+        IMAGESWV        MULTI
+	IMAGESWV	STR     CFHT DetCom v3.25 (Jun 13 2001)    
+	IMAGESWV	STR     CFHT DetCom v3.28 (Jul 11 2001)    
+	IMAGESWV	STR     CFHT DetCom v3.35 (May 01 2002)
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# The extensions represent chips
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier
+	CHIP.NAME	STR	IMAGEID	# An extension keyword for unique identifie
+	EXTWORD         STR     IMAGEID
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chip name:component cell
+	 0		STR	ccd00:MIT-LL
+	 1		STR	ccd01:MIT-LL
+	 2		STR	ccd02:MIT-LL
+	 3		STR	ccd03:MIT-LL
+	 4		STR	ccd04:MIT-LL
+	 5		STR	ccd05:MIT-LL
+	 6		STR	ccd06:MIT-LL
+	 7		STR	ccd07:MIT-LL
+	 8		STR	ccd08:MIT-LL
+	 9		STR	ccd09:MIT-LL
+	10		STR	ccd10:MIT-LL
+	11		STR	ccd11:MIT-LL
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	MIT-LL	STR	Amp:cell
+END
+
+# Specify the cells
+CELLS		METADATA
+	cell		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.X0			S32	0
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.AIRMASS     STR     AIRMASS
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBJECT
+        FPA.FILTERID    STR     FILTER
+        FPA.FILTER      STR     FILTER
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+	CELL.TIME	STR	MJD-OBS
+        CELL.GAIN       STR     GAIN
+        CELL.SATURATION STR     SATURATE
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	CFH12K		# this value is used in ipprc.config to find the recipes
+	FPA.DETECTOR	        STR	CFH12K
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4096
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4096
+	CELL.READNOISE          F32     10.0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.BAD                S32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	10
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	8192
+		ccd05	S32	10240
+		ccd06	S32	0    
+		ccd07	S32	2048 
+		ccd08	S32	4096 
+		ccd09	S32	6144 
+		ccd10	S32	8192 
+		ccd11	S32	10240
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	10
+		ccd01	S32	10
+		ccd02	S32	10
+		ccd03	S32	10
+		ccd04	S32	10
+		ccd05	S32	10
+		ccd06	S32	4128
+		ccd07	S32	4128
+		ccd08	S32	4128
+		ccd09	S32	4128
+		ccd10	S32	4128
+		ccd11	S32	4128
+	END
+	CHIP.XPARITY		S32	1
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	+1
+		ccd01	S32	+1
+		ccd02	S32	+1
+		ccd03	S32	+1
+		ccd04	S32	+1
+		ccd05	S32	+1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+	END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
+#  fits  CFHT 12kcom v2 2 (Sep 28 1999)  
+#  fits  CFHT 12kcom v2 6 (Dec 01 1999)  
+#  fits  CFHT DetCom v3 1 (Oct 19 2000)  
+#  fits  CFHT DetCom v3 2 (Dec 23 2000)  
+#  fits  CFHT DetCom v3 22 (Apr 12 2001)  
+#  fits  CFHT DetCom v3 25 (Jun 13 2001)  
+#  fits  CFHT DetCom v3 32 (Oct 20 2001)  
+#  fits  CFHT DetCom v3 33 (Dec 09 2001)  
+#  fits  CFHT DetCom v3 35 (Jan 07 2002)  
+#  fits  CFHT DetCom v3 35 (Mar 09 2002)  
+#  fits  CFHT DetCom v3 35 (May 01 2002)  
+#  fits  CFHT DetCom v3 7 (Jun 29 2000)  
+#  fits  CFHT DetCom v3 8 (Aug 02 2000)  
+#  fits  CFHT DetCom v3 9 (Sep 15 2000)  
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/format_split.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/format_split.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/format_split.config	(revision 42661)
@@ -0,0 +1,169 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# The spliced MecaCam data is stored in single extensions for each chip
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m
+	DETECTOR	STR	CFH12K
+	INSTRUME	STR	CFH12K Mosaic
+	NAXIS		S32	2
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	 # The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	 # The extensions represent chips
+	FPA.OBS		STR	EXPNUM	 # A PHU keyword for unique identifier
+	CHIP.NAME	STR	IMAGEID	 # An extension keyword for unique identifie
+	EXTWORD         STR     IMAGEID
+	CONTENT		STR	IMAGEID	 # Key to the CONTENTS menu
+	CONTENT.RULE	STR	{CHIP.N} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Content key   ->      chip name:component cell
+	0		STR	ccd00:MIT-LL
+	1		STR	ccd01:MIT-LL
+	2		STR	ccd02:MIT-LL
+	3		STR	ccd03:MIT-LL
+	4		STR	ccd04:MIT-LL
+	5		STR	ccd05:MIT-LL
+	6		STR	ccd06:MIT-LL
+	7		STR	ccd07:MIT-LL
+	8		STR	ccd08:MIT-LL
+	9		STR	ccd09:MIT-LL
+	10		STR	ccd10:MIT-LL
+	11		STR	ccd11:MIT-LL
+END
+
+# Specify the chips
+CHIPS		METADATA
+	MIT-LL	STR	Amp:cell
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	cell		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.X0			S32	0
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAIN
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTERID    STR     FILTER
+        FPA.FILTER      STR     FILTER
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+        CELL.SATURATION STR     SATURATE
+	CELL.TIME	STR	MJD-OBS
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	CFH12K		# this value is used in ipprc.config to find the recipes
+	FPA.DETECTOR	        STR	CFH12K
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4096
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4096
+	CELL.READNOISE          F32     10.0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.BAD                S32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	0
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	8192
+		ccd05	S32	10240
+		ccd06	S32	0    
+		ccd07	S32	2048 
+		ccd08	S32	4096 
+		ccd09	S32	6144 
+		ccd10	S32	8192 
+		ccd11	S32	10240
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	0
+		ccd01	S32	0
+		ccd02	S32	0
+		ccd03	S32	0
+		ccd04	S32	0
+		ccd05	S32	0
+		ccd06	S32	4128
+		ccd07	S32	4128
+		ccd08	S32	4128
+		ccd09	S32	4128
+		ccd10	S32	4128
+		ccd11	S32	4128
+	END
+	CHIP.XPARITY		S32	1
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	+1
+		ccd01	S32	+1
+		ccd02	S32	+1
+		ccd03	S32	+1
+		ccd04	S32	+1
+		ccd05	S32	+1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+	END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/format_split_cmf.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/format_split_cmf.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/format_split_cmf.config	(revision 42661)
@@ -0,0 +1,169 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# The spliced MecaCam data is stored in single extensions for each chip
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m
+	DETECTOR	STR	CFH12K
+	INSTRUME	STR	CFH12K Mosaic
+	NAXIS		S32	0
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	 # The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	 # The extensions represent chips
+	FPA.OBS		STR	EXPNUM	 # A PHU keyword for unique identifier
+	CHIP.NAME	STR	IMAGEID	 # An extension keyword for unique identifie
+	EXTWORD         STR     IMAGEID
+	CONTENT		STR	IMAGEID	 # Key to the CONTENTS menu
+	CONTENT.RULE	STR	{CHIP.N} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Content key   ->      chip name:component cell
+	ccd00.hdr	STR	ccd00:MIT-LL
+	ccd01.hdr	STR	ccd01:MIT-LL
+	ccd02.hdr	STR	ccd02:MIT-LL
+	ccd03.hdr	STR	ccd03:MIT-LL
+	ccd04.hdr	STR	ccd04:MIT-LL
+	ccd05.hdr	STR	ccd05:MIT-LL
+	ccd06.hdr	STR	ccd06:MIT-LL
+	ccd07.hdr	STR	ccd07:MIT-LL
+	ccd08.hdr	STR	ccd08:MIT-LL
+	ccd09.hdr	STR	ccd09:MIT-LL
+	ccd10.hdr	STR	ccd10:MIT-LL
+	ccd11.hdr	STR	ccd11:MIT-LL
+END
+
+# Specify the chips
+CHIPS		METADATA
+	MIT-LL	STR	Amp:cell
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	cell		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.X0			S32	0
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAIN
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTERID    STR     FILTER
+        FPA.FILTER      STR     FILTER
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+        CELL.SATURATION STR     SATURATE
+	CELL.TIME	STR	MJD-OBS
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	CFH12K		# this value is used in ipprc.config to find the recipes
+	FPA.DETECTOR	        STR	CFH12K
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4096
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4096
+	CELL.READNOISE          F32     10.0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.BAD                S32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	0
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	8192
+		ccd05	S32	10240
+		ccd06	S32	0    
+		ccd07	S32	2048 
+		ccd08	S32	4096 
+		ccd09	S32	6144 
+		ccd10	S32	8192 
+		ccd11	S32	10240
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	0
+		ccd01	S32	0
+		ccd02	S32	0
+		ccd03	S32	0
+		ccd04	S32	0
+		ccd05	S32	0
+		ccd06	S32	4128
+		ccd07	S32	4128
+		ccd08	S32	4128
+		ccd09	S32	4128
+		ccd10	S32	4128
+		ccd11	S32	4128
+	END
+	CHIP.XPARITY		S32	1
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	+1
+		ccd01	S32	+1
+		ccd02	S32	+1
+		ccd03	S32	+1
+		ccd04	S32	+1
+		ccd05	S32	+1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+	END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/format_split_early.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/format_split_early.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/format_split_early.config	(revision 42661)
@@ -0,0 +1,173 @@
+# This is the format file for split CFH12K images from the period when the 
+# EXTNAME field was not being populated
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m
+	DETECTOR	STR	CFH12K
+	INSTRUME	STR	CFH12K Mosaic
+	NAXIS		S32	2
+        IMAGESWV        MULTI
+	IMAGESWV	STR     CFHT DetCom v3.25 (Jun 13 2001)    
+	IMAGESWV	STR     CFHT DetCom v3.28 (Jul 11 2001)    
+	IMAGESWV	STR     CFHT DetCom v3.35 (May 01 2002)
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# The extensions represent chips
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier
+	CHIP.NAME	STR	IMAGEID	# An extension keyword for unique identifie
+	EXTWORD         STR     IMAGEID
+	CONTENT		STR	IMAGEID
+	CONTENT.RULE	STR	{CHIP.N}
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chip name:component cell
+	 0		STR	ccd00:MIT-LL
+	 1		STR	ccd01:MIT-LL
+	 2		STR	ccd02:MIT-LL
+	 3		STR	ccd03:MIT-LL
+	 4		STR	ccd04:MIT-LL
+	 5		STR	ccd05:MIT-LL
+	 6		STR	ccd06:MIT-LL
+	 7		STR	ccd07:MIT-LL
+	 8		STR	ccd08:MIT-LL
+	 9		STR	ccd09:MIT-LL
+	10		STR	ccd10:MIT-LL
+	11		STR	ccd11:MIT-LL
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	MIT-LL	STR	Amp:cell
+END
+
+# Specify the cells
+CELLS		METADATA
+	cell		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.X0			S32	0
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAIN
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTERID    STR     FILTER
+        FPA.FILTER      STR     FILTER
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+        CELL.SATURATION STR     SATURATE
+	CELL.TIME	STR	MJD-OBS
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	CFH12K		# this value is used in ipprc.config to find the recipes
+	FPA.DETECTOR	        STR	CFH12K
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4096
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4096
+	CELL.READNOISE          F32     10.0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.BAD                S32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	0
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	8192
+		ccd05	S32	10240
+		ccd06	S32	0    
+		ccd07	S32	2048 
+		ccd08	S32	4096 
+		ccd09	S32	6144 
+		ccd10	S32	8192 
+		ccd11	S32	10240
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	0
+		ccd01	S32	0
+		ccd02	S32	0
+		ccd03	S32	0
+		ccd04	S32	0
+		ccd05	S32	0
+		ccd06	S32	4128
+		ccd07	S32	4128
+		ccd08	S32	4128
+		ccd09	S32	4128
+		ccd10	S32	4128
+		ccd11	S32	4128
+	END
+	CHIP.XPARITY		S32	1
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	+1
+		ccd01	S32	+1
+		ccd02	S32	+1
+		ccd03	S32	+1
+		ccd04	S32	+1
+		ccd05	S32	+1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+	END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/ppImage.config	(revision 42661)
@@ -0,0 +1,58 @@
+### ppImage recipe configuration file for cfh12k
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	3		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEDIAN		# MEAN | MEDIAN
+
+# for a test, turn off selected detrend types
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	FALSE		# Bias subtraction
+DARK		BOOL	TRUE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+
+# binned output image options
+BIN1.XBIN		S32	12
+BIN1.YBIN		S32	12
+BIN2.XBIN		S32	96
+BIN2.YBIN		S32	96
+
+# cfh12k needs fringe subtraction
+FRINGE		BOOL	TRUE		# Fringe subtraction
+
+# this table lists extra constraints which should be applied when
+# selecting the detrend images.
+# note: camera and time are always applied
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+#   EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   DETTYPE STR DOMEFLAT.RAW
+#   VERSION STR SKYFLAT.RAW
+#   VERSION STR DOMEFLAT.CORR.XX
+#   VERSION STR SKYFLAT.CORR
+  END
+  FLAT_CORRECTION METADATA
+    FILTER   STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR FPA.TWILIGHT
+  END
+  SHUTTER METADATA
+  END	
+END
+
+# only apply the fringe for these filters
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR r
+FRINGE.FILTERS	STR i
+FRINGE.FILTERS	STR z
+
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/ppMerge.config	(revision 42661)
@@ -0,0 +1,43 @@
+
+# Bias combination --- don't want min/max rejection
+PPMERGE_BIAS	METADATA
+   REJ		F32	3.0		# Rejection threshold (sigma)
+   ITER		S32	2		# Number of rejection iterations
+   FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+   FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+   WEIGHTS	BOOL	FALSE		# Use image weights?
+   COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Dark combination --- don't want min/max rejection
+# More aggressive clipping than bias, so as to remove CRs
+PPMERGE_DARK	METADATA
+  REJ		F32	2.0		# Rejection threshold (sigma)
+  ITER		S32	4		# Number of rejection iterations
+  FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+  FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+  WEIGHTS	BOOL	FALSE		# Use image weights?
+  COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Flat combination --- use min/max rejection
+PPMERGE_FLAT	METADATA
+	REJ		F32	3.0		# Rejection threshold (sigma)
+	ITER		S32	1		# Number of rejection iterations
+	FRACHIGH	F32	0.3		# Fraction of high pixels to reject immediately
+	FRACLOW		F32	0.1		# Fraction of low pixels to reject immediately
+	NKEEP		S32	5		# Minimum number of pixels in stack to keep
+	WEIGHTS		BOOL	TRUE		# Use image weights?
+	COMBINE		STR	MEAN		# Statistic to use for combination: 
+END
+
+
+# Fringe combination --- already included in default, above
+PPMERGE_FRINGE	METADATA
+	FRACHIGH	F32	0.1		# Fraction of high pixels to reject immediately
+	WEIGHTS		BOOL	TRUE		# Use image weights?
+END
+
+# Mask generation --- already included in default, above
+PPMERGE_MASK	METADATA
+END
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/psastro.config	(revision 42661)
@@ -0,0 +1,120 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (mm / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32    1500.0
+# PSASTRO.GRID.OFFSET    F32    12500.0
+PSASTRO.GRID.SCALE     F32     50.0
+
+PSASTRO.GRID.NSTAR.MAX S32     800 # max stars accepted for fitting
+
+PSASTRO.GRID.MIN.ANGLE F32 -1.0 # start angle (degrees)
+PSASTRO.GRID.MAX.ANGLE F32 +1.0
+PSASTRO.GRID.DEL.ANGLE F32  0.5
+
+PSASTRO.GRID.MIN.SCALE F32  0.98
+PSASTRO.GRID.MAX.SCALE F32  1.021
+PSASTRO.GRID.DEL.SCALE F32  0.02
+
+PSASTRO.GRID.MIN.SIGMA F32  5.0
+
+# extra field for ref stars:
+# PSASTRO.FIELD.PADDING  F32 6.0
+PSASTRO.FIELD.PADDING  F32 0.25
+
+# allow saturated stars if needed
+PSASTRO.MIN.INST.MAG.RAW       F32      -17.0  # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32      -10.0  # max instrumental magnitude for stars accepted for fitting
+PSASTRO.IGNORE                 STR    CRLIMIT,SATURATED,DEFECT,BLEND,FAIL
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.RADIUS.N0 F32   20.0
+PSASTRO.MATCH.RADIUS.N1 F32   15.0
+PSASTRO.MATCH.RADIUS.N2 F32   10.0
+PSASTRO.MATCH.RADIUS.N3 F32   10.0
+PSASTRO.MATCH.RADIUS.N4 F32   10.0
+PSASTRO.MATCH.FIT.NITER S32   5
+
+PSASTRO.MAX.NRAW       S32      1500   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF       S32      1500   # max stars accepted for fitting (0 for all)
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      10   # min fitted stars in solution
+
+PSASTRO.MOSAIC.MODE           BOOL     TRUE
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N4 F32    1.00 # max allow error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.RADIUS.N0    F32   10.0 # initial match (after chip astrom)
+PSASTRO.MOSAIC.RADIUS.N1    F32    8.0 # (after first mosaic pass)
+PSASTRO.MOSAIC.RADIUS.N2    F32    8.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N3    F32    4.0 # 
+PSASTRO.MOSAIC.RADIUS.N4    F32    4.0 # 
+
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      3 # fit order (-1 means use default)
+
+PSASTRO.MOSAIC.GRADIENT.NX    S32     2   # number of x-dir cells per chip
+PSASTRO.MOSAIC.GRADIENT.NY    S32     4   # number of y-dir cells per chip
+
+# use this recipe to set a tight constraint
+PSASTRO.FINE METADATA
+  PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+  PSASTRO.MOSAIC.RADIUS.N0    F32    8.0
+  PSASTRO.MOSAIC.RADIUS.N1    F32    0.0
+  PSASTRO.MOSAIC.RADIUS.N2    F32    4.0
+  PSASTRO.MOSAIC.RADIUS.N3    F32    4.0
+
+  PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      3 # fit order (-1 means use default)
+END
+
+PSASTRO.CATDIR              STR      SYNTH.GRIZY
+DVO.GETSTAR.MAX.RHO         F32      3000.0
+DVO.GETSTAR.MIN.MAG         F32      12.0
+DVO.GETSTAR.MIN.MAG.INST    F32     -15.0
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR B
+  ZEROPT   F32 26.00
+  PHOTCODE STR g_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR V
+  ZEROPT   F32 26.15
+  PHOTCODE STR g_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR R
+  ZEROPT   F32 26.19
+  PHOTCODE STR r_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR I
+  ZEROPT   F32 26.14
+  PHOTCODE STR i_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR Z
+  ZEROPT   F32 25.83
+  PHOTCODE STR z_SYNTH
+END
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/psphot.config	(revision 42661)
@@ -0,0 +1,13 @@
+
+# turn these on to see specific outputs
+SAVE.PLOTS	BOOL 	TRUE
+
+# PSF model parameters : choose the PSF model desired
+PSF_MODEL           STR  PS_MODEL_QGAUSS
+
+# XXX are these needed?
+XMIN                F32   +10        	 # minimum valid x-coord
+XMAX                F32   -10        	 # maximum valid x-coord
+YMIN                F32   +10        	 # minimum valid y-coord
+YMAX                F32   -10        	 # maximum valid y-coord
+
Index: /branches/eam_branches/ippconfig.20240412/cfh12k/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/cfh12k/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/cfh12k/rejections.config	(revision 42661)
@@ -0,0 +1,49 @@
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  5.0
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SNR         F32  0.0
+  IMFILE.BIN.STDEV   F32  5.0
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  2.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  5.0
+  EXP.SNR            F32  0.0
+  EXP.BIN.STDEV      F32  5.0
+  EXP.BIN.SNR        F32  0.0
+  EXP.FLUX           F32  0.0
+  ENSEMBLE.MEAN      F32  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+DARK METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  0.0
+  IMFILE.STDEV       F32 10.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  2.0
+  EXP.MEAN           F32  2.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  2.0
+  EXP.SNR            F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SNR        F32  0.0
+  EXP.FLUX           F32  2.0
+  ENSEMBLE.MEAN      F32  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
Index: /branches/eam_branches/ippconfig.20240412/configure.ac
===================================================================
--- /branches/eam_branches/ippconfig.20240412/configure.ac	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/configure.ac	(revision 42661)
@@ -0,0 +1,38 @@
+AC_PREREQ(2.59)
+
+AC_INIT([ippConfig], [1.1.0], [ipp-support@ifa.hawaii.edu])
+AC_CONFIG_SRCDIR([ipprc.config.in])
+
+AM_INIT_AUTOMAKE([1.6 foreign dist-bzip2])
+AM_MAINTAINER_MODE
+
+AC_PROG_INSTALL
+
+AC_CONFIG_FILES([
+  Makefile
+  recipes/Makefile
+  isp/Makefile
+  gpc1/Makefile
+  gpc1-tdi/Makefile
+  gpc2/Makefile
+  cfh12k/Makefile
+  megacam/Makefile
+  mosaic2/Makefile
+  simple/Makefile
+  simmosaic/Makefile
+  simtest/Makefile
+  vysos5/Makefile
+  vysos20/Makefile
+  tc3/Makefile
+  skycell/Makefile
+  sdssmosaic/Makefile
+  sdss/Makefile
+  esowfi/Makefile
+  lbc_red/Makefile
+  lulin/Makefile
+  ssp/Makefile
+  uh8k/Makefile
+  suprime/Makefile
+  hsc/Makefile
+])
+AC_OUTPUT
Index: /branches/eam_branches/ippconfig.20240412/dvo.photcodes
===================================================================
--- /branches/eam_branches/ippconfig.20240412/dvo.photcodes	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/dvo.photcodes	(revision 42661)
@@ -0,0 +1,2218 @@
+# 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, w: 3201-3464
+
+# 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
+
+#                                           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
+  9     w                    sec   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# L92 UBVRI 
+  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
+# STET UBVIR 
+  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
+# SDSS ugriz,UGRIZ 
+  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
+  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
+# USNO BLUE,RED,J,F,N 
+  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
+# SCOS 
+  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
+# TYCHO BV 
+  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
+  2022  TYCHO_B_2MASS        ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2023  TYCHO_V_2MASS        ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# GAIA G,BR 
+  1030  GAIA_G_DR1           ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1031  GAIA_G_DR2           ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1032  GAIA_B_DR2           ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1033  GAIA_R_DR2           ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1034  GAIA_G_EDR3          ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1035  GAIA_B_EDR3          ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1036  GAIA_R_EDR3          ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1037  GAIA_G_DR3           ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1038  GAIA_B_DR3           ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  1039  GAIA_R_DR3           ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# BSC UBV 
+  2025  BSC_U                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2026  BSC_B                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2027  BSC_V                ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# 2MASS JHK 
+  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
+# WISE W1234 
+  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
+# UKIRT JYJHK 
+  2031  UKIRT.Z.01           dep  22.840  0.050 0.000     -     - 0.0000     0     4   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2032  UKIRT.Z.02           dep  22.840  0.050 0.000     -     - 0.0000     0     4   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2033  UKIRT.Z.03           dep  22.840  0.050 0.000     -     - 0.0000     0     4   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2034  UKIRT.Z.04           dep  22.840  0.050 0.000     -     - 0.0000     0     4   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2041  UKIRT.Y.01           dep  22.770  0.050 0.000     -     - 0.0000     0     5   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2042  UKIRT.Y.02           dep  22.770  0.050 0.000     -     - 0.0000     0     5   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2043  UKIRT.Y.03           dep  22.770  0.050 0.000     -     - 0.0000     0     5   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2044  UKIRT.Y.04           dep  22.770  0.050 0.000     -     - 0.0000     0     5   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2051  UKIRT.J.01           dep  23.020  0.050 0.000     -     - 0.0000     0     6   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2052  UKIRT.J.02           dep  23.020  0.050 0.000     -     - 0.0000     0     6   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2053  UKIRT.J.03           dep  23.020  0.050 0.000     -     - 0.0000     0     6   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2054  UKIRT.J.04           dep  23.020  0.050 0.000     -     - 0.0000     0     6   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2061  UKIRT.H.01           dep  23.240  0.050 0.000     -     - 0.0000     0     7   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2062  UKIRT.H.02           dep  23.240  0.050 0.000     -     - 0.0000     0     7   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2063  UKIRT.H.03           dep  23.240  0.050 0.000     -     - 0.0000     0     7   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2064  UKIRT.H.04           dep  23.240  0.050 0.000     -     - 0.0000     0     7   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2071  UKIRT.K.01           dep  22.570  0.050 0.000     -     - 0.0000     0     8   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2072  UKIRT.K.02           dep  22.570  0.050 0.000     -     - 0.0000     0     8   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2073  UKIRT.K.03           dep  22.570  0.050 0.000     -     - 0.0000     0     8   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2074  UKIRT.K.04           dep  22.570  0.050 0.000     -     - 0.0000     0     8   0.080 0.000 5.000  0.000   0x0000 0x0000  0x0000 0x0000
+
+  2080  UKIRT_Z              ref   0.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2081  UKIRT_Y              ref   0.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2082  UKIRT_J              ref   0.000  0.000 0.000     -     - 0.0000     0     6   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2083  UKIRT_H              ref   0.000  0.000 0.000     -     - 0.0000     0     7   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2084  UKIRT_K              ref   0.000  0.000 0.000     -     - 0.0000     0     8   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# ICRF 
+  # ICRF QSOs have astrometric error stored in dX,dY as 1/100th mas 
+  2090  ICRF_S               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.001 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2091  ICRF_C               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.001 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2092  ICRF_X               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.001 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2093  ICRF_U               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.001 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  2094  ICRF_K               ref   0.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.001 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# SYNTH grizyw 
+  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
+  3006  SYNTH.w              ref   0.000  0.000 0.000     -     - 0.0000     0     9     nan 0.000 2.000  0.600   0x0000 0x0000  0x0000 0x0000
+# REF grizyw  
+  4001  g_PS                 ref   0.000  0.000 0.000     -     - 0.0000     0     1     nan 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4002  r_PS                 ref   0.000  0.000 0.000     -     - 0.0000     0     2     nan 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4003  i_PS                 ref   0.000  0.000 0.000     -     - 0.0000     0     3     nan 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4004  z_PS                 ref   0.000  0.000 0.000     -     - 0.0000     0     4     nan 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4005  y_PS                 ref   0.000  0.000 0.000     -     - 0.0000     0     5     nan 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  4006  w_PS                 ref   0.000  0.000 0.000     -     - 0.0000     0     9     nan 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# MEGACAM ugriz 
+  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
+# CFHT BVRIZetc 
+  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
+# ISP grizy 
+  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
+# VYSO ri 
+  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
+# SIMTEST grizy 
+  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
+  15100 SIMTEST.g.ForcedWarp dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  15200 SIMTEST.r.ForcedWarp dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  15300 SIMTEST.i.ForcedWarp dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  15400 SIMTEST.z.ForcedWarp dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  15500 SIMTEST.y.ForcedWarp dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# SIMMOSAIC grizy 
+  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
+# GPC1 grizyw 
+ # g 
+  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
+ # r 
+  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
+ # i 
+  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
+ # z 
+  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
+ # y 
+  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
+ # w 
+  10501 GPC1.w.XY01          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10502 GPC1.w.XY02          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10503 GPC1.w.XY03          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10504 GPC1.w.XY04          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10505 GPC1.w.XY05          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10506 GPC1.w.XY06          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10510 GPC1.w.XY10          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10511 GPC1.w.XY11          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10512 GPC1.w.XY12          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10513 GPC1.w.XY13          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10514 GPC1.w.XY14          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10515 GPC1.w.XY15          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10516 GPC1.w.XY16          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10517 GPC1.w.XY17          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10520 GPC1.w.XY20          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10521 GPC1.w.XY21          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10522 GPC1.w.XY22          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10523 GPC1.w.XY23          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10524 GPC1.w.XY24          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10525 GPC1.w.XY25          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10526 GPC1.w.XY26          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10527 GPC1.w.XY27          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10530 GPC1.w.XY30          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10531 GPC1.w.XY31          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10532 GPC1.w.XY32          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10533 GPC1.w.XY33          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10534 GPC1.w.XY34          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10535 GPC1.w.XY35          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10536 GPC1.w.XY36          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10537 GPC1.w.XY37          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10540 GPC1.w.XY40          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10541 GPC1.w.XY41          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10542 GPC1.w.XY42          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10543 GPC1.w.XY43          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10544 GPC1.w.XY44          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10545 GPC1.w.XY45          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10546 GPC1.w.XY46          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10547 GPC1.w.XY47          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10550 GPC1.w.XY50          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10551 GPC1.w.XY51          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10552 GPC1.w.XY52          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10553 GPC1.w.XY53          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10554 GPC1.w.XY54          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10555 GPC1.w.XY55          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10556 GPC1.w.XY56          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10557 GPC1.w.XY57          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10560 GPC1.w.XY60          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10561 GPC1.w.XY61          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10562 GPC1.w.XY62          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10563 GPC1.w.XY63          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10564 GPC1.w.XY64          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10565 GPC1.w.XY65          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10566 GPC1.w.XY66          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10567 GPC1.w.XY67          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10571 GPC1.w.XY71          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10572 GPC1.w.XY72          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10573 GPC1.w.XY73          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10574 GPC1.w.XY74          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10575 GPC1.w.XY75          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  10576 GPC1.w.XY76          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+ # SkyChip  
+  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
+  11500 GPC1.w.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     9   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+ # ForcedWarp  
+  12000 GPC1.g.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  12100 GPC1.r.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  12200 GPC1.i.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  12300 GPC1.z.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  12400 GPC1.y.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  12500 GPC1.w.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     9   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# MOSAIC BVRI 
+  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
+# HSC grizyNB 
+  20000 HSC.g.00             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20001 HSC.g.01             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20002 HSC.g.02             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20003 HSC.g.03             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20004 HSC.g.04             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20005 HSC.g.05             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20006 HSC.g.06             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20007 HSC.g.07             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20008 HSC.g.08             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20009 HSC.g.09             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20010 HSC.g.10             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20011 HSC.g.11             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20012 HSC.g.12             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20013 HSC.g.13             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20014 HSC.g.14             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20015 HSC.g.15             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20016 HSC.g.16             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20017 HSC.g.17             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20018 HSC.g.18             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20019 HSC.g.19             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20020 HSC.g.20             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20021 HSC.g.21             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20022 HSC.g.22             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20023 HSC.g.23             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20024 HSC.g.24             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20025 HSC.g.25             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20026 HSC.g.26             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20027 HSC.g.27             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20028 HSC.g.28             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20029 HSC.g.29             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20030 HSC.g.30             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20031 HSC.g.31             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20032 HSC.g.32             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20033 HSC.g.33             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20034 HSC.g.34             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20035 HSC.g.35             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20036 HSC.g.36             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20037 HSC.g.37             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20038 HSC.g.38             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20039 HSC.g.39             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20040 HSC.g.40             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20041 HSC.g.41             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20042 HSC.g.42             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20043 HSC.g.43             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20044 HSC.g.44             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20045 HSC.g.45             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20046 HSC.g.46             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20047 HSC.g.47             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20048 HSC.g.48             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20049 HSC.g.49             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20050 HSC.g.50             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20051 HSC.g.51             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20052 HSC.g.52             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20053 HSC.g.53             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20054 HSC.g.54             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20055 HSC.g.55             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20056 HSC.g.56             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20057 HSC.g.57             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20058 HSC.g.58             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20059 HSC.g.59             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20060 HSC.g.60             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20061 HSC.g.61             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20062 HSC.g.62             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20063 HSC.g.63             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20064 HSC.g.64             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20065 HSC.g.65             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20066 HSC.g.66             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20067 HSC.g.67             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20068 HSC.g.68             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20069 HSC.g.69             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20070 HSC.g.70             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20071 HSC.g.71             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20072 HSC.g.72             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20073 HSC.g.73             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20074 HSC.g.74             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20075 HSC.g.75             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20076 HSC.g.76             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20077 HSC.g.77             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20078 HSC.g.78             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20079 HSC.g.79             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20080 HSC.g.80             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20081 HSC.g.81             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20082 HSC.g.82             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20083 HSC.g.83             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20084 HSC.g.84             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20085 HSC.g.85             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20086 HSC.g.86             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20087 HSC.g.87             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20088 HSC.g.88             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20089 HSC.g.89             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20090 HSC.g.90             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20091 HSC.g.91             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20092 HSC.g.92             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20093 HSC.g.93             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20094 HSC.g.94             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20095 HSC.g.95             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20096 HSC.g.96             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20097 HSC.g.97             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20098 HSC.g.98             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20099 HSC.g.99             dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20100 HSC.g.100            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20101 HSC.g.101            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20102 HSC.g.102            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20103 HSC.g.103            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20104 HSC.g.104            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20105 HSC.g.105            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20106 HSC.g.106            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20107 HSC.g.107            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20108 HSC.g.108            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20109 HSC.g.109            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20110 HSC.g.110            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  20111 HSC.g.111            dep  26.783 -0.150 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21000 HSC.r.00             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21001 HSC.r.01             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21002 HSC.r.02             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21003 HSC.r.03             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21004 HSC.r.04             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21005 HSC.r.05             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21006 HSC.r.06             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21007 HSC.r.07             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21008 HSC.r.08             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21009 HSC.r.09             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21010 HSC.r.10             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21011 HSC.r.11             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21012 HSC.r.12             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21013 HSC.r.13             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21014 HSC.r.14             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21015 HSC.r.15             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21016 HSC.r.16             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21017 HSC.r.17             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21018 HSC.r.18             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21019 HSC.r.19             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21020 HSC.r.20             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21021 HSC.r.21             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21022 HSC.r.22             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21023 HSC.r.23             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21024 HSC.r.24             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21025 HSC.r.25             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21026 HSC.r.26             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21027 HSC.r.27             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21028 HSC.r.28             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21029 HSC.r.29             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21030 HSC.r.30             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21031 HSC.r.31             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21032 HSC.r.32             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21033 HSC.r.33             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21034 HSC.r.34             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21035 HSC.r.35             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21036 HSC.r.36             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21037 HSC.r.37             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21038 HSC.r.38             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21039 HSC.r.39             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21040 HSC.r.40             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21041 HSC.r.41             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21042 HSC.r.42             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21043 HSC.r.43             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21044 HSC.r.44             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21045 HSC.r.45             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21046 HSC.r.46             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21047 HSC.r.47             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21048 HSC.r.48             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21049 HSC.r.49             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21050 HSC.r.50             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21051 HSC.r.51             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21052 HSC.r.52             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21053 HSC.r.53             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21054 HSC.r.54             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21055 HSC.r.55             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21056 HSC.r.56             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21057 HSC.r.57             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21058 HSC.r.58             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21059 HSC.r.59             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21060 HSC.r.60             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21061 HSC.r.61             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21062 HSC.r.62             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21063 HSC.r.63             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21064 HSC.r.64             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21065 HSC.r.65             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21066 HSC.r.66             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21067 HSC.r.67             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21068 HSC.r.68             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21069 HSC.r.69             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21070 HSC.r.70             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21071 HSC.r.71             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21072 HSC.r.72             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21073 HSC.r.73             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21074 HSC.r.74             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21075 HSC.r.75             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21076 HSC.r.76             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21077 HSC.r.77             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21078 HSC.r.78             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21079 HSC.r.79             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21080 HSC.r.80             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21081 HSC.r.81             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21082 HSC.r.82             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21083 HSC.r.83             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21084 HSC.r.84             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21085 HSC.r.85             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21086 HSC.r.86             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21087 HSC.r.87             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21088 HSC.r.88             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21089 HSC.r.89             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21090 HSC.r.90             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21091 HSC.r.91             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21092 HSC.r.92             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21093 HSC.r.93             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21094 HSC.r.94             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21095 HSC.r.95             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21096 HSC.r.96             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21097 HSC.r.97             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21098 HSC.r.98             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21099 HSC.r.99             dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21100 HSC.r.100            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21101 HSC.r.101            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21102 HSC.r.102            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21103 HSC.r.103            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21104 HSC.r.104            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21105 HSC.r.105            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21106 HSC.r.106            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21107 HSC.r.107            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21108 HSC.r.108            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21109 HSC.r.109            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21110 HSC.r.110            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  21111 HSC.r.111            dep  27.079 -0.100 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22000 HSC.i.00             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22001 HSC.i.01             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22002 HSC.i.02             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22003 HSC.i.03             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22004 HSC.i.04             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22005 HSC.i.05             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22006 HSC.i.06             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22007 HSC.i.07             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22008 HSC.i.08             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22009 HSC.i.09             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22010 HSC.i.10             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22011 HSC.i.11             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22012 HSC.i.12             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22013 HSC.i.13             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22014 HSC.i.14             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22015 HSC.i.15             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22016 HSC.i.16             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22017 HSC.i.17             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22018 HSC.i.18             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22019 HSC.i.19             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22020 HSC.i.20             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22021 HSC.i.21             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22022 HSC.i.22             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22023 HSC.i.23             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22024 HSC.i.24             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22025 HSC.i.25             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22026 HSC.i.26             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22027 HSC.i.27             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22028 HSC.i.28             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22029 HSC.i.29             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22030 HSC.i.30             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22031 HSC.i.31             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22032 HSC.i.32             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22033 HSC.i.33             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22034 HSC.i.34             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22035 HSC.i.35             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22036 HSC.i.36             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22037 HSC.i.37             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22038 HSC.i.38             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22039 HSC.i.39             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22040 HSC.i.40             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22041 HSC.i.41             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22042 HSC.i.42             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22043 HSC.i.43             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22044 HSC.i.44             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22045 HSC.i.45             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22046 HSC.i.46             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22047 HSC.i.47             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22048 HSC.i.48             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22049 HSC.i.49             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22050 HSC.i.50             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22051 HSC.i.51             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22052 HSC.i.52             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22053 HSC.i.53             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22054 HSC.i.54             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22055 HSC.i.55             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22056 HSC.i.56             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22057 HSC.i.57             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22058 HSC.i.58             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22059 HSC.i.59             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22060 HSC.i.60             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22061 HSC.i.61             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22062 HSC.i.62             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22063 HSC.i.63             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22064 HSC.i.64             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22065 HSC.i.65             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22066 HSC.i.66             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22067 HSC.i.67             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22068 HSC.i.68             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22069 HSC.i.69             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22070 HSC.i.70             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22071 HSC.i.71             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22072 HSC.i.72             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22073 HSC.i.73             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22074 HSC.i.74             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22075 HSC.i.75             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22076 HSC.i.76             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22077 HSC.i.77             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22078 HSC.i.78             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22079 HSC.i.79             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22080 HSC.i.80             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22081 HSC.i.81             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22082 HSC.i.82             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22083 HSC.i.83             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22084 HSC.i.84             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22085 HSC.i.85             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22086 HSC.i.86             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22087 HSC.i.87             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22088 HSC.i.88             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22089 HSC.i.89             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22090 HSC.i.90             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22091 HSC.i.91             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22092 HSC.i.92             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22093 HSC.i.93             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22094 HSC.i.94             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22095 HSC.i.95             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22096 HSC.i.96             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22097 HSC.i.97             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22098 HSC.i.98             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22099 HSC.i.99             dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22100 HSC.i.100            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22101 HSC.i.101            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22102 HSC.i.102            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22103 HSC.i.103            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22104 HSC.i.104            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22105 HSC.i.105            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22106 HSC.i.106            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22107 HSC.i.107            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22108 HSC.i.108            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22109 HSC.i.109            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22110 HSC.i.110            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  22111 HSC.i.111            dep  27.000 -0.040 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23000 HSC.z.00             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23001 HSC.z.01             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23002 HSC.z.02             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23003 HSC.z.03             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23004 HSC.z.04             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23005 HSC.z.05             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23006 HSC.z.06             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23007 HSC.z.07             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23008 HSC.z.08             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23009 HSC.z.09             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23010 HSC.z.10             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23011 HSC.z.11             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23012 HSC.z.12             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23013 HSC.z.13             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23014 HSC.z.14             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23015 HSC.z.15             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23016 HSC.z.16             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23017 HSC.z.17             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23018 HSC.z.18             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23019 HSC.z.19             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23020 HSC.z.20             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23021 HSC.z.21             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23022 HSC.z.22             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23023 HSC.z.23             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23024 HSC.z.24             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23025 HSC.z.25             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23026 HSC.z.26             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23027 HSC.z.27             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23028 HSC.z.28             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23029 HSC.z.29             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23030 HSC.z.30             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23031 HSC.z.31             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23032 HSC.z.32             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23033 HSC.z.33             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23034 HSC.z.34             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23035 HSC.z.35             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23036 HSC.z.36             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23037 HSC.z.37             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23038 HSC.z.38             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23039 HSC.z.39             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23040 HSC.z.40             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23041 HSC.z.41             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23042 HSC.z.42             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23043 HSC.z.43             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23044 HSC.z.44             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23045 HSC.z.45             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23046 HSC.z.46             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23047 HSC.z.47             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23048 HSC.z.48             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23049 HSC.z.49             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23050 HSC.z.50             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23051 HSC.z.51             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23052 HSC.z.52             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23053 HSC.z.53             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23054 HSC.z.54             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23055 HSC.z.55             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23056 HSC.z.56             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23057 HSC.z.57             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23058 HSC.z.58             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23059 HSC.z.59             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23060 HSC.z.60             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23061 HSC.z.61             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23062 HSC.z.62             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23063 HSC.z.63             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23064 HSC.z.64             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23065 HSC.z.65             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23066 HSC.z.66             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23067 HSC.z.67             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23068 HSC.z.68             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23069 HSC.z.69             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23070 HSC.z.70             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23071 HSC.z.71             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23072 HSC.z.72             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23073 HSC.z.73             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23074 HSC.z.74             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23075 HSC.z.75             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23076 HSC.z.76             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23077 HSC.z.77             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23078 HSC.z.78             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23079 HSC.z.79             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23080 HSC.z.80             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23081 HSC.z.81             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23082 HSC.z.82             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23083 HSC.z.83             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23084 HSC.z.84             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23085 HSC.z.85             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23086 HSC.z.86             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23087 HSC.z.87             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23088 HSC.z.88             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23089 HSC.z.89             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23090 HSC.z.90             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23091 HSC.z.91             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23092 HSC.z.92             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23093 HSC.z.93             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23094 HSC.z.94             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23095 HSC.z.95             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23096 HSC.z.96             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23097 HSC.z.97             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23098 HSC.z.98             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23099 HSC.z.99             dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23100 HSC.z.100            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23101 HSC.z.101            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23102 HSC.z.102            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23103 HSC.z.103            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23104 HSC.z.104            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23105 HSC.z.105            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23106 HSC.z.106            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23107 HSC.z.107            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23108 HSC.z.108            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23109 HSC.z.109            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23110 HSC.z.110            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  23111 HSC.z.111            dep  26.200 -0.030 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24000 HSC.y.00             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24001 HSC.y.01             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24002 HSC.y.02             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24003 HSC.y.03             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24004 HSC.y.04             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24005 HSC.y.05             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24006 HSC.y.06             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24007 HSC.y.07             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24008 HSC.y.08             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24009 HSC.y.09             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24010 HSC.y.10             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24011 HSC.y.11             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24012 HSC.y.12             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24013 HSC.y.13             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24014 HSC.y.14             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24015 HSC.y.15             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24016 HSC.y.16             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24017 HSC.y.17             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24018 HSC.y.18             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24019 HSC.y.19             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24020 HSC.y.20             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24021 HSC.y.21             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24022 HSC.y.22             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24023 HSC.y.23             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24024 HSC.y.24             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24025 HSC.y.25             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24026 HSC.y.26             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24027 HSC.y.27             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24028 HSC.y.28             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24029 HSC.y.29             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24030 HSC.y.30             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24031 HSC.y.31             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24032 HSC.y.32             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24033 HSC.y.33             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24034 HSC.y.34             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24035 HSC.y.35             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24036 HSC.y.36             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24037 HSC.y.37             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24038 HSC.y.38             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24039 HSC.y.39             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24040 HSC.y.40             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24041 HSC.y.41             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24042 HSC.y.42             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24043 HSC.y.43             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24044 HSC.y.44             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24045 HSC.y.45             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24046 HSC.y.46             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24047 HSC.y.47             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24048 HSC.y.48             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24049 HSC.y.49             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24050 HSC.y.50             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24051 HSC.y.51             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24052 HSC.y.52             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24053 HSC.y.53             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24054 HSC.y.54             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24055 HSC.y.55             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24056 HSC.y.56             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24057 HSC.y.57             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24058 HSC.y.58             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24059 HSC.y.59             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24060 HSC.y.60             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24061 HSC.y.61             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24062 HSC.y.62             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24063 HSC.y.63             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24064 HSC.y.64             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24065 HSC.y.65             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24066 HSC.y.66             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24067 HSC.y.67             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24068 HSC.y.68             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24069 HSC.y.69             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24070 HSC.y.70             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24071 HSC.y.71             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24072 HSC.y.72             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24073 HSC.y.73             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24074 HSC.y.74             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24075 HSC.y.75             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24076 HSC.y.76             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24077 HSC.y.77             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24078 HSC.y.78             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24079 HSC.y.79             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24080 HSC.y.80             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24081 HSC.y.81             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24082 HSC.y.82             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24083 HSC.y.83             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24084 HSC.y.84             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24085 HSC.y.85             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24086 HSC.y.86             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24087 HSC.y.87             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24088 HSC.y.88             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24089 HSC.y.89             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24090 HSC.y.90             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24091 HSC.y.91             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24092 HSC.y.92             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24093 HSC.y.93             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24094 HSC.y.94             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24095 HSC.y.95             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24096 HSC.y.96             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24097 HSC.y.97             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24098 HSC.y.98             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24099 HSC.y.99             dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24100 HSC.y.100            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24101 HSC.y.101            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24102 HSC.y.102            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24103 HSC.y.103            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24104 HSC.y.104            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24105 HSC.y.105            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24106 HSC.y.106            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24107 HSC.y.107            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24108 HSC.y.108            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24109 HSC.y.109            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24110 HSC.y.110            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  24111 HSC.y.111            dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25000 HSC.NB921.00             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25001 HSC.NB921.01             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25002 HSC.NB921.02             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25003 HSC.NB921.03             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25004 HSC.NB921.04             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25005 HSC.NB921.05             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25006 HSC.NB921.06             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25007 HSC.NB921.07             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25008 HSC.NB921.08             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25009 HSC.NB921.09             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25010 HSC.NB921.10             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25011 HSC.NB921.11             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25012 HSC.NB921.12             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25013 HSC.NB921.13             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25014 HSC.NB921.14             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25015 HSC.NB921.15             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25016 HSC.NB921.16             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25017 HSC.NB921.17             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25018 HSC.NB921.18             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25019 HSC.NB921.19             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25020 HSC.NB921.20             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25021 HSC.NB921.21             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25022 HSC.NB921.22             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25023 HSC.NB921.23             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25024 HSC.NB921.24             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25025 HSC.NB921.25             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25026 HSC.NB921.26             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25027 HSC.NB921.27             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25028 HSC.NB921.28             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25029 HSC.NB921.29             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25030 HSC.NB921.30             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25031 HSC.NB921.31             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25032 HSC.NB921.32             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25033 HSC.NB921.33             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25034 HSC.NB921.34             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25035 HSC.NB921.35             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25036 HSC.NB921.36             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25037 HSC.NB921.37             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25038 HSC.NB921.38             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25039 HSC.NB921.39             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25040 HSC.NB921.40             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25041 HSC.NB921.41             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25042 HSC.NB921.42             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25043 HSC.NB921.43             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25044 HSC.NB921.44             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25045 HSC.NB921.45             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25046 HSC.NB921.46             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25047 HSC.NB921.47             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25048 HSC.NB921.48             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25049 HSC.NB921.49             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25050 HSC.NB921.50             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25051 HSC.NB921.51             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25052 HSC.NB921.52             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25053 HSC.NB921.53             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25054 HSC.NB921.54             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25055 HSC.NB921.55             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25056 HSC.NB921.56             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25057 HSC.NB921.57             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25058 HSC.NB921.58             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25059 HSC.NB921.59             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25060 HSC.NB921.60             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25061 HSC.NB921.61             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25062 HSC.NB921.62             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25063 HSC.NB921.63             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25064 HSC.NB921.64             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25065 HSC.NB921.65             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25066 HSC.NB921.66             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25067 HSC.NB921.67             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25068 HSC.NB921.68             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25069 HSC.NB921.69             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25070 HSC.NB921.70             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25071 HSC.NB921.71             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25072 HSC.NB921.72             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25073 HSC.NB921.73             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25074 HSC.NB921.74             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25075 HSC.NB921.75             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25076 HSC.NB921.76             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25077 HSC.NB921.77             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25078 HSC.NB921.78             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25079 HSC.NB921.79             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25080 HSC.NB921.80             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25081 HSC.NB921.81             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25082 HSC.NB921.82             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25083 HSC.NB921.83             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25084 HSC.NB921.84             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25085 HSC.NB921.85             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25086 HSC.NB921.86             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25087 HSC.NB921.87             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25088 HSC.NB921.88             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25089 HSC.NB921.89             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25090 HSC.NB921.90             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25091 HSC.NB921.91             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25092 HSC.NB921.92             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25093 HSC.NB921.93             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25094 HSC.NB921.94             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25095 HSC.NB921.95             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25096 HSC.NB921.96             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25097 HSC.NB921.97             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25098 HSC.NB921.98             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25099 HSC.NB921.99             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25100 HSC.NB921.100            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25101 HSC.NB921.101            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25102 HSC.NB921.102            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25103 HSC.NB921.103            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25104 HSC.NB921.104            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25105 HSC.NB921.105            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25106 HSC.NB921.106            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25107 HSC.NB921.107            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25108 HSC.NB921.108            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25109 HSC.NB921.109            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25110 HSC.NB921.110            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  25111 HSC.NB921.111            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26000 HSC.NB816.00             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26001 HSC.NB816.01             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26002 HSC.NB816.02             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26003 HSC.NB816.03             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26004 HSC.NB816.04             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26005 HSC.NB816.05             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26006 HSC.NB816.06             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26007 HSC.NB816.07             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26008 HSC.NB816.08             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26009 HSC.NB816.09             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26010 HSC.NB816.10             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26011 HSC.NB816.11             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26012 HSC.NB816.12             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26013 HSC.NB816.13             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26014 HSC.NB816.14             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26015 HSC.NB816.15             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26016 HSC.NB816.16             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26017 HSC.NB816.17             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26018 HSC.NB816.18             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26019 HSC.NB816.19             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26020 HSC.NB816.20             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26021 HSC.NB816.21             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26022 HSC.NB816.22             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26023 HSC.NB816.23             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26024 HSC.NB816.24             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26025 HSC.NB816.25             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26026 HSC.NB816.26             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26027 HSC.NB816.27             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26028 HSC.NB816.28             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26029 HSC.NB816.29             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26030 HSC.NB816.30             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26031 HSC.NB816.31             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26032 HSC.NB816.32             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26033 HSC.NB816.33             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26034 HSC.NB816.34             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26035 HSC.NB816.35             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26036 HSC.NB816.36             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26037 HSC.NB816.37             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26038 HSC.NB816.38             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26039 HSC.NB816.39             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26040 HSC.NB816.40             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26041 HSC.NB816.41             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26042 HSC.NB816.42             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26043 HSC.NB816.43             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26044 HSC.NB816.44             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26045 HSC.NB816.45             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26046 HSC.NB816.46             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26047 HSC.NB816.47             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26048 HSC.NB816.48             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26049 HSC.NB816.49             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26050 HSC.NB816.50             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26051 HSC.NB816.51             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26052 HSC.NB816.52             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26053 HSC.NB816.53             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26054 HSC.NB816.54             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26055 HSC.NB816.55             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26056 HSC.NB816.56             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26057 HSC.NB816.57             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26058 HSC.NB816.58             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26059 HSC.NB816.59             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26060 HSC.NB816.60             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26061 HSC.NB816.61             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26062 HSC.NB816.62             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26063 HSC.NB816.63             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26064 HSC.NB816.64             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26065 HSC.NB816.65             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26066 HSC.NB816.66             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26067 HSC.NB816.67             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26068 HSC.NB816.68             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26069 HSC.NB816.69             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26070 HSC.NB816.70             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26071 HSC.NB816.71             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26072 HSC.NB816.72             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26073 HSC.NB816.73             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26074 HSC.NB816.74             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26075 HSC.NB816.75             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26076 HSC.NB816.76             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26077 HSC.NB816.77             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26078 HSC.NB816.78             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26079 HSC.NB816.79             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26080 HSC.NB816.80             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26081 HSC.NB816.81             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26082 HSC.NB816.82             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26083 HSC.NB816.83             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26084 HSC.NB816.84             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26085 HSC.NB816.85             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26086 HSC.NB816.86             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26087 HSC.NB816.87             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26088 HSC.NB816.88             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26089 HSC.NB816.89             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26090 HSC.NB816.90             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26091 HSC.NB816.91             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26092 HSC.NB816.92             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26093 HSC.NB816.93             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26094 HSC.NB816.94             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26095 HSC.NB816.95             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26096 HSC.NB816.96             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26097 HSC.NB816.97             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26098 HSC.NB816.98             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26099 HSC.NB816.99             dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26100 HSC.NB816.100            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26101 HSC.NB816.101            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26102 HSC.NB816.102            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26103 HSC.NB816.103            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26104 HSC.NB816.104            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26105 HSC.NB816.105            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26106 HSC.NB816.106            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26107 HSC.NB816.107            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26108 HSC.NB816.108            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26109 HSC.NB816.109            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26110 HSC.NB816.110            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  26111 HSC.NB816.111            dep  25.000  0.000 0.000     -     - 0.0000     0     -   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+# GPC2 grizyw 
+ # g 
+  30000 GPC2.g.XY00          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30001 GPC2.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
+  30002 GPC2.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
+  30003 GPC2.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
+  30004 GPC2.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
+  30005 GPC2.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
+  30006 GPC2.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
+  30007 GPC2.g.XY07          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30010 GPC2.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
+  30011 GPC2.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
+  30012 GPC2.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
+  30013 GPC2.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
+  30014 GPC2.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
+  30015 GPC2.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
+  30016 GPC2.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
+  30017 GPC2.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
+  30020 GPC2.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
+  30021 GPC2.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
+  30022 GPC2.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
+  30023 GPC2.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
+  30024 GPC2.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
+  30025 GPC2.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
+  30026 GPC2.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
+  30027 GPC2.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
+  30030 GPC2.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
+  30031 GPC2.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
+  30032 GPC2.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
+  30033 GPC2.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
+  30034 GPC2.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
+  30035 GPC2.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
+  30036 GPC2.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
+  30037 GPC2.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
+  30040 GPC2.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
+  30041 GPC2.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
+  30042 GPC2.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
+  30043 GPC2.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
+  30044 GPC2.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
+  30045 GPC2.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
+  30046 GPC2.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
+  30047 GPC2.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
+  30050 GPC2.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
+  30051 GPC2.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
+  30052 GPC2.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
+  30053 GPC2.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
+  30054 GPC2.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
+  30055 GPC2.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
+  30056 GPC2.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
+  30057 GPC2.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
+  30060 GPC2.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
+  30061 GPC2.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
+  30062 GPC2.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
+  30063 GPC2.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
+  30064 GPC2.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
+  30065 GPC2.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
+  30066 GPC2.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
+  30067 GPC2.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
+  30070 GPC2.g.XY70          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30071 GPC2.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
+  30072 GPC2.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
+  30073 GPC2.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
+  30074 GPC2.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
+  30075 GPC2.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
+  30076 GPC2.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
+  30077 GPC2.g.XY77          dep  24.563 -0.147 0.000     -     - 0.0000     0     1   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+ # r 
+  30100 GPC2.r.XY00          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30101 GPC2.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
+  30102 GPC2.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
+  30103 GPC2.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
+  30104 GPC2.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
+  30105 GPC2.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
+  30106 GPC2.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
+  30107 GPC2.r.XY07          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30110 GPC2.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
+  30111 GPC2.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
+  30112 GPC2.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
+  30113 GPC2.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
+  30114 GPC2.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
+  30115 GPC2.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
+  30116 GPC2.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
+  30117 GPC2.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
+  30120 GPC2.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
+  30121 GPC2.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
+  30122 GPC2.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
+  30123 GPC2.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
+  30124 GPC2.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
+  30125 GPC2.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
+  30126 GPC2.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
+  30127 GPC2.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
+  30130 GPC2.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
+  30131 GPC2.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
+  30132 GPC2.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
+  30133 GPC2.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
+  30134 GPC2.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
+  30135 GPC2.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
+  30136 GPC2.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
+  30137 GPC2.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
+  30140 GPC2.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
+  30141 GPC2.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
+  30142 GPC2.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
+  30143 GPC2.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
+  30144 GPC2.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
+  30145 GPC2.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
+  30146 GPC2.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
+  30147 GPC2.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
+  30150 GPC2.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
+  30151 GPC2.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
+  30152 GPC2.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
+  30153 GPC2.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
+  30154 GPC2.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
+  30155 GPC2.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
+  30156 GPC2.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
+  30157 GPC2.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
+  30160 GPC2.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
+  30161 GPC2.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
+  30162 GPC2.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
+  30163 GPC2.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
+  30164 GPC2.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
+  30165 GPC2.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
+  30166 GPC2.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
+  30167 GPC2.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
+  30170 GPC2.r.XY70          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30171 GPC2.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
+  30172 GPC2.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
+  30173 GPC2.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
+  30174 GPC2.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
+  30175 GPC2.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
+  30176 GPC2.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
+  30177 GPC2.r.XY77          dep  24.750 -0.085 0.000     -     - 0.0000     0     2   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+ # i 
+  30200 GPC2.i.XY00          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30201 GPC2.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
+  30202 GPC2.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
+  30203 GPC2.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
+  30204 GPC2.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
+  30205 GPC2.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
+  30206 GPC2.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
+  30207 GPC2.i.XY07          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30210 GPC2.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
+  30211 GPC2.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
+  30212 GPC2.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
+  30213 GPC2.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
+  30214 GPC2.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
+  30215 GPC2.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
+  30216 GPC2.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
+  30217 GPC2.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
+  30220 GPC2.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
+  30221 GPC2.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
+  30222 GPC2.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
+  30223 GPC2.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
+  30224 GPC2.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
+  30225 GPC2.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
+  30226 GPC2.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
+  30227 GPC2.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
+  30230 GPC2.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
+  30231 GPC2.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
+  30232 GPC2.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
+  30233 GPC2.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
+  30234 GPC2.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
+  30235 GPC2.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
+  30236 GPC2.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
+  30237 GPC2.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
+  30240 GPC2.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
+  30241 GPC2.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
+  30242 GPC2.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
+  30243 GPC2.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
+  30244 GPC2.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
+  30245 GPC2.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
+  30246 GPC2.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
+  30247 GPC2.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
+  30250 GPC2.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
+  30251 GPC2.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
+  30252 GPC2.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
+  30253 GPC2.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
+  30254 GPC2.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
+  30255 GPC2.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
+  30256 GPC2.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
+  30257 GPC2.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
+  30260 GPC2.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
+  30261 GPC2.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
+  30262 GPC2.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
+  30263 GPC2.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
+  30264 GPC2.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
+  30265 GPC2.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
+  30266 GPC2.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
+  30267 GPC2.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
+  30270 GPC2.i.XY70          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30271 GPC2.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
+  30272 GPC2.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
+  30273 GPC2.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
+  30274 GPC2.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
+  30275 GPC2.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
+  30276 GPC2.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
+  30277 GPC2.i.XY77          dep  24.611 -0.044 0.000     -     - 0.0000     0     3   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+ # z 
+  30300 GPC2.z.XY00          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30301 GPC2.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
+  30302 GPC2.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
+  30303 GPC2.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
+  30304 GPC2.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
+  30305 GPC2.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
+  30306 GPC2.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
+  30307 GPC2.z.XY07          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30310 GPC2.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
+  30311 GPC2.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
+  30312 GPC2.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
+  30313 GPC2.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
+  30314 GPC2.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
+  30315 GPC2.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
+  30316 GPC2.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
+  30317 GPC2.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
+  30320 GPC2.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
+  30321 GPC2.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
+  30322 GPC2.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
+  30323 GPC2.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
+  30324 GPC2.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
+  30325 GPC2.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
+  30326 GPC2.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
+  30327 GPC2.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
+  30330 GPC2.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
+  30331 GPC2.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
+  30332 GPC2.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
+  30333 GPC2.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
+  30334 GPC2.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
+  30335 GPC2.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
+  30336 GPC2.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
+  30337 GPC2.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
+  30340 GPC2.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
+  30341 GPC2.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
+  30342 GPC2.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
+  30343 GPC2.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
+  30344 GPC2.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
+  30345 GPC2.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
+  30346 GPC2.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
+  30347 GPC2.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
+  30350 GPC2.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
+  30351 GPC2.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
+  30352 GPC2.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
+  30353 GPC2.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
+  30354 GPC2.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
+  30355 GPC2.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
+  30356 GPC2.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
+  30357 GPC2.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
+  30360 GPC2.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
+  30361 GPC2.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
+  30362 GPC2.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
+  30363 GPC2.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
+  30364 GPC2.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
+  30365 GPC2.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
+  30366 GPC2.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
+  30367 GPC2.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
+  30370 GPC2.z.XY70          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30371 GPC2.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
+  30372 GPC2.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
+  30373 GPC2.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
+  30374 GPC2.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
+  30375 GPC2.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
+  30376 GPC2.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
+  30377 GPC2.z.XY77          dep  24.250 -0.033 0.000     -     - 0.0000     0     4   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+ # y 
+  30400 GPC2.y.XY00          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30401 GPC2.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
+  30402 GPC2.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
+  30403 GPC2.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
+  30404 GPC2.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
+  30405 GPC2.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
+  30406 GPC2.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
+  30407 GPC2.y.XY07          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30410 GPC2.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
+  30411 GPC2.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
+  30412 GPC2.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
+  30413 GPC2.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
+  30414 GPC2.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
+  30415 GPC2.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
+  30416 GPC2.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
+  30417 GPC2.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
+  30420 GPC2.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
+  30421 GPC2.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
+  30422 GPC2.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
+  30423 GPC2.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
+  30424 GPC2.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
+  30425 GPC2.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
+  30426 GPC2.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
+  30427 GPC2.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
+  30430 GPC2.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
+  30431 GPC2.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
+  30432 GPC2.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
+  30433 GPC2.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
+  30434 GPC2.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
+  30435 GPC2.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
+  30436 GPC2.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
+  30437 GPC2.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
+  30440 GPC2.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
+  30441 GPC2.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
+  30442 GPC2.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
+  30443 GPC2.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
+  30444 GPC2.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
+  30445 GPC2.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
+  30446 GPC2.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
+  30447 GPC2.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
+  30450 GPC2.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
+  30451 GPC2.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
+  30452 GPC2.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
+  30453 GPC2.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
+  30454 GPC2.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
+  30455 GPC2.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
+  30456 GPC2.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
+  30457 GPC2.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
+  30460 GPC2.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
+  30461 GPC2.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
+  30462 GPC2.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
+  30463 GPC2.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
+  30464 GPC2.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
+  30465 GPC2.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
+  30466 GPC2.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
+  30467 GPC2.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
+  30470 GPC2.y.XY70          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30471 GPC2.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
+  30472 GPC2.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
+  30473 GPC2.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
+  30474 GPC2.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
+  30475 GPC2.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
+  30476 GPC2.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
+  30477 GPC2.y.XY77          dep  23.320 -0.073 0.000     -     - 0.0000     0     5   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+ # w 
+  30500 GPC2.w.XY00          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30501 GPC2.w.XY01          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30502 GPC2.w.XY02          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30503 GPC2.w.XY03          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30504 GPC2.w.XY04          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30505 GPC2.w.XY05          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30506 GPC2.w.XY06          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30507 GPC2.w.XY07          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30510 GPC2.w.XY10          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30511 GPC2.w.XY11          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30512 GPC2.w.XY12          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30513 GPC2.w.XY13          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30514 GPC2.w.XY14          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30515 GPC2.w.XY15          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30516 GPC2.w.XY16          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30517 GPC2.w.XY17          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30520 GPC2.w.XY20          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30521 GPC2.w.XY21          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30522 GPC2.w.XY22          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30523 GPC2.w.XY23          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30524 GPC2.w.XY24          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30525 GPC2.w.XY25          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30526 GPC2.w.XY26          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30527 GPC2.w.XY27          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30530 GPC2.w.XY30          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30531 GPC2.w.XY31          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30532 GPC2.w.XY32          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30533 GPC2.w.XY33          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30534 GPC2.w.XY34          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30535 GPC2.w.XY35          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30536 GPC2.w.XY36          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30537 GPC2.w.XY37          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30540 GPC2.w.XY40          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30541 GPC2.w.XY41          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30542 GPC2.w.XY42          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30543 GPC2.w.XY43          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30544 GPC2.w.XY44          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30545 GPC2.w.XY45          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30546 GPC2.w.XY46          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30547 GPC2.w.XY47          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30550 GPC2.w.XY50          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30551 GPC2.w.XY51          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30552 GPC2.w.XY52          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30553 GPC2.w.XY53          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30554 GPC2.w.XY54          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30555 GPC2.w.XY55          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30556 GPC2.w.XY56          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30557 GPC2.w.XY57          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30560 GPC2.w.XY60          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30561 GPC2.w.XY61          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30562 GPC2.w.XY62          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30563 GPC2.w.XY63          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30564 GPC2.w.XY64          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30565 GPC2.w.XY65          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30566 GPC2.w.XY66          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30567 GPC2.w.XY67          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30570 GPC2.w.XY70          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30571 GPC2.w.XY71          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30572 GPC2.w.XY72          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30573 GPC2.w.XY73          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30574 GPC2.w.XY74          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30575 GPC2.w.XY75          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30576 GPC2.w.XY76          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+  30577 GPC2.w.XY77          dep  26.060  0.000 0.000     -     - 0.0000     0     9   0.015 0.000 1.000  0.000   0x0000 0x0000  0xe0440130 0x1003bc88
+ # SkyChip 
+  31000 GPC2.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
+  31100 GPC2.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
+  31200 GPC2.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
+  31300 GPC2.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
+  31400 GPC2.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
+  31500 GPC2.w.SkyChip       dep  25.000  0.000 0.000     -     - 0.0000     0     9   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+ # ForcedWarp 
+  32000 GPC2.g.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  32100 GPC2.r.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  32200 GPC2.i.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  32300 GPC2.z.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  32400 GPC2.y.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
+  32500 GPC2.w.ForcedWarp    dep  25.000  0.000 0.000     -     - 0.0000     0     9   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000
Index: /branches/eam_branches/ippconfig.20240412/dvo.photcodes.pre20120329
===================================================================
--- /branches/eam_branches/ippconfig.20240412/dvo.photcodes.pre20120329	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/dvo.photcodes.pre20120329	(revision 42661)
@@ -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/eam_branches/ippconfig.20240412/dvo.ps1v1.photcodes
===================================================================
--- /branches/eam_branches/ippconfig.20240412/dvo.ps1v1.photcodes	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/dvo.ps1v1.photcodes	(revision 42661)
@@ -0,0 +1,906 @@
+
+# this file defines the layout for the PS1 working science database.  it has
+# average photcodes of grizy for PS1 and JHK for 2MASS and UKIDSS references
+
+# 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  1003  1004 0.0160     0  1051   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  2     r                    sec   0.000  0.000 0.000  1003  1004 0.0080     0  1052   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  3     i                    sec   0.000  0.000 0.000  1003  1004 0.0280     0  1053   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  4     z                    sec   0.000  0.000 0.000  1003  1004 0.1070     0  1054   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  5     y                    sec   0.000  0.000 0.000     -     - 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	
+
+# 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	
+
+  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.050 0.000 1.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  2012  2MASS_H              ref   0.000  0.000 0.000     -     - 0.0000     0     7   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     8   0.050 0.000 1.000  0.000   0x0000 0x0000  0x0000 0x0000	
+
+# these were used for the synthetic photometry catalog based on 2mass					       										
+  3001  PS_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  PS_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  PS_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  PS_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  PS_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	
+
+  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						       											
+  10001 GPC1.g.XY01          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10002 GPC1.g.XY02          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10003 GPC1.g.XY03          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10004 GPC1.g.XY04          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10005 GPC1.g.XY05          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10006 GPC1.g.XY06          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10010 GPC1.g.XY10          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10011 GPC1.g.XY11          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10012 GPC1.g.XY12          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10013 GPC1.g.XY13          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10014 GPC1.g.XY14          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10015 GPC1.g.XY15          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10016 GPC1.g.XY16          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10017 GPC1.g.XY17          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10020 GPC1.g.XY20          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10021 GPC1.g.XY21          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10022 GPC1.g.XY22          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10023 GPC1.g.XY23          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10024 GPC1.g.XY24          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10025 GPC1.g.XY25          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10026 GPC1.g.XY26          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10027 GPC1.g.XY27          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10030 GPC1.g.XY30          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10031 GPC1.g.XY31          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10032 GPC1.g.XY32          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10033 GPC1.g.XY33          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10034 GPC1.g.XY34          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10035 GPC1.g.XY35          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10036 GPC1.g.XY36          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10037 GPC1.g.XY37          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10040 GPC1.g.XY40          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10041 GPC1.g.XY41          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10042 GPC1.g.XY42          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10043 GPC1.g.XY43          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10044 GPC1.g.XY44          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10045 GPC1.g.XY45          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10046 GPC1.g.XY46          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10047 GPC1.g.XY47          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10050 GPC1.g.XY50          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10051 GPC1.g.XY51          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10052 GPC1.g.XY52          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10053 GPC1.g.XY53          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10054 GPC1.g.XY54          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10055 GPC1.g.XY55          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10056 GPC1.g.XY56          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10057 GPC1.g.XY57          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10060 GPC1.g.XY60          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10061 GPC1.g.XY61          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10062 GPC1.g.XY62          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10063 GPC1.g.XY63          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10064 GPC1.g.XY64          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10065 GPC1.g.XY65          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10066 GPC1.g.XY66          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10067 GPC1.g.XY67          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10071 GPC1.g.XY71          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10072 GPC1.g.XY72          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10073 GPC1.g.XY73          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10074 GPC1.g.XY74          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10075 GPC1.g.XY75          dep  24.900  0.000 0.000     -     - 0.0000     0     1   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10076 GPC1.g.XY76          dep  24.900  0.000 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						       											
+  10101 GPC1.r.XY01          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10102 GPC1.r.XY02          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10103 GPC1.r.XY03          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10104 GPC1.r.XY04          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10105 GPC1.r.XY05          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10106 GPC1.r.XY06          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10110 GPC1.r.XY10          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10111 GPC1.r.XY11          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10112 GPC1.r.XY12          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10113 GPC1.r.XY13          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10114 GPC1.r.XY14          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10115 GPC1.r.XY15          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10116 GPC1.r.XY16          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10117 GPC1.r.XY17          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10120 GPC1.r.XY20          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10121 GPC1.r.XY21          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10122 GPC1.r.XY22          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10123 GPC1.r.XY23          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10124 GPC1.r.XY24          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10125 GPC1.r.XY25          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10126 GPC1.r.XY26          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10127 GPC1.r.XY27          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10130 GPC1.r.XY30          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10131 GPC1.r.XY31          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10132 GPC1.r.XY32          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10133 GPC1.r.XY33          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10134 GPC1.r.XY34          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10135 GPC1.r.XY35          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10136 GPC1.r.XY36          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10137 GPC1.r.XY37          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10140 GPC1.r.XY40          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10141 GPC1.r.XY41          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10142 GPC1.r.XY42          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10143 GPC1.r.XY43          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10144 GPC1.r.XY44          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10145 GPC1.r.XY45          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10146 GPC1.r.XY46          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10147 GPC1.r.XY47          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10150 GPC1.r.XY50          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10151 GPC1.r.XY51          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10152 GPC1.r.XY52          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10153 GPC1.r.XY53          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10154 GPC1.r.XY54          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10155 GPC1.r.XY55          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10156 GPC1.r.XY56          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10157 GPC1.r.XY57          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10160 GPC1.r.XY60          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10161 GPC1.r.XY61          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10162 GPC1.r.XY62          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10163 GPC1.r.XY63          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10164 GPC1.r.XY64          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10165 GPC1.r.XY65          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10166 GPC1.r.XY66          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10167 GPC1.r.XY67          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10171 GPC1.r.XY71          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10172 GPC1.r.XY72          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10173 GPC1.r.XY73          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10174 GPC1.r.XY74          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10175 GPC1.r.XY75          dep  25.100  0.000 0.000     -     - 0.0000     0     2   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10176 GPC1.r.XY76          dep  25.100  0.000 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						       											
+  10201 GPC1.i.XY01          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10202 GPC1.i.XY02          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10203 GPC1.i.XY03          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10204 GPC1.i.XY04          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10205 GPC1.i.XY05          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10206 GPC1.i.XY06          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10210 GPC1.i.XY10          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10211 GPC1.i.XY11          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10212 GPC1.i.XY12          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10213 GPC1.i.XY13          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10214 GPC1.i.XY14          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10215 GPC1.i.XY15          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10216 GPC1.i.XY16          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10217 GPC1.i.XY17          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10220 GPC1.i.XY20          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10221 GPC1.i.XY21          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10222 GPC1.i.XY22          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10223 GPC1.i.XY23          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10224 GPC1.i.XY24          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10225 GPC1.i.XY25          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10226 GPC1.i.XY26          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10227 GPC1.i.XY27          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10230 GPC1.i.XY30          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10231 GPC1.i.XY31          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10232 GPC1.i.XY32          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10233 GPC1.i.XY33          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10234 GPC1.i.XY34          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10235 GPC1.i.XY35          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10236 GPC1.i.XY36          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10237 GPC1.i.XY37          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10240 GPC1.i.XY40          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10241 GPC1.i.XY41          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10242 GPC1.i.XY42          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10243 GPC1.i.XY43          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10244 GPC1.i.XY44          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10245 GPC1.i.XY45          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10246 GPC1.i.XY46          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10247 GPC1.i.XY47          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10250 GPC1.i.XY50          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10251 GPC1.i.XY51          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10252 GPC1.i.XY52          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10253 GPC1.i.XY53          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10254 GPC1.i.XY54          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10255 GPC1.i.XY55          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10256 GPC1.i.XY56          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10257 GPC1.i.XY57          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10260 GPC1.i.XY60          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10261 GPC1.i.XY61          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10262 GPC1.i.XY62          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10263 GPC1.i.XY63          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10264 GPC1.i.XY64          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10265 GPC1.i.XY65          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10266 GPC1.i.XY66          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10267 GPC1.i.XY67          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10271 GPC1.i.XY71          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10272 GPC1.i.XY72          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10273 GPC1.i.XY73          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10274 GPC1.i.XY74          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10275 GPC1.i.XY75          dep  25.000  0.000 0.000     -     - 0.0000     0     3   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10276 GPC1.i.XY76          dep  25.000  0.000 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						       											
+  10301 GPC1.z.XY01          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10302 GPC1.z.XY02          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10303 GPC1.z.XY03          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10304 GPC1.z.XY04          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10305 GPC1.z.XY05          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10306 GPC1.z.XY06          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10310 GPC1.z.XY10          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10311 GPC1.z.XY11          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10312 GPC1.z.XY12          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10313 GPC1.z.XY13          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10314 GPC1.z.XY14          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10315 GPC1.z.XY15          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10316 GPC1.z.XY16          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10317 GPC1.z.XY17          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10320 GPC1.z.XY20          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10321 GPC1.z.XY21          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10322 GPC1.z.XY22          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10323 GPC1.z.XY23          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10324 GPC1.z.XY24          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10325 GPC1.z.XY25          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10326 GPC1.z.XY26          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10327 GPC1.z.XY27          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10330 GPC1.z.XY30          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10331 GPC1.z.XY31          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10332 GPC1.z.XY32          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10333 GPC1.z.XY33          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10334 GPC1.z.XY34          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10335 GPC1.z.XY35          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10336 GPC1.z.XY36          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10337 GPC1.z.XY37          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10340 GPC1.z.XY40          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10341 GPC1.z.XY41          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10342 GPC1.z.XY42          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10343 GPC1.z.XY43          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10344 GPC1.z.XY44          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10345 GPC1.z.XY45          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10346 GPC1.z.XY46          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10347 GPC1.z.XY47          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10350 GPC1.z.XY50          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10351 GPC1.z.XY51          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10352 GPC1.z.XY52          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10353 GPC1.z.XY53          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10354 GPC1.z.XY54          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10355 GPC1.z.XY55          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10356 GPC1.z.XY56          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10357 GPC1.z.XY57          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10360 GPC1.z.XY60          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10361 GPC1.z.XY61          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10362 GPC1.z.XY62          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10363 GPC1.z.XY63          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10364 GPC1.z.XY64          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10365 GPC1.z.XY65          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10366 GPC1.z.XY66          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10367 GPC1.z.XY67          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10371 GPC1.z.XY71          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10372 GPC1.z.XY72          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10373 GPC1.z.XY73          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10374 GPC1.z.XY74          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10375 GPC1.z.XY75          dep  24.600  0.000 0.000     -     - 0.0000     0     4   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10376 GPC1.z.XY76          dep  24.600  0.000 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						       											
+  10401 GPC1.y.XY01          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10402 GPC1.y.XY02          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10403 GPC1.y.XY03          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10404 GPC1.y.XY04          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10405 GPC1.y.XY05          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10406 GPC1.y.XY06          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10410 GPC1.y.XY10          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10411 GPC1.y.XY11          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10412 GPC1.y.XY12          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10413 GPC1.y.XY13          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10414 GPC1.y.XY14          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10415 GPC1.y.XY15          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10416 GPC1.y.XY16          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10417 GPC1.y.XY17          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10420 GPC1.y.XY20          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10421 GPC1.y.XY21          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10422 GPC1.y.XY22          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10423 GPC1.y.XY23          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10424 GPC1.y.XY24          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10425 GPC1.y.XY25          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10426 GPC1.y.XY26          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10427 GPC1.y.XY27          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10430 GPC1.y.XY30          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10431 GPC1.y.XY31          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10432 GPC1.y.XY32          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10433 GPC1.y.XY33          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10434 GPC1.y.XY34          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10435 GPC1.y.XY35          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10436 GPC1.y.XY36          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10437 GPC1.y.XY37          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10440 GPC1.y.XY40          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10441 GPC1.y.XY41          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10442 GPC1.y.XY42          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10443 GPC1.y.XY43          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10444 GPC1.y.XY44          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10445 GPC1.y.XY45          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10446 GPC1.y.XY46          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10447 GPC1.y.XY47          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10450 GPC1.y.XY50          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10451 GPC1.y.XY51          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10452 GPC1.y.XY52          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10453 GPC1.y.XY53          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10454 GPC1.y.XY54          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10455 GPC1.y.XY55          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10456 GPC1.y.XY56          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10457 GPC1.y.XY57          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10460 GPC1.y.XY60          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10461 GPC1.y.XY61          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10462 GPC1.y.XY62          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10463 GPC1.y.XY63          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10464 GPC1.y.XY64          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10465 GPC1.y.XY65          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10466 GPC1.y.XY66          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10467 GPC1.y.XY67          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10471 GPC1.y.XY71          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10472 GPC1.y.XY72          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10473 GPC1.y.XY73          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10474 GPC1.y.XY74          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10475 GPC1.y.XY75          dep  22.200  0.000 0.000     -     - 0.0000     0     5   0.000 0.000 0.000  0.000   0x0000 0x0000  0x0000 0x0000	
+  10476 GPC1.y.XY76          dep  22.200  0.000 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	
Index: /branches/eam_branches/ippconfig.20240412/dvo.site.in
===================================================================
--- /branches/eam_branches/ippconfig.20240412/dvo.site.in	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/dvo.site.in	(revision 42661)
@@ -0,0 +1,40 @@
+
+CONFDIR                 @pkgdatadir@
+CAMERA                  default
+
+# location of DVO database tables
+CATDIR			default
+
+# location of possible data sources
+2MASS_DIR_AS		NONE
+2MASS_DIR_DR2		NONE
+GSCDIR			NONE
+USNO_A_DIR		NONE
+USNO_B_DIR		NONE
+TYCHO_DIR		NONE
+
+PHOTCODE_FILE		$CONFDIR/dvo.photcodes
+GSCFILE			$CONFDIR/GSCregions.tbl
+CATMODE			SPLIT
+CATFORMAT		PS1_DEV_1
+SKY_DEPTH               3
+# SKY_TABLE		this may be used to override GSCFILE
+ZERO_PT			25.0
+
+# access control for client/server addstar mode 
+# PASSWORD
+# HOSTNAME
+# VALID_IP
+
+# camera dependent parameter files:
+FILTER_LIST             $CONFDIR/$CAMERA/dvo.filters
+CAMERA_CONFIG           $CONFDIR/$CAMERA/dvo.layout
+DETREND_RECIPES         $CONFDIR/$CAMERA/dvo.recipe
+
+# load the camera-specific configuration files
+input                   $CONFDIR/$CAMERA/dvo.config
+
+PANTASKS_SERVER         XXXXX.ifa.hawaii.edu
+PASSWORD                XXXXX
+#PANTASKS_SERVER_STDOUT  pantasks.stdout.log
+#PANTASKS_SERVER_STDERR  pantasks.stderr.log
Index: /branches/eam_branches/ippconfig.20240412/esowfi/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/esowfi/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/esowfi/Makefile.am	(revision 42661)
@@ -0,0 +1,21 @@
+
+installdir = $(datadir)/ippconfig/esowfi
+
+install_files = \
+	dvo.config \
+	camera.config \
+	format_split.config \
+	format_together.config \
+	ppImage.config \
+	psphot.config \
+	psastro.config \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/esowfi/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/esowfi/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/esowfi/camera.config	(revision 42661)
@@ -0,0 +1,105 @@
+# Camera configuration file for simulated mosaic
+
+# File formats that we know about
+FORMATS         METADATA
+  TOGETHER STR  esowfi/format_together.config
+  SPLIT    STR  esowfi/format_split.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip50    STR  Cell00
+        Chip51    STR  Cell00
+        Chip52    STR  Cell00
+        Chip53    STR  Cell00
+        Chip54    STR  Cell00
+        Chip55    STR  Cell00
+        Chip56    STR  Cell00
+        Chip57    STR  Cell00
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+  NONE  STR  NONE
+  416  STR    416/29_ESO872
+  U    STR    U/50_ESO877
+  B    STR    B/123_ESO878
+  V    STR    V/89_ESO843
+  R    STR    Rc/162_ESO844
+  I    STR    I/203_ESO879
+  #g  STR    g
+  #r  STR    r
+  #i  STR    i
+  #z  STR    z
+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  esowfi    # Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias     STR BIAS
+  skyflat  STR FLAT,SKY
+  domeflat STR FLAT,SCREEN
+  object   STR OBJECT
+  science  STR OBJECT
+  #zero    STR BIAS
+  #dark    STR DARK
+  #flat    STR SKYFLAT
+END
+
+# Recipe options
+RECIPES    METADATA
+  PPIMAGE     STR    esowfi/ppImage.config     # Default: all (normal) options on
+  PSPHOT      STR    esowfi/psphot.config      # psphot details
+  PSASTRO     STR    esowfi/psastro.config     # psastro details
+  REJECTIONS  STR    esowfi/rejections.config  # Rejection limits
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	recipes/filerules-mef.mdc		# File rules appropriate for MEF format
+
+# FPA file defines properties of a possible input|output object
+# user can set the filename (I|O), filename rules (O), or abstract source (@FILES, @DETDB) (I)
+# user can set the extension name, if used
+# user can set the file type (IMAGE, JPEG, RAW, SX, OBJ, CMP, CMF) : but these are not variable in most cases!
+# user can set the file depth: only valid for output files
+# user can set the data depth: must be >= file depth
+# user can set the file format: only valid for newly created FPAs
+# user can set the colormap, scaling method, scaling range (JPEG only)
+# user can set the extension name for the data and header segments (CMF only)
+
+
+EXTNAME.RULES  METADATA
+  CMF.HEAD   STR  {CHIP.NAME}.hdr
+  CMF.DATA   STR  {CHIP.NAME}.psf
+  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
+
+  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
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}.{CHIP.N}		# Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/esowfi/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/esowfi/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/esowfi/dvo.config	(revision 42661)
@@ -0,0 +1,58 @@
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+DATE-KEYWORD		NONE
+UT-KEYWORD		NONE
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
Index: /branches/eam_branches/ippconfig.20240412/esowfi/format_split.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/esowfi/format_split.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/esowfi/format_split.config	(revision 42661)
@@ -0,0 +1,117 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	ORIGIN	STR		ESO
+	NAXIS			S32	2
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	CHIP		# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE		# There are no extensions
+	FPA.OBS		STR	ORIGIN		# A PHU keyword for unique FPA identifier
+	CONTENT		STR	EXTNAME 	# Key to the CONTENTS menu
+	CONTENT.RULE	STR	{CHIP.NAME}	# How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# File identifier with corresponding file layout name
+	WIN1.CHIP1.OUT1		STR	Chip51:Chip
+	WIN1.CHIP2.OUT1		STR	Chip52:Chip
+	WIN1.CHIP3.OUT1		STR	Chip53:Chip
+	WIN1.CHIP4.OUT1		STR	Chip54:Chip
+	WIN1.CHIP5.OUT1		STR	Chip55:Chip
+	WIN1.CHIP6.OUT1		STR	Chip56:Chip
+	WIN1.CHIP7.OUT1		STR	Chip57:Chip
+	WIN1.CHIP8.OUT1		STR	Chip58:Chip
+END
+
+# Specify the layout
+CHIPS	METADATA
+	Chip		STR		Cell00:Cell
+END
+
+
+# Specify the cell data
+CELLS	METADATA
+	Cell		METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC				STR	[49:2094,1:4098]
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC				STR	[1:48,1:4098]
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE		STR		TELESCOP
+	FPA.INSTRUMENT	STR		INSTRUME
+	FPA.OBSTYPE			STR		IMAGETYPE
+	FPA.AIRMASS			STR		AIRMASS
+	FPA.FILTER			STR		FILTER1
+	FPA.FILTERID		STR		FILTER1
+	FPA.RA					STR		RA
+	FPA.DEC					STR		DEC
+	FPA.OBJECT			STR		OBJECT
+	FPA.TIME				STR		MJD-OBS
+	FPA.EXPOSURE		STR		EXPTIME
+	CELL.EXPOSURE		STR		EXPTIME
+	CELL.DARKTIME		STR		EXPTIME
+	CELL.TIME				STR		MJD-OBS
+	#CELL.XBIN			STR		XBIN
+	#CELL.YBIN			STR		YBIN
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.DETECTOR		STR		WFI
+	FPA.TIMESYS			STR		UTC
+	FPA.RADECSYS		STR		ICRS
+	CELL.SATURATION	F32		65535
+	CELL.BAD				F32		0
+	CELL.READDIR		S32		1
+	CELL.TIMESYS		STR		UTC
+	CELL.XPARITY		S32		1
+	CELL.YPARITY		S32		1
+	CHIP.XPARITY		S32		1
+	CHIP.YPARITY		S32		1
+	CELL.X0					S32   0
+	CELL.Y0					S32   0
+	CHIP.X0.DEPEND	STR	CHIP.NAME
+	CHIP.X0		METADATA
+		Chip50	S32	1
+		Chip51	S32	2047
+		Chip52	S32	4093
+		Chip53	S32	6138
+		Chip54	S32	1
+		Chip55	S32	2047
+		Chip56	S32	4093
+		Chip57	S32	6138
+	END
+	CHIP.Y0.DEPEND	STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		Chip50	S32	8196
+		Chip51	S32	8196
+		Chip52	S32	8196
+		Chip53	S32	8196
+		Chip54	S32	1
+		Chip55	S32	1
+		Chip56	S32	1
+		Chip57	S32	1
+	END
+	CELL.XSIZE			S32	2142
+	CELL.YSIZE			S32	4128
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+	CELL.GAIN				F32	2.0
+	CELL.READNOISE	F32	3.0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
Index: /branches/eam_branches/ippconfig.20240412/esowfi/format_together.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/esowfi/format_together.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/esowfi/format_together.config	(revision 42661)
@@ -0,0 +1,117 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	MPI-2.2
+	INSTRUME	STR	WFI
+	NAXIS		S32	0
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR		FPA		# The FITS file represents an entire FPA
+	EXTENSIONS	STR		CHIP		# There are no extensions
+	FPA.OBS		STR		ESO OBS NAME	# A PHU keyword for unique FPA identifier
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name ---> chip_name:chip_type
+	WIN1.CHIP1.OUT1		STR		Chip50:WFIChip
+	WIN1.CHIP2.OUT1		STR		Chip51:WFIChip
+	WIN1.CHIP3.OUT1		STR		Chip52:WFIChip
+	WIN1.CHIP4.OUT1		STR		Chip53:WFIChip
+	WIN1.CHIP5.OUT2		STR		Chip54:WFIChip
+	WIN1.CHIP6.OUT1		STR		Chip55:WFIChip
+	WIN1.CHIP7.OUT1		STR		Chip56:WFIChip
+	WIN1.CHIP8.OUT1		STR		Chip57:WFIChip
+END
+
+# Specify the layout
+CHIPS	METADATA
+	# Chip type ---> cell_name:cell_type
+	WFIChip		STR	Cell00:WFICell
+END
+
+
+# Specify the cell data
+CELLS	METADATA
+	WFICell		METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[49:2094,1:4098]
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1:48,1:4098]
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE		STR		TELESCOP
+	FPA.INSTRUMENT		STR		INSTRUME
+	FPA.OBSTYPE		STR		IMAGETYP
+	FPA.AIRMASS		STR		AIRMASS
+	FPA.FILTER		STR		FILTER1
+	FPA.FILTERID		STR		FILTER1
+	FPA.RA			STR		RA
+	FPA.DEC			STR		DEC
+	FPA.OBJECT		STR		OBJECT
+	FPA.TIME		STR		MJD-OBS
+	FPA.EXPOSURE		STR		EXPTIME
+	CELL.EXPOSURE		STR		EXPTIME
+	CELL.DARKTIME		STR		EXPTIME
+	CELL.TIME		STR		MJD-OBS
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.DETECTOR		STR		WFI
+	FPA.TIMESYS		STR		UTC
+	FPA.RADECSYS		STR		ICRS
+	CELL.SATURATION		F32		65535
+	CELL.BAD		F32		0
+	CELL.READDIR		S32		1
+	CELL.TIMESYS		STR		UTC
+	CELL.XPARITY		S32		1
+	CELL.YPARITY		S32		1
+	CHIP.XPARITY		S32		1
+	CHIP.YPARITY		S32		1
+	CELL.XBIN		S32		1
+	CELL.YBIN		S32		1
+	CELL.X0			S32   0
+	CELL.Y0			S32   0
+	CHIP.X0.DEPEND	STR	CHIP.NAME
+	CHIP.X0		METADATA
+		Chip50	S32	1
+		Chip51	S32	2047
+		Chip52	S32	4093
+		Chip53	S32	6138
+		Chip54	S32	1
+		Chip55	S32	2047
+		Chip56	S32	4093
+		Chip57	S32	6138
+	END
+	CHIP.Y0.DEPEND	STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		Chip50	S32	8196
+		Chip51	S32	8196
+		Chip52	S32	8196
+		Chip53	S32	8196
+		Chip54	S32	1
+		Chip55	S32	1
+		Chip56	S32	1
+		Chip57	S32	1
+	END
+	CELL.XSIZE		S32	2142
+	CELL.YSIZE		S32	4128
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+	CELL.GAIN		F32	2.0
+	CELL.READNOISE		F32	3.0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
Index: /branches/eam_branches/ippconfig.20240412/esowfi/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/esowfi/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/esowfi/ppImage.config	(revision 42661)
@@ -0,0 +1,242 @@
+### ppImage recipe configuration file for simulated test camera
+
+# List of tasks to perform
+
+BASE.FITS       BOOL    FALSE           # Save base detrended image?
+CHIP.FITS       BOOL    TRUE            # Save chip-mosaicked image?
+BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+
+# binned output image options
+BIN1.XBIN               S32     8
+BIN1.YBIN               S32     8
+BIN2.XBIN               S32     64
+BIN2.YBIN               S32     64
+
+# Overscan subtraction
+OVERSCAN.SINGLE         BOOL    FALSE           # Reduce overscan to a single value?
+OVERSCAN.FIT            STR     POLYNOMIAL      # NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER          S32     7               # Order of polynomial fit
+OVERSCAN.STAT           STR     MEAN            # MEAN | MEDIAN
+
+# How to select the appropriate detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  MASK METADATA
+  END
+  DARK METADATA
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+  END
+  SHUTTER METADATA
+  END   
+END
+
+########################################################################################
+# Need the following in order to turn off overscan and shutter for the site-level recipe
+########################################################################################
+
+# Standard chip processing
+CHIP   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan subtraction only
+PPIMAGE_O         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    TRUE            # Overscan subtraction
+  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
+  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?
+END
+
+# Dark subtraction only
+PPIMAGE_D         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
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Shutter correction only
+PPIMAGE_S         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
+  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
+  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?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR    METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE           # Astrometry for mosaic?
+END
Index: /branches/eam_branches/ippconfig.20240412/esowfi/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/esowfi/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/esowfi/psastro.config	(revision 42661)
@@ -0,0 +1,4 @@
+PSASTRO.CATDIR	STR	SYNTH.SIMTEST
+
+#PSASTRO.MOSAIC.GRADIENT.NX    S32     1   # number of x-dir cells per chip
+#PSASTRO.MOSAIC.GRADIENT.NY    S32     1   # number of y-dir cells per chip
Index: /branches/eam_branches/ippconfig.20240412/esowfi/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/esowfi/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/esowfi/psphot.config	(revision 42661)
@@ -0,0 +1,3 @@
+
+# choose the PSF model
+PSF_MODEL                           STR   PS_MODEL_QGAUSS
Index: /branches/eam_branches/ippconfig.20240412/esowfi/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/esowfi/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/esowfi/rejections.config	(revision 42661)
@@ -0,0 +1,45 @@
+
+DARK METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32  0.0
+  IMFILE.MEANSTDEV   F32  0.0
+  IMFILE.SN          F32  0.0
+  IMFILE.BIN.STDEV   F32  1.0
+  IMFILE.BIN.SN      F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.5
+  EXP.SN             F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SN         F32  0.0
+  EXP.FLUX           F32  0.0
+  ENSEMBLE.MEAN      F32  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+
+SHUTTER METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  0.0
+  IMFILE.STDEV       F32  0.0
+  IMFILE.MEANSTDEV   F32  0.0
+  IMFILE.SN          F32  0.0
+  IMFILE.BIN.STDEV   F32  0.0
+  IMFILE.BIN.SN      F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  0.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.0
+  EXP.SN             F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SN         F32  0.0
+  EXP.FLUX           F32  0.0
+  ENSEMBLE.MEAN      F32  0.0
+  ENSEMBLE.STDEV     F32  0.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc1-tdi/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1-tdi/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1-tdi/Makefile.am	(revision 42661)
@@ -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/eam_branches/ippconfig.20240412/gpc1-tdi/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1-tdi/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1-tdi/camera.config	(revision 42661)
@@ -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/eam_branches/ippconfig.20240412/gpc1-tdi/format_tdi_20120416.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1-tdi/format_tdi_20120416.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1-tdi/format_tdi_20120416.config	(revision 42661)
@@ -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/eam_branches/ippconfig.20240412/gpc1/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/Makefile.am	(revision 42661)
@@ -0,0 +1,39 @@
+
+installdir = $(datadir)/ippconfig/gpc1
+
+install_files = \
+	dvo.config \
+	dvo.layout \
+	camera.config \
+	format_orig.config \
+	format_20080925.config \
+	format_20080929.config \
+	format_20081011.config \
+	format_20090120.config \
+	format_20090220.config \
+	format_20091209.config \
+	format_20100122.config \
+	format_20100228.config \
+	format_20100723.config \
+	format_20220827.config \
+	format_mef.config \
+	format_relphot.config \
+	ghost.model.mdc \
+	ppImage.config \
+        ppMerge.config \
+	ppStack.config \
+	psphot.config \
+	psastro.config \
+        pswarp.config \
+	psvideophot.config \
+        crosstalk_rules.mdc \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/gpc1/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/camera.config	(revision 42661)
@@ -0,0 +1,181 @@
+# Camera configuration file for GPC1: describes the camera
+
+# File formats that we know about
+FORMATS		METADATA
+	MEF		STR	gpc1/format_mef.config
+	RELPHOT		STR	gpc1/format_relphot.config
+	RAW_20100723	STR	gpc1/format_20100723.config
+	RAW_20100228	STR	gpc1/format_20100228.config
+	RAW_20100122	STR	gpc1/format_20100122.config
+	RAW_20091209	STR	gpc1/format_20091209.config
+	RAW_20090220	STR	gpc1/format_20090220.config
+	RAW_20090120	STR	gpc1/format_20090120.config
+	RAW_20081011	STR	gpc1/format_20081011.config
+	RAW_20080929	STR	gpc1/format_20080929.config
+	RAW_20080925	STR	gpc1/format_20080925.config
+	ORIG		STR	gpc1/format_orig.config
+END
+
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA	METADATA
+        XY01  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY02  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY03  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY04  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY05  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY06  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY10  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY11  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY12  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY13  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY14  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY15  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY16  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY17  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY20  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY21  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY22  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY23  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY24  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY25  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY26  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY27  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY30  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY31  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY32  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY33  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY34  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY35  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY36  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY37  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY40  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY41  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY42  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY43  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY44  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY45  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY46  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY47  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY50  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY51  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY52  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY53  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY54  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY55  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY56  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY57  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY60  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY61  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY62  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY63  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY64  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY65  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY66  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY67  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY71  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY72  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY73  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY74  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY75  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY76  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+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
+#	NIGHTLY_SCIENCE	STR	gpc1/nightly_science.config -- because of a bug in ppConfigDump, this cannot have 2 levels
+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.XGAL STR {CHIP.NAME}.xgal # 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
+
+# EAM 20240209 : until v15 burntools have been generated for all raw data, keep v14 for the
+# default value (modify in checked out test code)
+# BURNTOOL.STATE.GOOD        S16  15  # Value for burntool_state with the most recent bt version.
+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/eam_branches/ippconfig.20240412/gpc1/chips-layout.txt
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/chips-layout.txt	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/chips-layout.txt	(revision 42661)
@@ -0,0 +1,62 @@
+# 1st: from focal-plane layout gif
+# 2nd: from filename (*NM.fits)
+  CCID58-1-01b1  2  5    CCID58-1-01b1	2 5  
+  CCID58-1-01b2  3  5    CCID58-1-01b2	3 5  
+  CCID58-1-02a1  2  3    CCID58-1-02a1	2 3  
+  CCID58-1-02a2  3  3    CCID58-1-02a2	3 3  
+  CCID58-1-02b1  3  6    CCID58-1-02b1	3 6  
+  CCID58-1-02b2  6  3    CCID58-1-02b2	6 3  
+  CCID58-1-03b1  6  1    CCID58-1-03b1	6 1  
+  CCID58-1-03b2  4  1    CCID58-1-03b2	4 1  
+  CCID58-1-04a1  2  1    CCID58-1-04a1	2 1  
+  CCID58-1-04a2  2  4    CCID58-1-04a2	2 4  ** (not same as GIF)
+  CCID58-1-04b1  5  2    CCID58-1-04b1	5 2  
+  CCID58-1-05a2  4  4    CCID58-1-05a2	4 4  
+  CCID58-1-05b2  5  3    CCID58-1-05b2	5 3  
+  CCID58-1-07a1  6  4    CCID58-1-07a1	6 4  
+  CCID58-1-07b1  4  2    CCID58-1-07b1	4 2  
+  CCID58-1-09a1  0  4    CCID58-1-09a1	0 4  
+  CCID58-1-09a2  1  4    CCID58-1-09a2	1 4  
+  CCID58-1-09b1  1  6    CCID58-1-09b1	1 6  
+  CCID58-1-10a2  5  6    CCID58-1-10a2	5 6  
+  CCID58-1-12a1  3  0    CCID58-1-12a1	3 0  
+  CCID58-1-13a1  0  3    CCID58-1-13a1	0 3  
+  CCID58-1-14a2  1  3    CCID58-1-14a2	1 3  
+  CCID58-1-14b1  7  2    CCID58-1-14b1	7 2  
+  CCID58-1-17a2  1  2    CCID58-1-17a2	1 2  
+  CCID58-1-17b1  5  0    CCID58-1-17b1	5 0  
+  CCID58-1-18a1  7  4    CCID58-1-18a1	7 4  
+  CCID58-1-18b1  2  7    CCID58-1-18b1	2 7  
+  CCID58-1-19a1  2  0    CCID58-1-19a1	2 0  
+  CCID58-1-21a1  4  7    CCID58-1-21a1	4 7  
+  CCID58-1-21a2  4  5    CCID58-1-21a2	4 5  
+  CCID58-1-25b1  7  3    CCID58-1-25b1	7 3  
+  CCID58-2-01a1  3  1    CCID58-2-01a1	3 1  
+  CCID58-2-01a2  3  2    CCID58-2-01a2	3 2  
+  CCID58-2-04a1  3  4    CCID58-2-04a1	3 4  
+  CCID58-2-04b2  7  1    CCID58-2-04b2	7 1  
+  CCID58-2-05a1  7  6    CCID58-2-05a1	7 6  
+  CCID58-2-07a2  4  6    CCID58-2-07a2	4 6  
+  CCID58-2-07b2  2  6    CCID58-2-07b2	2 6  
+  CCID58-2-09a1  5  4    CCID58-2-09a1	5 4  
+  CCID58-2-09a2  2  2    CCID58-2-09a2	2 2  
+  CCID58-2-09b1  0  6    CCID58-2-09b1	0 6  
+  CCID58-2-09b2  5  1    CCID58-2-09b2	5 1  
+  CCID58-2-10b2  1  7    CCID58-2-10b2	3 7  **
+  CCID58-2-11b2  4  3    CCID58-2-11b2	4 3  
+  CCID58-2-12a1  5  7    CCID58-2-12a1	5 7  
+  CCID58-2-12a2  5  5    CCID58-2-12a2	5 5  
+  CCID58-2-13a2  1  1    CCID58-2-13a2 	1 1  
+  CCID58-2-13b1  1  5    CCID58-2-13b1	1 5  
+  CCID58-2-14a1  6  6    CCID58-2-14a1	6 6  
+  CCID58-2-15a1  0  1    CCID58-2-15a1	0 1  
+  CCID58-2-16a1  7  5    CCID58-2-16a1	7 5  
+  CCID58-2-16a2  6  7    CCID58-2-16a2	6 7  
+  CCID58-2-16b1  0  5    CCID58-2-16b1	0 5  
+  CCID58-2-16b2  3  7    CCID58-2-16b2	1 7  **
+  CCID58-2-17a2  6  5    CCID58-2-17a2	6 5  
+  CCID58-2-18a1  0  2    CCID58-2-18a1	0 2  
+  CCID58-2-18b2  4  0    CCID58-2-18b2	4 0  
+  CCID58-2-22a1  1  0    CCID58-2-22a1	1 0  
+  CCID58-2-22b2  6  0    CCID58-2-22b2	6 0  
+  CCID58-2-23b2  6  2    CCID58-2-23b2	6 2  
Index: /branches/eam_branches/ippconfig.20240412/gpc1/chips-script.txt
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/chips-script.txt	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/chips-script.txt	(revision 42661)
@@ -0,0 +1,11 @@
+
+# generate the offsets
+awk '{x=$2}{dx=157}($2 < 4){{x=$2+1}{dx=0}}(NR>2){printf "          XY%d%d  S32     %d\n", $2, $3, x*4971+dx}' chips-layout.txt | sort -k 1 > tmp
+awk '{y=$3}{dy=306}($2 < 4){{y=$3+1}{dy=0}}(NR>2){printf "          XY%d%d  S32     %d\n", $2, $3, y*5143+dy}' chips-layout.txt | sort -k 1 > tmp
+
+# generate the parities
+awk '{x=1}($2 < 4){x=-1}(NR>2){printf "          XY%d%d  S32     %d\n", $2, $3, x}' chips-layout.txt | sort -k 1 > tmp
+awk '{y=1}($2 < 4){y=-1}(NR>2){printf "          XY%d%d  S32     %d\n", $2, $3, y}' chips-layout.txt | sort -k 1 > tmp
+
+# generate the CONTENT table
+awk '(NR > 2){printf "        %s  STR  XY%d%d:GPCChip\n", $1, $2, $3}' chips-layout.txt | sort -k 3 > tmp
Index: /branches/eam_branches/ippconfig.20240412/gpc1/crosstalk_rules.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/crosstalk_rules.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/crosstalk_rules.mdc	(revision 42661)
@@ -0,0 +1,515 @@
+#TdB20210304: GPC1 crosstalk rules now set up in the recipes as a series of metadata blocks
+CROSSTALK.RULE			MULTI
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20
+  CELL.OFFSET                   STR 10/20/30/40/50/60/70/0/10
+  CROSS.MAGDIFF                 STR 8.91/9.83/9.30/10.36/10.00/10.26/9.83/9.54/9.35
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR 0/0/0/0/0/10/10/20/20/20
+  CELL.OFFSET                   STR -10/10/20/50/60/10/40/-10/0/10
+  CROSS.MAGDIFF                 STR 9.02/9.99/9.46/10.29/9.60/10.02/10.26/9.23/10.22/9.38
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20
+  CELL.OFFSET                   STR -20/-10/10/20/30/40/50/0/10
+  CROSS.MAGDIFF                 STR 9.90/9.67/9.77/10.28/10.81/10.67/10.36/9.59/9.29
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/10/20/20
+  CELL.OFFSET                   STR -30/-20/-10/10/20/30/40/20/-30/-20
+  CROSS.MAGDIFF                 STR 9.67/9.39/9.42/9.87/10.14/10.30/10.25/10.26/9.74/9.81
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20/20/20/20/20
+  CELL.OFFSET                   STR -40/-30/-20/-10/10/20/30/-40/-10/0/10/20/30
+  CROSS.MAGDIFF                 STR 9.36/9.96/9.76/9.38/9.67/9.91/9.93/10.54/10.45/10.48/10.52/10.11/10.31
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/10/10/20/20/20/20/20/20
+  CELL.OFFSET                   STR -50/-40/-30/-20/-10/10/20/10/20/-50/-40/-10/0/10/20
+  CROSS.MAGDIFF                 STR 10.03/10.13/10.18/10.02/9.16/9.41/9.92/9.56/10.41/10.57/10.24/10.39/10.67/10.64/10.71
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/10/20/20/20
+  CELL.OFFSET                   STR -60/-40/-30/-20/-10/10/-10/-10/0/10
+  CROSS.MAGDIFF                 STR 10.57/10.58/10.38/10.25/9.51/9.83/9.53/10.63/10.61/10.03
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR 0/0/0/0/0/20/20/20
+  CELL.OFFSET                   STR -60/-40/-30/-20/-10/-20/-10/0
+  CROSS.MAGDIFF                 STR 10.21/10.60/10.22/10.07/9.34/10.53/10.15/10.21
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR -10/0/0/0/0/20/20
+  CELL.OFFSET                   STR 10/10/20/30/40/0/10
+  CROSS.MAGDIFF                 STR 10.21/9.21/10.39/10.11/10.71/9.79/9.69
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR 0/0/0/20/20/20
+  CELL.OFFSET                   STR -10/10/20/-10/0/10
+  CROSS.MAGDIFF                 STR 9.19/9.74/9.55/9.21/10.16/9.40
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR 0/0/0/20/20
+  CELL.OFFSET                   STR -20/-10/10/0/10
+  CROSS.MAGDIFF                 STR 10.43/9.65/10.09/9.70/9.32
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR -10/0/0/0/0/0/0/0/20/20
+  CELL.OFFSET                   STR 10/-30/-20/-10/10/20/30/40/-30/-20
+  CROSS.MAGDIFF                 STR 10.70/9.73/9.37/9.68/9.61/10.20/10.55/10.97/9.84/9.88
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR -10/0/0/0/0/0/0/0/20/20/20
+  CELL.OFFSET                   STR 0/-40/-30/-20/-10/10/20/30/-10/0/20
+  CROSS.MAGDIFF                 STR 10.32/10.13/8.69/10.32/9.14/9.59/9.90/10.07/9.90/10.59/10.01
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20/20/20
+  CELL.OFFSET                   STR -50/-40/-30/-20/-10/10/20/-40/-10/10/20
+  CROSS.MAGDIFF                 STR 10.28/8.15/10.47/9.98/9.49/9.74/10.08/10.47/10.34/9.82/9.76
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20/20
+  CELL.OFFSET                   STR -60/-50/-40/-30/-20/-10/10/-10/0/10
+  CROSS.MAGDIFF                 STR 10.38/11.19/10.41/10.23/10.34/9.59/9.81/10.42/11.08/9.96
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR 0/0/0/20/20/20/20
+  CELL.OFFSET                   STR -30/-20/-10/-40/-20/-10/0
+  CROSS.MAGDIFF                 STR 10.72/10.74/9.84/10.17/10.19/10.12/10.76
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR -20/-20/-20/0/0/0/0/0/0/10/10
+  CELL.OFFSET                   STR 0/10/30/10/20/30/40/50/70/10/30
+  CROSS.MAGDIFF                 STR 10.12/9.23/10.16/9.11/10.71/10.94/10.74/10.80/10.71/10.76/10.28
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR -20/-20/-20/0/0/0/0/0/0
+  CELL.OFFSET                   STR -10/0/20/-10/10/20/30/40/60
+  CROSS.MAGDIFF                 STR 9.97/10.03/10.31/9.38/9.77/9.97/10.72/10.44/10.13
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR -20/-20/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -10/0/-20/-10/10/20/30/40/50
+  CROSS.MAGDIFF                 STR 9.30/9.65/9.58/9.86/9.57/10.59/10.48/10.65/10.23
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR -20/0/0/0/0/0/0/0/10
+  CELL.OFFSET                   STR -10/-30/-20/-10/10/20/30/40/0
+  CROSS.MAGDIFF                 STR 9.37/10.38/10.05/9.96/9.60/10.51/10.39/10.41/5.98
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/10/10
+  CELL.OFFSET                   STR -40/-30/-20/-10/10/20/30/-10/0
+  CROSS.MAGDIFF                 STR 10.50/10.61/10.55/9.80/9.54/10.27/10.39/9.66/9.93
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR -20/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR 0/-50/-40/-30/-20/-10/10/20
+  CROSS.MAGDIFF                 STR 10.39/10.48/10.54/10.68/10.42/9.90/6.83/10.10
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR -20/-20/0/0/0/0/0/0/0/10
+  CELL.OFFSET                   STR 0/10/-60/-50/-40/-30/-20/-10/10/10
+  CROSS.MAGDIFF                 STR 10.74/10.04/10.54/10.53/10.45/10.89/10.58/6.86/10.02/8.81
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR -20/0/0/0/0/0/0/0/10/10
+  CELL.OFFSET                   STR -10/-70/-60/-50/-40/-30/-20/-10/-60/-50
+  CROSS.MAGDIFF                 STR 10.42/9.91/9.72/10.25/9.91/9.92/9.84/10.16/10.18/7.71
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR -20/-20/-20/0/0/0/0/0
+  CELL.OFFSET                   STR 0/10/30/10/20/30/40/60
+  CROSS.MAGDIFF                 STR 9.47/8.59/9.87/9.32/9.76/9.21/9.94/10.05
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR -20/-20/-20/0/0
+  CELL.OFFSET                   STR -10/0/20/-10/10
+  CROSS.MAGDIFF                 STR 9.65/9.39/10.06/9.46/9.77
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR -20/-20/0/0/0/0/0
+  CELL.OFFSET                   STR -10/0/-10/10/20/30/50
+  CROSS.MAGDIFF                 STR 8.83/9.56/9.98/9.52/10.23/9.43/10.03
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR -20/0/0/0/0/0/0
+  CELL.OFFSET                   STR -10/-30/-20/-10/10/20/40
+  CROSS.MAGDIFF                 STR 9.34/10.74/10.32/9.92/9.58/10.53/10.52
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -40/-30/-20/-10/10/20/30
+  CROSS.MAGDIFF                 STR 10.16/10.30/9.76/9.59/9.64/9.66/9.91
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0/0
+  CELL.OFFSET                   STR -40/-10/10/20
+  CROSS.MAGDIFF                 STR 10.07/9.51/9.41/9.52
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR -20/0/0/0/0/0/0
+  CELL.OFFSET                   STR 10/-60/-50/-30/-20/-10/10
+  CROSS.MAGDIFF                 STR 9.89/10.47/10.35/9.80/9.98/9.57/9.72
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR -10/0/0/0/0/0/0
+  CELL.OFFSET                   STR -10/-60/-50/-40/-30/-20/-10
+  CROSS.MAGDIFF                 STR 9.27/9.52/9.40/9.38/9.95/9.58/9.49
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20/20/20
+  CELL.OFFSET                   STR 10/20/30/40/50/60/70/0/10/30/70
+  CROSS.MAGDIFF                 STR 9.55/10.49/10.74/10.82/11.01/10.65/10.95/9.99/9.42/10.14/11.05
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20/20
+  CELL.OFFSET                   STR -10/10/20/30/40/50/60/-10/0/20
+  CROSS.MAGDIFF                 STR 9.88/10.02/10.57/10.80/10.65/10.52/10.66/10.18/10.31/10.09
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20/20/20
+  CELL.OFFSET                   STR -20/-10/10/20/30/40/50/-20/-10/0/50
+  CROSS.MAGDIFF                 STR 10.20/10.07/9.77/10.29/10.14/10.33/10.46/10.76/9.16/9.64/10.79
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20
+  CELL.OFFSET                   STR -30/-20/-10/10/20/30/40/-10/0
+  CROSS.MAGDIFF                 STR 10.57/10.36/10.45/9.94/10.51/10.72/10.78/9.57/10.89
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20/20
+  CELL.OFFSET                   STR -40/-30/-20/-10/10/20/30/-40/-10/20
+  CROSS.MAGDIFF                 STR 10.64/10.44/10.50/9.94/9.74/10.26/10.33/11.07/10.92/10.56
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20
+  CELL.OFFSET                   STR -50/-40/-30/-20/-10/10/20/0/20
+  CROSS.MAGDIFF                 STR 10.45/10.26/10.46/10.41/10.09/9.76/10.35/10.41/10.88
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20/20/20/20
+  CELL.OFFSET                   STR -60/-50/-40/-30/-20/-10/10/-60/-50/-20/0/10
+  CROSS.MAGDIFF                 STR 10.35/10.30/10.29/10.29/10.38/9.85/9.86/10.67/10.47/10.98/10.24/10.10
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/10/20/20
+  CELL.OFFSET                   STR -70/-60/-50/-40/-30/-20/-10/-10/-70/-10
+  CROSS.MAGDIFF                 STR 10.46/10.46/10.56/10.17/10.26/10.03/10.20/9.43/10.70/10.61
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR -10/0/0/0/0/0/0/0/20/20/20
+  CELL.OFFSET                   STR 30/10/20/30/40/50/60/70/0/10/30
+  CROSS.MAGDIFF                 STR 11.10/9.46/11.12/10.87/11.48/11.01/10.84/10.74/10.12/9.42/10.30
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR 0/0/0/0/20/20/20
+  CELL.OFFSET                   STR -10/10/20/60/-10/0/20
+  CROSS.MAGDIFF                 STR 9.53/10.23/10.69/10.45/9.92/9.91/10.65
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR 0/0/0/0/0/20/20
+  CELL.OFFSET                   STR -20/-10/10/20/30/-10/0
+  CROSS.MAGDIFF                 STR 10.13/10.02/9.83/10.66/10.49/9.40/9.65
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR -10/0/0/0/0/0/0/0/20
+  CELL.OFFSET                   STR 0/-30/-20/-10/10/20/30/40/-10
+  CROSS.MAGDIFF                 STR 6.17/10.64/10.26/10.28/9.85/10.30/10.58/10.33/9.32
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR -10/-10/0/0/0/0/0/0/0/20
+  CELL.OFFSET                   STR -10/0/-40/-30/-20/-10/10/20/30/30
+  CROSS.MAGDIFF                 STR 9.58/10.09/10.35/10.66/10.44/10.10/9.60/10.26/10.22/10.58
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/20/20
+  CELL.OFFSET                   STR -50/-40/-30/-20/-10/10/20/0/20
+  CROSS.MAGDIFF                 STR 10.35/10.52/10.54/10.37/9.86/7.37/10.11/9.51/10.55
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR -10/0/0/0/0/0/0/0/20/20
+  CELL.OFFSET                   STR 10/-60/-50/-40/-30/-20/-10/10/0/10
+  CROSS.MAGDIFF                 STR 8.82/10.24/10.26/10.02/10.33/10.37/7.46/9.82/10.62/10.49
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR -10/-10/0/0/0/0/0/0/0/20
+  CELL.OFFSET                   STR -60/-50/-70/-60/-50/-40/-30/-20/-10/-10
+  CROSS.MAGDIFF                 STR 10.40/8.39/10.20/9.84/10.53/10.34/10.47/10.14/10.32/10.40
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-20/-20/0/0/0/0/0/0/10
+  CELL.OFFSET                   STR 0/10/20/30/40/50/70/10/20/30/40/50/70/10
+  CROSS.MAGDIFF                 STR 9.62/9.44/10.27/10.58/10.14/10.17/10.54/9.33/10.01/9.70/10.28/10.95/10.75/10.38
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR -20/-20/-20/0/0/0/0/0
+  CELL.OFFSET                   STR -10/0/10/-10/10/20/30/60
+  CROSS.MAGDIFF                 STR 9.23/9.99/9.15/9.09/9.86/9.39/10.14/10.41
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -20/-10/0/10/20/-20/-10/10/20/30/40/50
+  CROSS.MAGDIFF                 STR 10.27/10.43/9.33/9.10/10.14/9.99/9.04/9.44/9.81/10.08/10.42/10.00
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR -20/-20/-20/0/0/0/0/0/0/0/10
+  CELL.OFFSET                   STR -30/-20/-10/-30/-20/-10/10/20/30/40/10
+  CROSS.MAGDIFF                 STR 9.77/9.97/10.80/9.61/9.25/9.54/9.54/10.16/10.51/10.38/10.82
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-20/-20/0/0/0/0/0/0/0/10
+  CELL.OFFSET                   STR -40/-30/-10/0/10/20/30/-40/-30/-20/-10/10/20/30/0
+  CROSS.MAGDIFF                 STR 9.98/10.43/9.92/10.03/9.12/9.71/10.09/9.99/9.56/9.64/9.07/9.32/9.51/9.51/9.79
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-20/-20/-20/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -50/-40/-30/-20/-10/0/10/20/-50/-40/-30/-20/-10/10/20
+  CROSS.MAGDIFF                 STR 10.72/10.68/10.71/10.83/10.56/10.99/10.32/10.34/10.13/9.91/10.13/9.65/9.44/9.56/9.96
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-20/-20/-20/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -60/-50/-40/-30/-20/-10/0/10/-60/-50/-40/-30/-20/-10/10
+  CROSS.MAGDIFF                 STR 10.52/10.47/10.60/10.74/10.67/10.46/10.36/10.19/10.47/10.44/10.42/10.57/9.97/9.61/10.40
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-20/-20/-20/0/0/0/0/0/0/10
+  CELL.OFFSET                   STR -70/-60/-50/-40/-30/-20/-10/0/-60/-50/-40/-30/-20/-10/0
+  CROSS.MAGDIFF                 STR 10.51/10.75/10.51/10.80/10.66/10.59/10.02/10.56/10.88/10.86/10.65/10.75/10.12/9.55/10.16
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-20/-20/-20/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR 0/10/20/30/40/50/60/70/10/20/30/40/50/60/70
+  CROSS.MAGDIFF                 STR 9.67/9.37/10.32/10.54/10.02/10.15/10.62/9.95/9.10/10.31/9.85/10.29/10.38/9.85/9.89
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR -20/-20/-20/-10/-10/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -10/0/10/10/40/-10/10/20/30/40/50/60
+  CROSS.MAGDIFF                 STR 9.13/10.20/9.28/9.72/10.14/8.94/9.77/9.53/8.85/10.14/9.30/9.56
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-10/-10/-10/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -20/-10/0/10/20/-20/-10/0/-20/-10/10/20/30/40/50
+  CROSS.MAGDIFF                 STR 10.60/10.59/9.36/9.17/10.38/9.59/9.89/11.07/9.64/9.51/9.85/10.23/9.72/10.30/10.46
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-20/-10/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -30/-20/-10/0/10/40/20/-30/-20/-10/10/20/30/40
+  CROSS.MAGDIFF                 STR 9.20/9.44/8.97/9.10/9.61/8.93/9.72/9.06/8.93/9.26/8.95/9.41/9.30/9.00
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR -20/-20/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -20/-10/-40/-30/-20/-10/10/20/30
+  CROSS.MAGDIFF                 STR 8.77/9.31/8.64/9.25/8.91/8.84/8.83/8.67/8.97
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-20/-10/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -30/-20/-10/0/10/20/10/-50/-40/-30/-20/-10/10/20
+  CROSS.MAGDIFF                 STR 8.94/9.39/9.29/9.11/9.39/9.48/8.68/9.02/9.13/9.16/8.86/8.35/8.78/8.73
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/-20/-20/-10/0/0/0/0/0/0/0
+  CELL.OFFSET                   STR -60/-50/-30/-20/-10/0/10/-10/-60/-50/-40/-30/-20/-10/10
+  CROSS.MAGDIFF                 STR 10.19/10.55/10.65/10.28/9.92/9.64/10.24/9.45/10.48/10.38/9.35/9.08/9.78/9.23/9.38
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR -20/-20/-20/-20/-20/0/0/0
+  CELL.OFFSET                   STR -40/-30/-20/-10/0/-40/-20/-10
+  CROSS.MAGDIFF                 STR 10.21/10.41/9.95/10.05/10.43/9.23/9.50/9.08
+END
+
Index: /branches/eam_branches/ippconfig.20240412/gpc1/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/dvo.config	(revision 42661)
@@ -0,0 +1,78 @@
+
+# location of DVO database tables
+MOSAICNAME              GPC1
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+#DATE-KEYWORD		DATE-OBS
+#DATE-MODE		yyyy-mm-dd
+#UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	20.7070999146
+OBSERVATORY-LONGITUDE	10.4170608521
+
+SUBPIX_DATAFILE		NONE
+
+IMAGE-ID-KEYWORD        IMAGEID
+SOURCE-ID-KEYWORD       SOURCEID
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+
+# activate:
+# NIGHT_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+# NIGHT_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              2     # mark star FEW if N(good) < STAR_TOOFEW
+GRID_TOOFEW             10     # keep grid FROZEN if N(good) < GRID_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 4
+RELPHOT_GRID_Y 4
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+RELASTRO_SIGMA_LIM      0.01  # select measurements with dM < SIGMA_LIM for relphot analysis
+PAR_FACTOR_MIN          0.2
Index: /branches/eam_branches/ippconfig.20240412/gpc1/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/dvo.layout	(revision 42661)
@@ -0,0 +1,88 @@
+# this file defines the layout of the mosaic imager:
+
+NCCD 60
+NAXIS1 4846
+NAXIS2 4868
+
+MOSAIC_X 8
+MOSAIC_Y 8
+
+## XXX is this a good place for this, or is ptolemy.rc better?
+REFCELL.X 16
+REFCELL.Y 16
+
+# lines need to contain:
+
+CHIPID_KEYWORD EXTNAME
+
+# ID     CHIPID xoffset yoffset xflip yflip datasec         biassec            Xo      Yo      theta
+CCD.0      XY01       0       1     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.1      XY02       0       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.2      XY03       0       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.3      XY04       0       4     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.4      XY05       0       5     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.5      XY06       0       6     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.6      XY10       1       0     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.7      XY11       1       1     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.8      XY12       1       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.9      XY13       1       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.10     XY14       1       4     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.11     XY15       1       5     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.12     XY16       1       6     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.13     XY17       1       7     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.14     XY20       2       0     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.15     XY21       2       1     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.16     XY22       2       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.17     XY23       2       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.18     XY24       2       4     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.19     XY25       2       5     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.20     XY26       2       6     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.21     XY27       2       7     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.22     XY30       3       0     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.23     XY31       3       1     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.24     XY32       3       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.25     XY33       3       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.26     XY34       3       4     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.27     XY35       3       5     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.28     XY36       3       6     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.29     XY37       3       7     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.30     XY40       4       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.31     XY41       4       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.32     XY42       4       2     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.33     XY43       4       3     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.34     XY44       4       4     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.35     XY45       4       5     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.36     XY46       4       6     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.37     XY47       4       7     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.38     XY50       5       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.39     XY51       5       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.40     XY52       5       2     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.41     XY53       5       3     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.42     XY54       5       4     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.43     XY55       5       5     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.44     XY56       5       6     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.45     XY57       5       7     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.46     XY60       6       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.47     XY61       6       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.48     XY62       6       2     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.49     XY63       6       3     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.50     XY64       6       4     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.51     XY65       6       5     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.52     XY66       6       6     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.53     XY67       6       7     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.54     XY71       7       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.55     XY72       7       2     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.56     XY73       7       3     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.57     XY74       7       4     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.58     XY75       7       5     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.59     XY76       7       6     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+
+# can we use header to find biassec
+USE_BIASSEC 1
+
+# header format lines : these are added to the PHU to specify the format to IPP tools
+NFORMAT 4
+FORMAT  TELESCOP  PS1
+FORMAT  DETECTOR  GPC1
+FORMAT  CONTROLR  STARGRASP
+FORMAT  PSFORMAT  RELPHOT
Index: /branches/eam_branches/ippconfig.20240412/gpc1/format_20080925.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20080925.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20080925.config	(revision 42661)
@@ -0,0 +1,734 @@
+# Bug in shutter controller was fixed: dates no longer off by 1 month.
+# Saturation point is set low to attempt to encompass all detectors.
+# SHUTDAVR = 1.21 is 2008 Sept 29.
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS1
+        TELESCOP        STR     PS1
+	INSTRUME	STR	gpc1
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	54734.0  # OP: >=
+#	SHUTDAVR	F32	1.21 		# OP: >=
+
+#       The most accurate keyword for the time/date is SHUTOUTC, but
+#       until 2009/9/30, there was a bug which set the month off by 1.
+#       The prior formats use MJD-OBS for time/date, and this is set
+#       in the db.  SHUTDAVR is supposed to be the key to the new
+#       shutter driver, but there were earlier periods where the value
+#       was 1.21, so we are keying on the MJD of the change.  Also
+#       note that historically (early 2008), SHUTOUTC was not
+#       available, forcing MJD-OBS in those periods.
+
+#       this format covers a small amount of data registered in the db using SHUTOUTC 
+#       before the fix was made, but then modified in the db under sql.  note the method
+#       of getting the ccd_temps by matching the offset times
+
+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-1-13a1  STR  XY03:GPCChip  # chip 02
+        CCID58-1-09a1  STR  XY04:GPCChip  # chip 03
+        CCID58-2-16b1  STR  XY05:GPCChip  # chip 04
+        CCID58-2-09b1  STR  XY06:GPCChip  # chip 05
+        CCID58-2-22a1  STR  XY10:GPCChip  # chip 06
+        CCID58-2-13a2  STR  XY11:GPCChip  # chip 07
+        CCID58-1-17a2  STR  XY12:GPCChip  # chip 08
+        CCID58-1-14a2  STR  XY13:GPCChip  # chip 09
+        CCID58-1-09a2  STR  XY14:GPCChip  # chip 10
+        CCID58-2-13b1  STR  XY15:GPCChip  # chip 11
+        CCID58-1-09b1  STR  XY16:GPCChip  # chip 12
+        CCID58-2-10b2  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-1-04a2  STR  XY24:GPCChip  # chip 18
+        CCID58-1-01b1  STR  XY25:GPCChip  # chip 19
+        CCID58-2-07b2  STR  XY26:GPCChip  # chip 20
+        CCID58-1-18b1  STR  XY27:GPCChip  # chip 21
+        CCID58-1-12a1  STR  XY30:GPCChip  # chip 22
+        CCID58-2-01a1  STR  XY31:GPCChip  # chip 23
+        CCID58-2-01a2  STR  XY32:GPCChip  # chip 24
+        CCID58-1-02a2  STR  XY33:GPCChip  # chip 25
+        CCID58-2-04a1  STR  XY34:GPCChip  # chip 26
+        CCID58-1-01b2  STR  XY35:GPCChip  # chip 27
+        CCID58-1-02b1  STR  XY36:GPCChip  # chip 28
+        CCID58-2-16b2  STR  XY37:GPCChip  # chip 29
+        CCID58-2-18b2  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-1-05a2  STR  XY44:GPCChip  # chip 34
+        CCID58-1-21a2  STR  XY45:GPCChip  # chip 35
+        CCID58-2-07a2  STR  XY46:GPCChip  # chip 36
+        CCID58-1-21a1  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-2-09a1  STR  XY54:GPCChip  # chip 42
+        CCID58-2-12a2  STR  XY55:GPCChip  # chip 43
+        CCID58-1-10a2  STR  XY56:GPCChip  # chip 44
+        CCID58-2-12a1  STR  XY57:GPCChip  # chip 45
+        CCID58-2-22b2  STR  XY60:GPCChip  # chip 46
+        CCID58-1-03b1  STR  XY61:GPCChip  # chip 47
+        CCID58-2-23b2  STR  XY62:GPCChip  # chip 48
+        CCID58-1-02b2  STR  XY63:GPCChip  # chip 49
+        CCID58-1-07a1  STR  XY64:GPCChip  # chip 50
+        CCID58-2-17a2  STR  XY65:GPCChip  # chip 51
+        CCID58-2-14a1  STR  XY66:GPCChip  # chip 52
+        CCID58-2-16a2  STR  XY67:GPCChip  # chip 53
+        CCID58-2-04b2  STR  XY71:GPCChip  # chip 54
+        CCID58-1-14b1  STR  XY72:GPCChip  # chip 55
+        CCID58-1-25b1  STR  XY73:GPCChip  # chip 56
+        CCID58-1-18a1  STR  XY74:GPCChip  # chip 57
+        CCID58-2-16a1  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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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.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
+
+        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.VIDEOCELL  STR     CELLMODE
+        # XY24 is bad, so get it from the database; all others from header
+	CHIP.TEMP.DEPEND	STR	CHIP.NAME
+	CHIP.TEMP	METADATA
+		XY01	STR	DETTEM
+		XY02	STR	DETTEM
+		XY03	STR	DETTEM
+		XY04	STR	DETTEM
+		XY05	STR	DETTEM
+		XY06	STR	DETTEM
+		XY10	STR	DETTEM
+		XY11	STR	DETTEM
+		XY12	STR	DETTEM
+		XY13	STR	DETTEM
+		XY14	STR	DETTEM
+		XY15	STR	DETTEM
+		XY16	STR	DETTEM
+		XY17	STR	DETTEM
+		XY20	STR	DETTEM
+		XY21	STR	DETTEM
+		XY22	STR	DETTEM
+		XY23	STR	DETTEM
+		###XY24	STR	DETTEM	# This is currently bad --- get it from the database
+		XY25	STR	DETTEM
+		XY26	STR	DETTEM
+		XY27	STR	DETTEM
+		XY30	STR	DETTEM
+		XY31	STR	DETTEM
+		XY32	STR	DETTEM
+		XY33	STR	DETTEM
+		XY34	STR	DETTEM
+		XY35	STR	DETTEM
+		XY36	STR	DETTEM
+		XY37	STR	DETTEM
+		XY40	STR	DETTEM
+		XY41	STR	DETTEM
+		XY42	STR	DETTEM
+		XY43	STR	DETTEM
+		XY44	STR	DETTEM
+		XY45	STR	DETTEM
+		XY46	STR	DETTEM
+		XY47	STR	DETTEM
+		XY50	STR	DETTEM
+		XY51	STR	DETTEM
+		XY52	STR	DETTEM
+		XY53	STR	DETTEM
+		XY54	STR	DETTEM
+		XY55	STR	DETTEM
+		XY56	STR	DETTEM
+		XY57	STR	DETTEM
+		XY60	STR	DETTEM
+		XY61	STR	DETTEM
+		XY62	STR	DETTEM
+		XY63	STR	DETTEM
+		XY64	STR	DETTEM
+		XY65	STR	DETTEM
+		XY66	STR	DETTEM
+		XY67	STR	DETTEM
+		XY71	STR	DETTEM
+		XY72	STR	DETTEM
+		XY73	STR	DETTEM
+		XY74	STR	DETTEM
+		XY75	STR	DETTEM
+		XY76	STR	DETTEM
+	END
+
+        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
+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     TAI
+	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
+          XY34  S32     19884
+          XY35  S32     19884
+          XY36  S32     19884
+          XY37  S32     19884
+          XY40  S32     20041
+          XY41  S32     20041
+          XY42  S32     20041
+          XY43  S32     20041
+          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
+          XY35  S32     30858
+          XY36  S32     36001
+          XY37  S32     41144
+          XY40  S32     306
+          XY41  S32     5449
+          XY42  S32     10592
+          XY43  S32     15735
+          XY44  S32     20878
+          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.GAIN       F32     1.0
+        CELL.READNOISE  F32     15.0
+        CELL.READDIR    S32     1
+        CELL.BAD        S32     0
+	CELL.XSIZE	S32	590
+	CELL.YSIZE	S32	598
+        CELL.SATURATION F32     30000.0
+        CELL.TIMESYS    STR     TAI
+END
+
+# How to translation PS concepts into database lookups
+DATABASE        METADATA
+	CHIP.TEMP.DEPEND	STR	CHIP.NAME
+	CHIP.TEMP		METADATA
+		# XY24	STR	SELECT AVG(ccd_temp) FROM rawImfile WHERE dateobs = '{FPA.TIME}' AND class_id != 'XY24'
+		XY24	STR	SELECT AVG(ccd_temp) FROM rawImfile WHERE dateobs - INTERVAL 1 MONTH = '{FPA.TIME}' AND class_id != 'XY24'
+	END
+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
+END
+
+# PATTERN.CELL        BOOL    FALSE
+# we want pattern row correction for all cell for all chips for all data < 2009-12-09                            
+# 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    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY02    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY03    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY04    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY05    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY06    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY10    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY11    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY12    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY13    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY14    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY15    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY16    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY17    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY20    STR     1111111111111111111111111111111111111111111111111111111111111111 
+        XY21    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY22    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY23    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY24    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY25    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY26    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY27    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY30    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY31    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY32    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY33    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY34    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY35    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY36    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY37    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY40    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY41    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY42    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY43    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY44    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY45    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY46    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY47    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY50    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY51    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY52    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY53    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY54    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY55    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY56    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY57    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY60    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY61    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY62    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY63    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY64    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY65    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY66    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY67    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY71    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY72    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY73    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY74    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY75    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY76    STR     1111111111111111111111111111111111111111111111111111111111111111
+END
+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    BOOL 	FALSE
+        XY10    BOOL 	FALSE
+        XY11    BOOL 	FALSE
+ 	XY12    BOOL 	FALSE
+        XY13    BOOL 	FALSE
+        XY14    BOOL 	FALSE
+        XY15    BOOL 	FALSE
+        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    BOOL 	FALSE
+        XY30    BOOL 	FALSE
+        XY31    BOOL 	FALSE
+        XY32    BOOL 	FALSE
+        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    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    BOOL 	FALSE
+        XY63    BOOL 	FALSE
+        XY64    BOOL 	FALSE
+        XY65    BOOL 	FALSE
+        XY66    BOOL 	FALSE
+        XY67    BOOL 	FALSE
+        XY71    BOOL 	FALSE
+        XY72    BOOL 	FALSE
+        XY73    BOOL 	FALSE
+        XY74    BOOL 	FALSE
+        XY75    BOOL 	FALSE
+        XY76    BOOL 	FALSE
+END
+
Index: /branches/eam_branches/ippconfig.20240412/gpc1/format_20080929.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20080929.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20080929.config	(revision 42661)
@@ -0,0 +1,730 @@
+# Bug in shutter controller was fixed: dates no longer off by 1 month.
+# Saturation point is set low to attempt to encompass all detectors.
+# SHUTDAVR = 1.21 is 2008 Sept 29.
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS1
+        TELESCOP        STR     PS1
+	INSTRUME	STR	gpc1
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	54739.0  # OP: >=
+#	SHUTDAVR	F32	1.21 		# OP: >=
+
+#       The most accurate keyword for the time/date is SHUTOUTC, but
+#       until 2009/9/30, there was a bug which set the month off by 1.
+#       The prior formats use MJD-OBS for time/date, and this is set
+#       in the db.  SHUTDAVR is supposed to be the key to the new
+#       shutter driver, but there were earlier periods where the value
+#       was 1.21, so we are keying on the MJD of the change.  Also
+#       note that historically (early 2008), SHUTOUTC was not
+#       available, forcing MJD-OBS in those periods.
+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-1-13a1  STR  XY03:GPCChip  # chip 02
+        CCID58-1-09a1  STR  XY04:GPCChip  # chip 03
+        CCID58-2-16b1  STR  XY05:GPCChip  # chip 04
+        CCID58-2-09b1  STR  XY06:GPCChip  # chip 05
+        CCID58-2-22a1  STR  XY10:GPCChip  # chip 06
+        CCID58-2-13a2  STR  XY11:GPCChip  # chip 07
+        CCID58-1-17a2  STR  XY12:GPCChip  # chip 08
+        CCID58-1-14a2  STR  XY13:GPCChip  # chip 09
+        CCID58-1-09a2  STR  XY14:GPCChip  # chip 10
+        CCID58-2-13b1  STR  XY15:GPCChip  # chip 11
+        CCID58-1-09b1  STR  XY16:GPCChip  # chip 12
+        CCID58-2-10b2  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-1-04a2  STR  XY24:GPCChip  # chip 18
+        CCID58-1-01b1  STR  XY25:GPCChip  # chip 19
+        CCID58-2-07b2  STR  XY26:GPCChip  # chip 20
+        CCID58-1-18b1  STR  XY27:GPCChip  # chip 21
+        CCID58-1-12a1  STR  XY30:GPCChip  # chip 22
+        CCID58-2-01a1  STR  XY31:GPCChip  # chip 23
+        CCID58-2-01a2  STR  XY32:GPCChip  # chip 24
+        CCID58-1-02a2  STR  XY33:GPCChip  # chip 25
+        CCID58-2-04a1  STR  XY34:GPCChip  # chip 26
+        CCID58-1-01b2  STR  XY35:GPCChip  # chip 27
+        CCID58-1-02b1  STR  XY36:GPCChip  # chip 28
+        CCID58-2-16b2  STR  XY37:GPCChip  # chip 29
+        CCID58-2-18b2  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-1-05a2  STR  XY44:GPCChip  # chip 34
+        CCID58-1-21a2  STR  XY45:GPCChip  # chip 35
+        CCID58-2-07a2  STR  XY46:GPCChip  # chip 36
+        CCID58-1-21a1  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-2-09a1  STR  XY54:GPCChip  # chip 42
+        CCID58-2-12a2  STR  XY55:GPCChip  # chip 43
+        CCID58-1-10a2  STR  XY56:GPCChip  # chip 44
+        CCID58-2-12a1  STR  XY57:GPCChip  # chip 45
+        CCID58-2-22b2  STR  XY60:GPCChip  # chip 46
+        CCID58-1-03b1  STR  XY61:GPCChip  # chip 47
+        CCID58-2-23b2  STR  XY62:GPCChip  # chip 48
+        CCID58-1-02b2  STR  XY63:GPCChip  # chip 49
+        CCID58-1-07a1  STR  XY64:GPCChip  # chip 50
+        CCID58-2-17a2  STR  XY65:GPCChip  # chip 51
+        CCID58-2-14a1  STR  XY66:GPCChip  # chip 52
+        CCID58-2-16a2  STR  XY67:GPCChip  # chip 53
+        CCID58-2-04b2  STR  XY71:GPCChip  # chip 54
+        CCID58-1-14b1  STR  XY72:GPCChip  # chip 55
+        CCID58-1-25b1  STR  XY73:GPCChip  # chip 56
+        CCID58-1-18a1  STR  XY74:GPCChip  # chip 57
+        CCID58-2-16a1  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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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.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
+
+        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.VIDEOCELL  STR     CELLMODE
+        # XY24 is bad, so get it from the database; all others from header
+	CHIP.TEMP.DEPEND	STR	CHIP.NAME
+	CHIP.TEMP	METADATA
+		XY01	STR	DETTEM
+		XY02	STR	DETTEM
+		XY03	STR	DETTEM
+		XY04	STR	DETTEM
+		XY05	STR	DETTEM
+		XY06	STR	DETTEM
+		XY10	STR	DETTEM
+		XY11	STR	DETTEM
+		XY12	STR	DETTEM
+		XY13	STR	DETTEM
+		XY14	STR	DETTEM
+		XY15	STR	DETTEM
+		XY16	STR	DETTEM
+		XY17	STR	DETTEM
+		XY20	STR	DETTEM
+		XY21	STR	DETTEM
+		XY22	STR	DETTEM
+		XY23	STR	DETTEM
+		###XY24	STR	DETTEM	# This is currently bad --- get it from the database
+		XY25	STR	DETTEM
+		XY26	STR	DETTEM
+		XY27	STR	DETTEM
+		XY30	STR	DETTEM
+		XY31	STR	DETTEM
+		XY32	STR	DETTEM
+		XY33	STR	DETTEM
+		XY34	STR	DETTEM
+		XY35	STR	DETTEM
+		XY36	STR	DETTEM
+		XY37	STR	DETTEM
+		XY40	STR	DETTEM
+		XY41	STR	DETTEM
+		XY42	STR	DETTEM
+		XY43	STR	DETTEM
+		XY44	STR	DETTEM
+		XY45	STR	DETTEM
+		XY46	STR	DETTEM
+		XY47	STR	DETTEM
+		XY50	STR	DETTEM
+		XY51	STR	DETTEM
+		XY52	STR	DETTEM
+		XY53	STR	DETTEM
+		XY54	STR	DETTEM
+		XY55	STR	DETTEM
+		XY56	STR	DETTEM
+		XY57	STR	DETTEM
+		XY60	STR	DETTEM
+		XY61	STR	DETTEM
+		XY62	STR	DETTEM
+		XY63	STR	DETTEM
+		XY64	STR	DETTEM
+		XY65	STR	DETTEM
+		XY66	STR	DETTEM
+		XY67	STR	DETTEM
+		XY71	STR	DETTEM
+		XY72	STR	DETTEM
+		XY73	STR	DETTEM
+		XY74	STR	DETTEM
+		XY75	STR	DETTEM
+		XY76	STR	DETTEM
+	END
+
+        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
+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
+          XY34  S32     19884
+          XY35  S32     19884
+          XY36  S32     19884
+          XY37  S32     19884
+          XY40  S32     20041
+          XY41  S32     20041
+          XY42  S32     20041
+          XY43  S32     20041
+          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
+          XY35  S32     30858
+          XY36  S32     36001
+          XY37  S32     41144
+          XY40  S32     306
+          XY41  S32     5449
+          XY42  S32     10592
+          XY43  S32     15735
+          XY44  S32     20878
+          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.GAIN       F32     1.0
+        CELL.READNOISE  F32     15.0
+        CELL.READDIR    S32     1
+        CELL.BAD        S32     0
+	CELL.XSIZE	S32	590
+	CELL.YSIZE	S32	598
+        CELL.SATURATION F32     30000.0
+        CELL.TIMESYS    STR     UTC
+END
+
+# How to translation PS concepts into database lookups
+DATABASE        METADATA
+	CHIP.TEMP.DEPEND	STR	CHIP.NAME
+	CHIP.TEMP		METADATA
+		XY24	STR	SELECT AVG(ccd_temp) FROM rawImfile WHERE dateobs = '{FPA.TIME}' AND class_id != 'XY24'
+	END
+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
+END
+ 
+# Pattern correction information:                                                                                
+# PATTERN.CELL         BOOL    FALSE
+# we want pattern row correction for all cell for all chips for all data < 2009-12-09  
+
+# 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    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY02    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY03    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY04    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY05    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY06    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY10    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY11    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY12    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY13    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY14    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY15    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY16    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY17    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY20    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY21    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY22    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY23    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY24    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY25    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY26    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY27    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY30    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY31    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY32    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY33    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY34    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY35    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY36    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY37    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY40    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY41    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY42    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY43    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY44    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY45    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY46    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY47    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY50    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY51    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY52    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY53    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY54    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY55    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY56    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY57    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY60    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY61    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY62    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY63    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY64    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY65    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY66    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY67    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY71    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY72    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY73    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY74    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY75    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY76    STR     1111111111111111111111111111111111111111111111111111111111111111
+END
+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    BOOL 	FALSE
+        XY10    BOOL 	FALSE
+        XY11    BOOL 	FALSE
+ 	XY12    BOOL 	FALSE
+        XY13    BOOL 	FALSE
+        XY14    BOOL 	FALSE
+        XY15    BOOL 	FALSE
+        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    BOOL 	FALSE
+        XY30    BOOL 	FALSE
+        XY31    BOOL 	FALSE
+        XY32    BOOL 	FALSE
+        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    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    BOOL 	FALSE
+        XY63    BOOL 	FALSE
+        XY64    BOOL 	FALSE
+        XY65    BOOL 	FALSE
+        XY66    BOOL 	FALSE
+        XY67    BOOL 	FALSE
+        XY71    BOOL 	FALSE
+        XY72    BOOL 	FALSE
+        XY73    BOOL 	FALSE
+        XY74    BOOL 	FALSE
+        XY75    BOOL 	FALSE
+        XY76    BOOL 	FALSE
+END
+
Index: /branches/eam_branches/ippconfig.20240412/gpc1/format_20081011.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20081011.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20081011.config	(revision 42661)
@@ -0,0 +1,719 @@
+# Gain, readnoise and saturation are now specified in the headers.
+# Note that the readnoise is in ADU instead of electrons.
+# Change effective from Sidik's e-mail, sent Sat, 11 Oct 2008 15:12:44 HST
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS1
+        TELESCOP        STR     PS1
+	INSTRUME	STR	gpc1
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	54751.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-1-13a1  STR  XY03:GPCChip  # chip 02
+        CCID58-1-09a1  STR  XY04:GPCChip  # chip 03
+        CCID58-2-16b1  STR  XY05:GPCChip  # chip 04
+        CCID58-2-09b1  STR  XY06:GPCChip  # chip 05
+        CCID58-2-22a1  STR  XY10:GPCChip  # chip 06
+        CCID58-2-13a2  STR  XY11:GPCChip  # chip 07
+        CCID58-1-17a2  STR  XY12:GPCChip  # chip 08
+        CCID58-1-14a2  STR  XY13:GPCChip  # chip 09
+        CCID58-1-09a2  STR  XY14:GPCChip  # chip 10
+        CCID58-2-13b1  STR  XY15:GPCChip  # chip 11
+        CCID58-1-09b1  STR  XY16:GPCChip  # chip 12
+        CCID58-2-10b2  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-1-04a2  STR  XY24:GPCChip  # chip 18
+        CCID58-1-01b1  STR  XY25:GPCChip  # chip 19
+        CCID58-2-07b2  STR  XY26:GPCChip  # chip 20
+        CCID58-1-18b1  STR  XY27:GPCChip  # chip 21
+        CCID58-1-12a1  STR  XY30:GPCChip  # chip 22
+        CCID58-2-01a1  STR  XY31:GPCChip  # chip 23
+        CCID58-2-01a2  STR  XY32:GPCChip  # chip 24
+        CCID58-1-02a2  STR  XY33:GPCChip  # chip 25
+        CCID58-2-04a1  STR  XY34:GPCChip  # chip 26
+        CCID58-1-01b2  STR  XY35:GPCChip  # chip 27
+        CCID58-1-02b1  STR  XY36:GPCChip  # chip 28
+        CCID58-2-16b2  STR  XY37:GPCChip  # chip 29
+        CCID58-2-18b2  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-1-05a2  STR  XY44:GPCChip  # chip 34
+        CCID58-1-21a2  STR  XY45:GPCChip  # chip 35
+        CCID58-2-07a2  STR  XY46:GPCChip  # chip 36
+        CCID58-1-21a1  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-2-09a1  STR  XY54:GPCChip  # chip 42
+        CCID58-2-12a2  STR  XY55:GPCChip  # chip 43
+        CCID58-1-10a2  STR  XY56:GPCChip  # chip 44
+        CCID58-2-12a1  STR  XY57:GPCChip  # chip 45
+        CCID58-2-22b2  STR  XY60:GPCChip  # chip 46
+        CCID58-1-03b1  STR  XY61:GPCChip  # chip 47
+        CCID58-2-23b2  STR  XY62:GPCChip  # chip 48
+        CCID58-1-02b2  STR  XY63:GPCChip  # chip 49
+        CCID58-1-07a1  STR  XY64:GPCChip  # chip 50
+        CCID58-2-17a2  STR  XY65:GPCChip  # chip 51
+        CCID58-2-14a1  STR  XY66:GPCChip  # chip 52
+        CCID58-2-16a2  STR  XY67:GPCChip  # chip 53
+        CCID58-2-04b2  STR  XY71:GPCChip  # chip 54
+        CCID58-1-14b1  STR  XY72:GPCChip  # chip 55
+        CCID58-1-25b1  STR  XY73:GPCChip  # chip 56
+        CCID58-1-18a1  STR  XY74:GPCChip  # chip 57
+        CCID58-2-16a1  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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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
+
+        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.VIDEOCELL  STR     CELLMODE
+        # XY24 is bad, so get it from the database; all others from header
+	CHIP.TEMP.DEPEND	STR	CHIP.NAME
+	CHIP.TEMP	METADATA
+		XY01	STR	DETTEM
+		XY02	STR	DETTEM
+		XY03	STR	DETTEM
+		XY04	STR	DETTEM
+		XY05	STR	DETTEM
+		XY06	STR	DETTEM
+		XY10	STR	DETTEM
+		XY11	STR	DETTEM
+		XY12	STR	DETTEM
+		XY13	STR	DETTEM
+		XY14	STR	DETTEM
+		XY15	STR	DETTEM
+		XY16	STR	DETTEM
+		XY17	STR	DETTEM
+		XY20	STR	DETTEM
+		XY21	STR	DETTEM
+		XY22	STR	DETTEM
+		XY23	STR	DETTEM
+		###XY24	STR	DETTEM	# This is currently bad --- get it from the database
+		XY25	STR	DETTEM
+		XY26	STR	DETTEM
+		XY27	STR	DETTEM
+		XY30	STR	DETTEM
+		XY31	STR	DETTEM
+		XY32	STR	DETTEM
+		XY33	STR	DETTEM
+		XY34	STR	DETTEM
+		XY35	STR	DETTEM
+		XY36	STR	DETTEM
+		XY37	STR	DETTEM
+		XY40	STR	DETTEM
+		XY41	STR	DETTEM
+		XY42	STR	DETTEM
+		XY43	STR	DETTEM
+		XY44	STR	DETTEM
+		XY45	STR	DETTEM
+		XY46	STR	DETTEM
+		XY47	STR	DETTEM
+		XY50	STR	DETTEM
+		XY51	STR	DETTEM
+		XY52	STR	DETTEM
+		XY53	STR	DETTEM
+		XY54	STR	DETTEM
+		XY55	STR	DETTEM
+		XY56	STR	DETTEM
+		XY57	STR	DETTEM
+		XY60	STR	DETTEM
+		XY61	STR	DETTEM
+		XY62	STR	DETTEM
+		XY63	STR	DETTEM
+		XY64	STR	DETTEM
+		XY65	STR	DETTEM
+		XY66	STR	DETTEM
+		XY67	STR	DETTEM
+		XY71	STR	DETTEM
+		XY72	STR	DETTEM
+		XY73	STR	DETTEM
+		XY74	STR	DETTEM
+		XY75	STR	DETTEM
+		XY76	STR	DETTEM
+	END
+
+        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
+          XY34  S32     19884
+          XY35  S32     19884
+          XY36  S32     19884
+          XY37  S32     19884
+          XY40  S32     20041
+          XY41  S32     20041
+          XY42  S32     20041
+          XY43  S32     20041
+          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
+          XY35  S32     30858
+          XY36  S32     36001
+          XY37  S32     41144
+          XY40  S32     306
+          XY41  S32     5449
+          XY42  S32     10592
+          XY43  S32     15735
+          XY44  S32     20878
+          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
+	CHIP.TEMP.DEPEND	STR	CHIP.NAME
+	CHIP.TEMP		METADATA
+		XY24	STR	SELECT AVG(ccd_temp) FROM rawImfile WHERE dateobs = '{FPA.TIME}' AND class_id != 'XY24'
+	END
+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.CELL         BOOL    FALSE
+# we want pattern row correction for all cell for all chips for all data < 2009-12-09
+# 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    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY02    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY03    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY04    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY05    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY06    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY10    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY11    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY12    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY13    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY14    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY15    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY16    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY17    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY20    STR     1111111111111111111111111111111111111111111111111111111111111111 
+        XY21    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY22    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY23    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY24    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY25    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY26    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY27    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY30    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY31    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY32    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY33    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY34    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY35    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY36    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY37    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY40    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY41    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY42    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY43    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY44    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY45    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY46    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY47    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY50    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY51    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY52    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY53    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY54    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY55    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY56    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY57    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY60    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY61    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY62    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY63    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY64    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY65    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY66    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY67    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY71    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY72    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY73    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY74    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY75    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY76    STR     1111111111111111111111111111111111111111111111111111111111111111
+END
+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    BOOL 	FALSE
+        XY10    BOOL 	FALSE
+        XY11    BOOL 	FALSE
+ 	XY12    BOOL 	FALSE
+        XY13    BOOL 	FALSE
+        XY14    BOOL 	FALSE
+        XY15    BOOL 	FALSE
+        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    BOOL 	FALSE
+        XY30    BOOL 	FALSE
+        XY31    BOOL 	FALSE
+        XY32    BOOL 	FALSE
+        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    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    BOOL 	FALSE
+        XY63    BOOL 	FALSE
+        XY64    BOOL 	FALSE
+        XY65    BOOL 	FALSE
+        XY66    BOOL 	FALSE
+        XY67    BOOL 	FALSE
+        XY71    BOOL 	FALSE
+        XY72    BOOL 	FALSE
+        XY73    BOOL 	FALSE
+        XY74    BOOL 	FALSE
+        XY75    BOOL 	FALSE
+        XY76    BOOL 	FALSE
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc1/format_20090120.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20090120.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20090120.config	(revision 42661)
@@ -0,0 +1,651 @@
+# Refurbished GPC1
+# Change effective from January 2009 Camera refurbishment
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS1
+        TELESCOP        STR     PS1
+	INSTRUME	STR	gpc1
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	54852.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-1-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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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	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
+          XY34  S32     19884
+          XY35  S32     19884
+          XY36  S32     19884
+          XY37  S32     19884
+          XY40  S32     20041
+          XY41  S32     20041
+          XY42  S32     20041
+          XY43  S32     20041
+          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
+          XY35  S32     30858
+          XY36  S32     36001
+          XY37  S32     41144
+          XY40  S32     306
+          XY41  S32     5449
+          XY42  S32     10592
+          XY43  S32     15735
+          XY44  S32     20878
+          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.CELL         BOOL    FALSE
+# we want pattern row correction for all cell for all chips for all data < 2009-12-09                            
+# 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    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY02    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY03    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY04    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY05    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY06    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY10    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY11    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY12    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY13    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY14    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY15    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY16    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY17    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY20    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY21    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY22    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY23    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY24    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY25    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY26    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY27    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY30    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY31    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY32    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY33    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY34    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY35    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY36    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY37    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY40    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY41    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY42    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY43    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY44    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY45    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY46    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY47    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY50    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY51    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY52    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY53    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY54    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY55    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY56    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY57    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY60    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY61    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY62    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY63    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY64    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY65    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY66    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY67    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY71    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY72    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY73    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY74    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY75    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY76    STR     1111111111111111111111111111111111111111111111111111111111111111
+END
+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    BOOL 	FALSE
+        XY10    BOOL 	FALSE
+        XY11    BOOL 	FALSE
+ 	XY12    BOOL 	FALSE
+        XY13    BOOL 	FALSE
+        XY14    BOOL 	FALSE
+        XY15    BOOL 	FALSE
+        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    BOOL 	FALSE
+        XY30    BOOL 	FALSE
+        XY31    BOOL 	FALSE
+        XY32    BOOL 	FALSE
+        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    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    BOOL 	FALSE
+        XY63    BOOL 	FALSE
+        XY64    BOOL 	FALSE
+        XY65    BOOL 	FALSE
+        XY66    BOOL 	FALSE
+        XY67    BOOL 	FALSE
+        XY71    BOOL 	FALSE
+        XY72    BOOL 	FALSE
+        XY73    BOOL 	FALSE
+        XY74    BOOL 	FALSE
+        XY75    BOOL 	FALSE
+        XY76    BOOL 	FALSE
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc1/format_20090220.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20090220.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20090220.config	(revision 42661)
@@ -0,0 +1,656 @@
+# Refurbished GPC1
+# Change effective from 20 February 2009 fix for XY03 chip name
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS1
+        TELESCOP        STR     PS1
+	INSTRUME	STR	gpc1
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	54883.00559		# 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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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	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.CELL	     BOOL    FALSE
+# we want pattern row correction for all cell for all chips for all data < 2009-12-09
+# 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    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY02    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY03    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY04    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY05    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY06    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY10    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY11    STR     1111111111111111111111111111111111111111111111111111111111111111
+ 	XY12    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY13    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY14    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY15    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY16    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY17    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY20    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY21    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY22    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY23    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY24    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY25    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY26    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY27    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY30    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY31    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY32    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY33    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY34    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY35    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY36    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY37    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY40    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY41    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY42    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY43    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY44    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY45    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY46    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY47    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY50    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY51    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY52    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY53    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY54    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY55    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY56    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY57    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY60    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY61    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY62    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY63    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY64    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY65    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY66    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY67    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY71    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY72    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY73    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY74    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY75    STR     1111111111111111111111111111111111111111111111111111111111111111
+        XY76    STR     1111111111111111111111111111111111111111111111111111111111111111
+END
+PATTERN.CELL    BOOL    FALSE
+PATTERN.CONTINUITY BOOL TRUE
+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    BOOL 	FALSE
+        XY10    BOOL 	FALSE
+        XY11    BOOL 	FALSE
+ 	XY12    BOOL 	FALSE
+        XY13    BOOL 	FALSE
+        XY14    BOOL 	FALSE
+        XY15    BOOL 	FALSE
+        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    BOOL 	FALSE
+        XY30    BOOL 	FALSE
+        XY31    BOOL 	FALSE
+        XY32    BOOL 	FALSE
+        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    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    BOOL 	FALSE
+        XY63    BOOL 	FALSE
+        XY64    BOOL 	FALSE
+        XY65    BOOL 	FALSE
+        XY66    BOOL 	FALSE
+        XY67    BOOL 	FALSE
+        XY71    BOOL 	FALSE
+        XY72    BOOL 	FALSE
+        XY73    BOOL 	FALSE
+        XY74    BOOL 	FALSE
+        XY75    BOOL 	FALSE
+        XY76    BOOL 	FALSE
+END
+
Index: /branches/eam_branches/ippconfig.20240412/gpc1/format_20091209.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20091209.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20091209.config	(revision 42661)
@@ -0,0 +1,798 @@
+# Refurbished GPC1
+# Change effective from 12-09-2009
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS1
+        TELESCOP        STR     PS1
+	INSTRUME	STR	gpc1
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	55175.00559		# 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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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	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.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
+# 	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
+# 	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.CELL	BOOL 	TRUE		# 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     1101000000010000000110100100000000000000000000000000000000000000
+# 	XY10	BOOL	FALSE
+# 	XY11	BOOL	FALSE
+# 	XY12	BOOL	FALSE
+# 	XY13	BOOL	FALSE
+# 	XY14	STR     0000000000000000111111110000000000000000000000010000000000101101
+# 	XY15	STR     0011111100011000000001000000010000001001000111110001010000011111
+# 	XY16	STR     0000000100000000000000000000000000000001000000000000000000000000
+# 	XY17	BOOL	FALSE
+# 	XY20	BOOL	FALSE
+# 	XY21	BOOL	FALSE
+# 	XY22	BOOL	FALSE
+# 	XY23	BOOL	FALSE
+# 	XY24	STR     0000000000100000000000000110100000100000001000000011100000000000
+# 	XY25	STR     0100010000001001001011000000001000000111000110000000100000000010
+# 	XY26	STR     0000000000000100000000000000000000001000001000000000000000000000
+# 	XY27	BOOL	FALSE
+# 	XY30	BOOL	FALSE
+# 	XY31	BOOL	FALSE
+# 	XY32	BOOL	FALSE
+# 	XY33	BOOL	FALSE
+# 	XY34	STR     0000000000000000000000000000000000000001000011000000101000111111
+# 	XY35	BOOL	FALSE
+# 	XY36	STR     0000000000000000000000000000000000010000000000000000000000000000
+# 	XY37	STR     0000000000000000000000000000000100010001000000001011000010110110
+# 	XY40	STR     0000000000000000000000000010110000000000000001110000001000011111
+# 	XY41	BOOL	FALSE
+# 	XY42	BOOL	FALSE
+# 	XY43	STR     0000000000000000000000010000000100000000000010000100000100000100
+# 	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     0000000000000000000000000000000000001000000000000000000100001010
+# 	XY63	BOOL	FALSE
+# 	XY64	BOOL	FALSE
+# 	XY65	BOOL	FALSE
+# 	XY66	BOOL	FALSE
+# 	XY67	BOOL	FALSE
+# 	XY71	BOOL	FALSE
+# 	XY72	STR     0000000000000000000000000000000000000000000000000000000000000001
+# 	XY73	STR     0001100000000000000000000000001000000000000000000000000000000000
+# 	XY74	BOOL	FALSE
+# 	XY75	BOOL	FALSE
+# 	XY76	BOOL	FALSE
+# END
+# 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.CELL    BOOL   FALSE
+PATTERN.CONTINUITY BOOL TRUE
+
+# # PATTERN.CELL	BOOL 	TRUE		# 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/eam_branches/ippconfig.20240412/gpc1/format_20100122.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20100122.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20100122.config	(revision 42661)
@@ -0,0 +1,682 @@
+# 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     64
+	MJD-OBS		F64	55219.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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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:
+
+# NOTE: PATTERN.ROW.SUBSET is defined in the format_DATE.config files because
+# in different periods, the camera had different amounts of row-by-row bias drift
+# for a given cell.  It is necessary to make the choice of whether to correct the 
+# pattern based on the epoch the exposure was taken.
+
+# NOTE: if PATTERN.ROW.SUBSET entries are missing for a given chip, the default 
+# behavior is to NOT correct for the effect. (This makes sense since most camera
+# are not GPC1 and thus do not need the correction).
+
+# 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	TRUE
+ 	XY02	BOOL    TRUE
+	XY02	BOOL	TRUE
+	XY03	BOOL	TRUE
+	XY04	BOOL	TRUE
+	XY05	BOOL	TRUE
+	XY06	BOOL	TRUE
+	XY10	BOOL	TRUE
+	XY11	BOOL	TRUE
+	XY12	BOOL	TRUE
+	XY13	BOOL	TRUE
+	XY14	BOOL    TRUE 
+	XY15	BOOL    TRUE 
+	XY16	BOOL	TRUE
+	XY17	BOOL	TRUE
+	XY20	BOOL	TRUE
+	XY21	BOOL	TRUE
+	XY22	BOOL	TRUE
+	XY23	BOOL	TRUE
+	XY24	BOOL	TRUE
+	XY25	BOOL	TRUE
+	XY26	BOOL	TRUE
+	XY27	BOOL    TRUE 
+	XY30	BOOL	TRUE
+	XY31	BOOL    TRUE 
+	XY32	BOOL    TRUE 
+	XY33	BOOL	TRUE
+	XY34	BOOL	TRUE
+	XY35	BOOL	TRUE
+	XY36	BOOL	TRUE
+	XY37	BOOL	TRUE
+	XY40	BOOL	TRUE
+	XY41	BOOL	TRUE
+	XY42	BOOL	TRUE
+	XY43	BOOL	TRUE
+	XY44	BOOL	TRUE
+	XY45	BOOL    TRUE 
+	XY46	BOOL	TRUE
+	XY47	BOOL    TRUE
+	XY50	BOOL	TRUE
+	XY51	BOOL	TRUE
+	XY52	BOOL	TRUE
+	XY53	BOOL	TRUE
+	XY54	BOOL	TRUE
+	XY55	BOOL	TRUE
+	XY56	BOOL	TRUE
+	XY57	BOOL    TRUE 
+	XY60	BOOL	TRUE
+	XY61	BOOL	TRUE
+	XY62	BOOL	TRUE
+	XY63	BOOL	TRUE
+	XY64	BOOL	TRUE
+	XY65	BOOL	TRUE
+	XY66	BOOL	TRUE
+	XY67	BOOL	TRUE
+	XY71	BOOL	TRUE
+	XY72	BOOL	TRUE
+	XY73	BOOL	TRUE
+	XY74	BOOL	TRUE
+	XY75	BOOL	TRUE
+	XY76	BOOL	TRUE
+END
+
+PATTERN.CELL BOOL FALSE
+PATTERN.CONTINUITY BOOL TRUE
+
+# # PATTERN.CELL	BOOL 	TRUE		# 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/eam_branches/ippconfig.20240412/gpc1/format_20100228.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20100228.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20100228.config	(revision 42661)
@@ -0,0 +1,681 @@
+# 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     64
+	MJD-OBS		F64	55219.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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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:
+
+# NOTE: PATTERN.ROW.SUBSET is defined in the format_DATE.config files because
+# in different periods, the camera had different amounts of row-by-row bias drift
+# for a given cell.  It is necessary to make the choice of whether to correct the 
+# pattern based on the epoch the exposure was taken.
+
+# NOTE: if PATTERN.ROW.SUBSET entries are missing for a given chip, the default 
+# behavior is to NOT correct for the effect. (This makes sense since most camera
+# are not GPC1 and thus do not need the correction).
+
+# 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	TRUE
+ 	XY02	BOOL    TRUE
+	XY02	BOOL	TRUE
+	XY03	BOOL	TRUE
+	XY04	BOOL	TRUE
+	XY05	BOOL	TRUE
+	XY06	BOOL	TRUE
+	XY10	BOOL	TRUE
+	XY11	BOOL	TRUE
+	XY12	BOOL	TRUE
+	XY13	BOOL	TRUE
+	XY14	BOOL    TRUE 
+	XY15	BOOL    TRUE 
+	XY16	BOOL	TRUE
+	XY17	BOOL	TRUE
+	XY20	BOOL	TRUE
+	XY21	BOOL	TRUE
+	XY22	BOOL	TRUE
+	XY23	BOOL	TRUE
+	XY24	BOOL	TRUE
+	XY25	BOOL	TRUE
+	XY26	BOOL	TRUE
+	XY27	BOOL    TRUE 
+	XY30	BOOL	TRUE
+	XY31	BOOL    TRUE 
+	XY32	BOOL    TRUE 
+	XY33	BOOL	TRUE
+	XY34	BOOL	TRUE
+	XY35	BOOL	TRUE
+	XY36	BOOL	TRUE
+	XY37	BOOL	TRUE
+	XY40	BOOL	TRUE
+	XY41	BOOL	TRUE
+	XY42	BOOL	TRUE
+	XY43	BOOL	TRUE
+	XY44	BOOL	TRUE
+	XY45	BOOL    TRUE 
+	XY46	BOOL	TRUE
+	XY47	BOOL    TRUE
+	XY50	BOOL	TRUE
+	XY51	BOOL	TRUE
+	XY52	BOOL	TRUE
+	XY53	BOOL	TRUE
+	XY54	BOOL	TRUE
+	XY55	BOOL	TRUE
+	XY56	BOOL	TRUE
+	XY57	BOOL    TRUE 
+	XY60	BOOL	TRUE
+	XY61	BOOL	TRUE
+	XY62	BOOL	TRUE
+	XY63	BOOL	TRUE
+	XY64	BOOL	TRUE
+	XY65	BOOL	TRUE
+	XY66	BOOL	TRUE
+	XY67	BOOL	TRUE
+	XY71	BOOL	TRUE
+	XY72	BOOL	TRUE
+	XY73	BOOL	TRUE
+	XY74	BOOL	TRUE
+	XY75	BOOL	TRUE
+	XY76	BOOL	TRUE
+END
+
+PATTERN.CELL BOOL FALSE
+PATTERN.CONTINUITY BOOL TRUE
+
+# PATTERN.CELL	BOOL 	TRUE		# 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/eam_branches/ippconfig.20240412/gpc1/format_20100723.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20100723.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20100723.config	(revision 42661)
@@ -0,0 +1,684 @@
+# 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     64
+	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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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.SHUTOUTC	STR	SHUTOUTC
+        FPA.SHUTCUTC    STR     SHUTCUTC
+
+        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
+# NOTE: CHIP.X0 = ($ix < 4) ? (4971 * ($ix + 1)) : ($ix * 4971 + 157)
+# NOTE: CHIP.Y0 = (5143 * $iy)
+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:
+
+# NOTE: PATTERN.ROW.SUBSET is defined in the format_DATE.config files because
+# in different periods, the camera had different amounts of row-by-row bias drift
+# for a given cell.  It is necessary to make the choice of whether to correct the 
+# pattern based on the epoch the exposure was taken.
+
+# NOTE: if PATTERN.ROW.SUBSET entries are missing for a given chip, the default 
+# behavior is to NOT correct for the effect. (This makes sense since most camera
+# are not GPC1 and thus do not need the correction).
+
+# 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	TRUE
+ 	XY02	BOOL    TRUE
+	XY02	BOOL	TRUE
+	XY03	BOOL	TRUE
+	XY04	BOOL	TRUE
+	XY05	BOOL	TRUE
+	XY06	BOOL	TRUE
+	XY10	BOOL	TRUE
+	XY11	BOOL	TRUE
+	XY12	BOOL	TRUE
+	XY13	BOOL	TRUE
+	XY14	BOOL    TRUE 
+	XY15	BOOL    TRUE 
+	XY16	BOOL	TRUE
+	XY17	BOOL	TRUE
+	XY20	BOOL	TRUE
+	XY21	BOOL	TRUE
+	XY22	BOOL	TRUE
+	XY23	BOOL	TRUE
+	XY24	BOOL	TRUE
+	XY25	BOOL	TRUE
+	XY26	BOOL	TRUE
+	XY27	BOOL    TRUE 
+	XY30	BOOL	TRUE
+	XY31	BOOL    TRUE 
+	XY32	BOOL    TRUE 
+	XY33	BOOL	TRUE
+	XY34	BOOL	TRUE
+	XY35	BOOL	TRUE
+	XY36	BOOL	TRUE
+	XY37	BOOL	TRUE
+	XY40	BOOL	TRUE
+	XY41	BOOL	TRUE
+	XY42	BOOL	TRUE
+	XY43	BOOL	TRUE
+	XY44	BOOL	TRUE
+	XY45	BOOL    TRUE 
+	XY46	BOOL	TRUE
+	XY47	BOOL    TRUE
+	XY50	BOOL	TRUE
+	XY51	BOOL	TRUE
+	XY52	BOOL	TRUE
+	XY53	BOOL	TRUE
+	XY54	BOOL	TRUE
+	XY55	BOOL	TRUE
+	XY56	BOOL	TRUE
+	XY57	BOOL    TRUE 
+	XY60	BOOL	TRUE
+	XY61	BOOL	TRUE
+	XY62	BOOL	TRUE
+	XY63	BOOL	TRUE
+	XY64	BOOL	TRUE
+	XY65	BOOL	TRUE
+	XY66	BOOL	TRUE
+	XY67	BOOL	TRUE
+	XY71	BOOL	TRUE
+	XY72	BOOL	TRUE
+	XY73	BOOL	TRUE
+	XY74	BOOL	TRUE
+	XY75	BOOL	TRUE
+	XY76	BOOL	TRUE
+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/eam_branches/ippconfig.20240412/gpc1/format_20220827.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_20220827.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_20220827.config	(revision 42661)
@@ -0,0 +1,686 @@
+# 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     64
+	MJD-OBS		F64	59818.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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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     SHMDOUTC 
+        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.SHUTOUTC	STR	SHUTOUTC
+        FPA.SHUTCUTC    STR     SHUTCUTC
+        FPA.SHMDOUTC    STR     SHMDOUTC
+        FPA.SHMDCUTC    STR     SHMDCUTC
+
+        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     SHMDOUTC	# 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
+# NOTE: CHIP.X0 = ($ix < 4) ? (4971 * ($ix + 1)) : ($ix * 4971 + 157)
+# NOTE: CHIP.Y0 = (5143 * $iy)
+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:
+
+# NOTE: PATTERN.ROW.SUBSET is defined in the format_DATE.config files because
+# in different periods, the camera had different amounts of row-by-row bias drift
+# for a given cell.  It is necessary to make the choice of whether to correct the 
+# pattern based on the epoch the exposure was taken.
+
+# NOTE: if PATTERN.ROW.SUBSET entries are missing for a given chip, the default 
+# behavior is to NOT correct for the effect. (This makes sense since most camera
+# are not GPC1 and thus do not need the correction).
+
+# 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	TRUE
+ 	XY02	BOOL    TRUE
+	XY02	BOOL	TRUE
+	XY03	BOOL	TRUE
+	XY04	BOOL	TRUE
+	XY05	BOOL	TRUE
+	XY06	BOOL	TRUE
+	XY10	BOOL	TRUE
+	XY11	BOOL	TRUE
+	XY12	BOOL	TRUE
+	XY13	BOOL	TRUE
+	XY14	BOOL    TRUE 
+	XY15	BOOL    TRUE 
+	XY16	BOOL	TRUE
+	XY17	BOOL	TRUE
+	XY20	BOOL	TRUE
+	XY21	BOOL	TRUE
+	XY22	BOOL	TRUE
+	XY23	BOOL	TRUE
+	XY24	BOOL	TRUE
+	XY25	BOOL	TRUE
+	XY26	BOOL	TRUE
+	XY27	BOOL    TRUE 
+	XY30	BOOL	TRUE
+	XY31	BOOL    TRUE 
+	XY32	BOOL    TRUE 
+	XY33	BOOL	TRUE
+	XY34	BOOL	TRUE
+	XY35	BOOL	TRUE
+	XY36	BOOL	TRUE
+	XY37	BOOL	TRUE
+	XY40	BOOL	TRUE
+	XY41	BOOL	TRUE
+	XY42	BOOL	TRUE
+	XY43	BOOL	TRUE
+	XY44	BOOL	TRUE
+	XY45	BOOL    TRUE 
+	XY46	BOOL	TRUE
+	XY47	BOOL    TRUE
+	XY50	BOOL	TRUE
+	XY51	BOOL	TRUE
+	XY52	BOOL	TRUE
+	XY53	BOOL	TRUE
+	XY54	BOOL	TRUE
+	XY55	BOOL	TRUE
+	XY56	BOOL	TRUE
+	XY57	BOOL    TRUE 
+	XY60	BOOL	TRUE
+	XY61	BOOL	TRUE
+	XY62	BOOL	TRUE
+	XY63	BOOL	TRUE
+	XY64	BOOL	TRUE
+	XY65	BOOL	TRUE
+	XY66	BOOL	TRUE
+	XY67	BOOL	TRUE
+	XY71	BOOL	TRUE
+	XY72	BOOL	TRUE
+	XY73	BOOL	TRUE
+	XY74	BOOL	TRUE
+	XY75	BOOL	TRUE
+	XY76	BOOL	TRUE
+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/eam_branches/ippconfig.20240412/gpc1/format_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_mef.config	(revision 42661)
@@ -0,0 +1,482 @@
+# The raw GPC data comes off the telescope with each of the chips stored in separate files
+
+# How to identify this type
+RULE	METADATA
+#	TELESCOP	STR	PS1
+#	DETECTOR	STR	GPC1 -- this was not used historically by gpc1. if we add it, smf files 
+# 				     	generated in the past will fail.
+	CONTROLR	STR	STARGRASP
+	PSFORMAT        STR     MEF
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	   # The FITS file represents a complete camera fpa
+	EXTENSIONS	STR	CHIP	   # The extensions represent chips
+	FPA.OBS		STR	FILENAME   # A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# CONTENT      =    chip name : type
+        CCID58-2-15a1  STR  XY01:GPCChip
+        CCID58-2-18a1  STR  XY02:GPCChip
+        CCID58-1-13a1  STR  XY03:GPCChip
+        CCID58-1-09a1  STR  XY04:GPCChip
+        CCID58-2-16b1  STR  XY05:GPCChip
+        CCID58-2-09b1  STR  XY06:GPCChip
+        CCID58-2-22a1  STR  XY10:GPCChip
+        CCID58-2-13a2  STR  XY11:GPCChip
+        CCID58-1-17a2  STR  XY12:GPCChip
+        CCID58-1-14a2  STR  XY13:GPCChip
+        CCID58-1-09a2  STR  XY14:GPCChip
+        CCID58-2-13b1  STR  XY15:GPCChip
+        CCID58-1-09b1  STR  XY16:GPCChip
+        CCID58-2-10b2  STR  XY17:GPCChip
+        CCID58-1-19a1  STR  XY20:GPCChip
+        CCID58-1-04a1  STR  XY21:GPCChip
+        CCID58-2-09a2  STR  XY22:GPCChip
+        CCID58-1-02a1  STR  XY23:GPCChip
+        CCID58-1-04a2  STR  XY24:GPCChip
+        CCID58-1-01b1  STR  XY25:GPCChip
+        CCID58-2-07b2  STR  XY26:GPCChip
+        CCID58-1-18b1  STR  XY27:GPCChip
+        CCID58-1-12a1  STR  XY30:GPCChip
+        CCID58-2-01a1  STR  XY31:GPCChip
+        CCID58-2-01a2  STR  XY32:GPCChip
+        CCID58-1-02a2  STR  XY33:GPCChip
+        CCID58-2-04a1  STR  XY34:GPCChip
+        CCID58-1-01b2  STR  XY35:GPCChip
+        CCID58-1-02b1  STR  XY36:GPCChip
+        CCID58-2-16b2  STR  XY37:GPCChip
+        CCID58-2-18b2  STR  XY40:GPCChip
+        CCID58-1-03b2  STR  XY41:GPCChip
+        CCID58-1-07b1  STR  XY42:GPCChip
+        CCID58-2-11b2  STR  XY43:GPCChip
+        CCID58-1-05a2  STR  XY44:GPCChip
+        CCID58-1-21a2  STR  XY45:GPCChip
+        CCID58-2-07a2  STR  XY46:GPCChip
+        CCID58-1-21a1  STR  XY47:GPCChip
+        CCID58-1-17b1  STR  XY50:GPCChip
+        CCID58-2-09b2  STR  XY51:GPCChip
+        CCID58-1-04b1  STR  XY52:GPCChip
+        CCID58-1-05b2  STR  XY53:GPCChip
+        CCID58-2-09a1  STR  XY54:GPCChip
+        CCID58-2-12a2  STR  XY55:GPCChip
+        CCID58-1-10a2  STR  XY56:GPCChip
+        CCID58-2-12a1  STR  XY57:GPCChip
+        CCID58-2-22b2  STR  XY60:GPCChip
+        CCID58-1-03b1  STR  XY61:GPCChip
+        CCID58-2-23b2  STR  XY62:GPCChip
+        CCID58-1-02b2  STR  XY63:GPCChip
+        CCID58-1-07a1  STR  XY64:GPCChip
+        CCID58-2-17a2  STR  XY65:GPCChip
+        CCID58-2-14a1  STR  XY66:GPCChip
+        CCID58-2-16a2  STR  XY67:GPCChip
+        CCID58-2-04b2  STR  XY71:GPCChip
+        CCID58-1-14b1  STR  XY72:GPCChip
+        CCID58-1-25b1  STR  XY73:GPCChip
+        CCID58-1-18a1  STR  XY74:GPCChip
+        CCID58-2-16a1  STR  XY75:GPCChip
+        CCID58-2-05a1  STR  XY76:GPCChip
+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
+		xy01   STR  xy01:GPCCell
+		xy11   STR  xy11:GPCCell
+		xy21   STR  xy21:GPCCell
+		xy31   STR  xy31:GPCCell
+		xy41   STR  xy41:GPCCell
+		xy51   STR  xy51:GPCCell
+		xy61   STR  xy61:GPCCell
+		xy71   STR  xy71:GPCCell
+		xy02   STR  xy02:GPCCell
+		xy12   STR  xy12:GPCCell
+		xy22   STR  xy22:GPCCell
+		xy32   STR  xy32:GPCCell
+		xy42   STR  xy42:GPCCell
+		xy52   STR  xy52:GPCCell
+		xy62   STR  xy62:GPCCell
+		xy72   STR  xy72:GPCCell
+		xy03   STR  xy03:GPCCell
+		xy13   STR  xy13:GPCCell
+		xy23   STR  xy23:GPCCell
+		xy33   STR  xy33:GPCCell
+		xy43   STR  xy43:GPCCell
+		xy53   STR  xy53:GPCCell
+		xy63   STR  xy63:GPCCell
+		xy73   STR  xy73:GPCCell
+		xy04   STR  xy04:GPCCell
+		xy14   STR  xy14:GPCCell
+		xy24   STR  xy24:GPCCell
+		xy34   STR  xy34:GPCCell
+		xy44   STR  xy44:GPCCell
+		xy54   STR  xy54:GPCCell
+		xy64   STR  xy64:GPCCell
+		xy74   STR  xy74:GPCCell
+		xy05   STR  xy05:GPCCell
+		xy15   STR  xy15:GPCCell
+		xy25   STR  xy25:GPCCell
+		xy35   STR  xy35:GPCCell
+		xy45   STR  xy45:GPCCell
+		xy55   STR  xy55:GPCCell
+		xy65   STR  xy65:GPCCell
+		xy75   STR  xy75:GPCCell
+		xy06   STR  xy06:GPCCell
+		xy16   STR  xy16:GPCCell
+		xy26   STR  xy26:GPCCell
+		xy36   STR  xy36:GPCCell
+		xy46   STR  xy46:GPCCell
+		xy56   STR  xy56:GPCCell
+		xy66   STR  xy66:GPCCell
+		xy76   STR  xy76:GPCCell
+		xy07   STR  xy07:GPCCell
+		xy17   STR  xy17:GPCCell
+		xy27   STR  xy27:GPCCell
+		xy37   STR  xy37:GPCCell
+		xy47   STR  xy47:GPCCell
+		xy57   STR  xy57:GPCCell
+		xy67   STR  xy67:GPCCell
+		xy77   STR  xy77: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.AIRMASS	STR	AIRMASS
+	FPA.POSANGLE	STR	POSANGLE
+	FPA.ROTANGLE	STR	ROT
+	FPA.FOCUS	STR	M2Z
+	FPA.TIME	STR	MJD-OBS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.TEMP	STR	DETTEM
+	FPA.ZP		STR	MAG_ZP
+	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
+	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	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.READNOISE	STR	RDNOISE
+	CELL.BAD	STR	LOWLEVEL
+	CELL.SATURATION	STR	SATLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TELESCOPE	STR	PS1
+	FPA.INSTRUMENT	STR	GPC1
+	FPA.DETECTOR	STR	GPC1
+	FPA.OBS		S32	12345
+	FPA.TIMESYS	STR	TAI
+	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
+          XY34  S32     19884
+          XY35  S32     19884
+          XY36  S32     19884
+          XY37  S32     19884
+          XY40  S32     20041
+          XY41  S32     20041
+          XY42  S32     20041
+          XY43  S32     20041
+          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
+          XY35  S32     30858
+          XY36  S32     36001
+          XY37  S32     41144
+          XY40  S32     306
+          XY41  S32     5449
+          XY42  S32     10592
+          XY43  S32     15735
+          XY44  S32     20878
+          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.XSIZE	S32	590
+	CELL.YSIZE	S32	598
+	CELL.TIMESYS	STR	TAI
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+	CELL.BINNING	STR	TOGETHER
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/gpc1/format_orig.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_orig.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_orig.config	(revision 42661)
@@ -0,0 +1,603 @@
+# This is the original GPC1 format, for use up to 2008-09-29.
+# Prior to this, there was a bug in the shutter controller so that the dates are off by 1 month.
+# The dates have been fixed in the database.
+# Saturation point is set low to attempt to encompass all detectors.
+
+# How to identify this type
+RULE    METADATA
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	54734.0  # OP: <
+END
+
+#       The most accurate keyword for the time/date is SHUTOUTC, but
+#       until 2009/9/30, there was a bug which set the month off by 1.
+#       The prior formats use MJD-OBS for time/date, and this is set
+#       in the db.  SHUTDAVR is supposed to be the key to the new
+#       shutter driver, but there were earlier periods where the value
+#       was 1.21, so we are keying on the MJD of the change.  Also
+#       note that historically (early 2008), SHUTOUTC was not
+#       available, forcing MJD-OBS in those periods.
+
+# 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-1-13a1  STR  XY03:GPCChip  # chip 02
+        CCID58-1-09a1  STR  XY04:GPCChip  # chip 03
+        CCID58-2-16b1  STR  XY05:GPCChip  # chip 04
+        CCID58-2-09b1  STR  XY06:GPCChip  # chip 05
+        CCID58-2-22a1  STR  XY10:GPCChip  # chip 06
+        CCID58-2-13a2  STR  XY11:GPCChip  # chip 07
+        CCID58-1-17a2  STR  XY12:GPCChip  # chip 08
+        CCID58-1-14a2  STR  XY13:GPCChip  # chip 09
+        CCID58-1-09a2  STR  XY14:GPCChip  # chip 10
+        CCID58-2-13b1  STR  XY15:GPCChip  # chip 11
+        CCID58-1-09b1  STR  XY16:GPCChip  # chip 12
+        CCID58-2-10b2  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-1-04a2  STR  XY24:GPCChip  # chip 18
+        CCID58-1-01b1  STR  XY25:GPCChip  # chip 19
+        CCID58-2-07b2  STR  XY26:GPCChip  # chip 20
+        CCID58-1-18b1  STR  XY27:GPCChip  # chip 21
+        CCID58-1-12a1  STR  XY30:GPCChip  # chip 22
+        CCID58-2-01a1  STR  XY31:GPCChip  # chip 23
+        CCID58-2-01a2  STR  XY32:GPCChip  # chip 24
+        CCID58-1-02a2  STR  XY33:GPCChip  # chip 25
+        CCID58-2-04a1  STR  XY34:GPCChip  # chip 26
+        CCID58-1-01b2  STR  XY35:GPCChip  # chip 27
+        CCID58-1-02b1  STR  XY36:GPCChip  # chip 28
+        CCID58-2-16b2  STR  XY37:GPCChip  # chip 29
+        CCID58-2-18b2  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-1-05a2  STR  XY44:GPCChip  # chip 34
+        CCID58-1-21a2  STR  XY45:GPCChip  # chip 35
+        CCID58-2-07a2  STR  XY46:GPCChip  # chip 36
+        CCID58-1-21a1  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-2-09a1  STR  XY54:GPCChip  # chip 42
+        CCID58-2-12a2  STR  XY55:GPCChip  # chip 43
+        CCID58-1-10a2  STR  XY56:GPCChip  # chip 44
+        CCID58-2-12a1  STR  XY57:GPCChip  # chip 45
+        CCID58-2-22b2  STR  XY60:GPCChip  # chip 46
+        CCID58-1-03b1  STR  XY61:GPCChip  # chip 47
+        CCID58-2-23b2  STR  XY62:GPCChip  # chip 48
+        CCID58-1-02b2  STR  XY63:GPCChip  # chip 49
+        CCID58-1-07a1  STR  XY64:GPCChip  # chip 50
+        CCID58-2-17a2  STR  XY65:GPCChip  # chip 51
+        CCID58-2-14a1  STR  XY66:GPCChip  # chip 52
+        CCID58-2-16a2  STR  XY67:GPCChip  # chip 53
+        CCID58-2-04b2  STR  XY71:GPCChip  # chip 54
+        CCID58-1-14b1  STR  XY72:GPCChip  # chip 55
+        CCID58-1-25b1  STR  XY73:GPCChip  # chip 56
+        CCID58-1-18a1  STR  XY74:GPCChip  # chip 57
+        CCID58-2-16a1  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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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.RA          STR     COMRA
+        # FPA.DEC         STR     COMDEC
+        FPA.RADECSYS    STR     EQUINOX
+        FPA.OBSTYPE     STR     OBSTYPE
+        FPA.OBJECT      STR     OBJECT
+        FPA.COMMENT     STR     CMMTOBS
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.POSANGLE    STR     POSANGLE
+	FPA.ROTANGLE	STR	ROT
+        FPA.FOCUS       STR     M2Z
+	FPA.TIME        STR     MJD-OBS
+        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
+#       CELL.SATURATION STR     SATURATE
+
+	CHIP.SEEING	STR	SEEING
+#        CHIP.TEMP       STR     DETTEM	# XY24 is bad, so get it from the database; all others from header
+	CHIP.TEMP.DEPEND	STR	CHIP.NAME
+	CHIP.TEMP	METADATA
+		XY01	STR	DETTEM
+		XY02	STR	DETTEM
+		XY03	STR	DETTEM
+		XY04	STR	DETTEM
+		XY05	STR	DETTEM
+		XY06	STR	DETTEM
+		XY10	STR	DETTEM
+		XY11	STR	DETTEM
+		XY12	STR	DETTEM
+		XY13	STR	DETTEM
+		XY14	STR	DETTEM
+		XY15	STR	DETTEM
+		XY16	STR	DETTEM
+		XY17	STR	DETTEM
+		XY20	STR	DETTEM
+		XY21	STR	DETTEM
+		XY22	STR	DETTEM
+		XY23	STR	DETTEM
+#		XY24	STR	DETTEM	# This is currently bad --- get it from the database
+		XY25	STR	DETTEM
+		XY26	STR	DETTEM
+		XY27	STR	DETTEM
+		XY30	STR	DETTEM
+		XY31	STR	DETTEM
+		XY32	STR	DETTEM
+		XY33	STR	DETTEM
+		XY34	STR	DETTEM
+		XY35	STR	DETTEM
+		XY36	STR	DETTEM
+		XY37	STR	DETTEM
+		XY40	STR	DETTEM
+		XY41	STR	DETTEM
+		XY42	STR	DETTEM
+		XY43	STR	DETTEM
+		XY44	STR	DETTEM
+		XY45	STR	DETTEM
+		XY46	STR	DETTEM
+		XY47	STR	DETTEM
+		XY50	STR	DETTEM
+		XY51	STR	DETTEM
+		XY52	STR	DETTEM
+		XY53	STR	DETTEM
+		XY54	STR	DETTEM
+		XY55	STR	DETTEM
+		XY56	STR	DETTEM
+		XY57	STR	DETTEM
+		XY60	STR	DETTEM
+		XY61	STR	DETTEM
+		XY62	STR	DETTEM
+		XY63	STR	DETTEM
+		XY64	STR	DETTEM
+		XY65	STR	DETTEM
+		XY66	STR	DETTEM
+		XY67	STR	DETTEM
+		XY71	STR	DETTEM
+		XY72	STR	DETTEM
+		XY73	STR	DETTEM
+		XY74	STR	DETTEM
+		XY75	STR	DETTEM
+		XY76	STR	DETTEM
+	END
+
+        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     MJD-OBS		# Observation time
+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.LONGITUDE   F64     10.4170608521 # West Longitude in Hours 
+        # FPA.LATITUDE    F64     20.7070999146 # North Latitude in Degrees 
+        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
+          XY34  S32     19884
+          XY35  S32     19884
+          XY36  S32     19884
+          XY37  S32     19884
+          XY40  S32     20041
+          XY41  S32     20041
+          XY42  S32     20041
+          XY43  S32     20041
+          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
+          XY35  S32     30858
+          XY36  S32     36001
+          XY37  S32     41144
+          XY40  S32     306
+          XY41  S32     5449
+          XY42  S32     10592
+          XY43  S32     15735
+          XY44  S32     20878
+          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.GAIN       F32     1.0
+        CELL.READNOISE  F32     15.0
+        CELL.READDIR    S32     1
+        CELL.BAD        S32     0
+	CELL.XSIZE	S32	590
+	CELL.YSIZE	S32	598
+        CELL.SATURATION F32     30000.0
+        CELL.TIMESYS    STR     UTC
+END
+
+# How to translation PS concepts into database lookups
+DATABASE        METADATA
+	CHIP.TEMP.DEPEND	STR	CHIP.NAME
+	CHIP.TEMP		METADATA
+		XY24	STR	SELECT AVG(ccd_temp) FROM rawImfile WHERE dateobs = '{FPA.TIME}' AND class_id != 'XY24'
+	END
+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     MJD
+        CELL.TIME       STR     MJD
+        CELL.BINNING    STR     TOGETHER
+        # CELL.X0         STR     FORTRAN
+        # CELL.Y0         STR     FORTRAN
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/gpc1/format_relphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/format_relphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/format_relphot.config	(revision 42661)
@@ -0,0 +1,422 @@
+# The raw GPC data comes off the telescope with each of the chips stored in separate files
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	PS1
+	DETECTOR	STR	GPC1
+	CONTROLR	STR	STARGRASP
+	PSFORMAT        STR     RELPHOT
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	   # The FITS file represents a complete camera fpa
+	EXTENSIONS	STR	CHIP	   # The extensions represent chips
+	FPA.OBS		STR	FILENAME   # A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# CONTENT      =    chip name : type
+        XY01  STR  XY01:GPCChip
+        XY02  STR  XY02:GPCChip
+        XY03  STR  XY03:GPCChip
+        XY04  STR  XY04:GPCChip
+        XY05  STR  XY05:GPCChip
+        XY06  STR  XY06:GPCChip
+        XY10  STR  XY10:GPCChip
+        XY11  STR  XY11:GPCChip
+        XY12  STR  XY12:GPCChip
+        XY13  STR  XY13:GPCChip
+        XY14  STR  XY14:GPCChip
+        XY15  STR  XY15:GPCChip
+        XY16  STR  XY16:GPCChip
+        XY17  STR  XY17:GPCChip
+        XY20  STR  XY20:GPCChip
+        XY21  STR  XY21:GPCChip
+        XY22  STR  XY22:GPCChip
+        XY23  STR  XY23:GPCChip
+        XY24  STR  XY24:GPCChip
+        XY25  STR  XY25:GPCChip
+        XY26  STR  XY26:GPCChip
+        XY27  STR  XY27:GPCChip
+        XY30  STR  XY30:GPCChip
+        XY31  STR  XY31:GPCChip
+        XY32  STR  XY32:GPCChip
+        XY33  STR  XY33:GPCChip
+        XY34  STR  XY34:GPCChip
+        XY35  STR  XY35:GPCChip
+        XY36  STR  XY36:GPCChip
+        XY37  STR  XY37:GPCChip
+        XY40  STR  XY40:GPCChip
+        XY41  STR  XY41:GPCChip
+        XY42  STR  XY42:GPCChip
+        XY43  STR  XY43:GPCChip
+        XY44  STR  XY44:GPCChip
+        XY45  STR  XY45:GPCChip
+        XY46  STR  XY46:GPCChip
+        XY47  STR  XY47:GPCChip
+        XY50  STR  XY50:GPCChip
+        XY51  STR  XY51:GPCChip
+        XY52  STR  XY52:GPCChip
+        XY53  STR  XY53:GPCChip
+        XY54  STR  XY54:GPCChip
+        XY55  STR  XY55:GPCChip
+        XY56  STR  XY56:GPCChip
+        XY57  STR  XY57:GPCChip
+        XY60  STR  XY60:GPCChip
+        XY61  STR  XY61:GPCChip
+        XY62  STR  XY62:GPCChip
+        XY63  STR  XY63:GPCChip
+        XY64  STR  XY64:GPCChip
+        XY65  STR  XY65:GPCChip
+        XY66  STR  XY66:GPCChip
+        XY67  STR  XY67:GPCChip
+        XY71  STR  XY71:GPCChip
+        XY72  STR  XY72:GPCChip
+        XY73  STR  XY73:GPCChip
+        XY74  STR  XY74:GPCChip
+        XY75  STR  XY75:GPCChip
+        XY76  STR  XY76:GPCChip
+END
+
+CHIPS   METADATA
+	GPCChip		METADATA
+		# Extension name, cellName:cellType
+		xy00    STR  xy00:GPCCell
+	END
+END
+
+# Specify the cell data
+CELLS	METADATA
+	GPCCell		METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:4,1:4]
+		#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.AIRMASS	STR	AIRMASS
+	FPA.POSANGLE	STR	POSANGLE
+	FPA.ROTANGLE	STR	ROT
+	FPA.FOCUS	STR	M2Z
+	FPA.TIME	STR	MJD-OBS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.TEMP	STR	DETTEM
+	FPA.ZP		STR	MAG_ZP
+	CHIP.SEEING	STR	SEEING
+	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
+#	CELL.SATURATION	STR	SATURATE
+	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
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TELESCOPE	STR	PS1
+	FPA.INSTRUMENT	STR	GPC1
+	FPA.DETECTOR	STR	GPC1
+	FPA.OBS	S32	12345
+	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
+          XY34  S32     19884
+          XY35  S32     19884
+          XY36  S32     19884
+          XY37  S32     19884
+          XY40  S32     20041
+          XY41  S32     20041
+          XY42  S32     20041
+          XY43  S32     20041
+          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
+          XY35  S32     30858
+          XY36  S32     36001
+          XY37  S32     41144
+          XY40  S32     306
+          XY41  S32     5449
+          XY42  S32     10592
+          XY43  S32     15735
+          XY44  S32     20878
+          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.GAIN	F32	1.0
+	CELL.READNOISE	F32	0.0
+	CELL.READDIR	S32	1
+	CELL.BAD	S32	0
+	CELL.XSIZE	S32	590
+	CELL.YSIZE	S32	598
+#	CELL.TIME	STR	MJD-OBS
+#	CELL.TIMESYS	STR	TIMESYS
+#	CELL.SATURATION	STR	60000
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+	CELL.BINNING	STR	TOGETHER
+	# CELL.X0		STR	FORTRAN
+	# CELL.Y0		STR	FORTRAN
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/gpc1/ghost.model.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/ghost.model.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/ghost.model.mdc	(revision 42661)
@@ -0,0 +1,71 @@
+# TdB20200522 ghost model fit for gpc1
+#Inner radii are left from the default gpc1 values
+
+GHOST.MIRROR.RAD METADATA
+  NORDER_X S32 1
+  VAL_X00  F64 0.0
+  VAL_X01  F64 2.05047162
+  NELEMENTS  S32 2
+END
+
+GHOST.CENTER.X METADATA
+  NORDER_X S32 3
+  NORDER_Y S32 3
+  VAL_X00_Y00  F64 -4.44204528e+01
+  VAL_X01_Y00  F64 -3.61808461e-02
+  VAL_X02_Y00  F64 -3.41904191e-09
+  VAL_X03_Y00  F64  1.23247534e-10
+  VAL_X00_Y01  F64  3.68637258e-04
+  VAL_X01_Y01  F64 -5.85079042e-08
+  VAL_X02_Y01  F64  3.11998344e-12
+  VAL_X00_Y02  F64 -3.76258537e-08
+  VAL_X01_Y02  F64  1.23486032e-10
+  VAL_X00_Y03  F64 -1.91249100e-12
+  NELEMENTS  S32 10
+END
+
+GHOST.CENTER.Y METADATA
+  NORDER_X S32 3
+  NORDER_Y S32 3
+  VAL_X00_Y00  F64  8.48484727e+01
+  VAL_X01_Y00  F64 -5.44742647e-04
+  VAL_X02_Y00  F64 -3.24795847e-08
+  VAL_X03_Y00  F64  3.94751094e-12
+  VAL_X00_Y01  F64 -3.73181147e-02
+  VAL_X01_Y01  F64 -5.49688915e-09
+  VAL_X02_Y01  F64  1.28040160e-10
+  VAL_X00_Y02  F64 -1.30695487e-07
+  VAL_X01_Y02  F64  1.07915457e-12
+  VAL_X00_Y03  F64  1.26204472e-10
+  NELEMENTS  S32 10
+END
+
+GHOST.INNER.MAJOR METADATA
+  NORDER_X S32 1
+  VAL_X00  F64 3.926693e+01
+  VAL_X01  F64 5.325759e-03
+  NELEMENTS  S32 2
+END
+
+GHOST.INNER.MINOR METADATA
+  NORDER_X S32 1
+  VAL_X00  F64 5.287548e+01
+  VAL_X01  F64 -2.191669e-03
+  NELEMENTS  S32 2
+END
+
+GHOST.OUTER.MAJOR METADATA
+  NORDER_X S32 2
+  VAL_X00  F64 8.99331326e+01
+  VAL_X01  F64 1.17511553e-02
+  VAL_X02  F64 6.21923231e-07
+  NELEMENTS  S32 3
+END
+
+GHOST.OUTER.MINOR METADATA
+  NORDER_X S32 1
+  VAL_X00  F64 1.36523263e+02
+  VAL_X01  F64 -3.5025434e-03
+  NELEMENTS  S32 2
+END
+
Index: /branches/eam_branches/ippconfig.20240412/gpc1/nightly_science.config.example
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/nightly_science.config.example	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/nightly_science.config.example	(revision 42661)
@@ -0,0 +1,616 @@
+
+CLEAN_MODES MULTI
+CLEAN_MODES METADATA
+  MODE           STR CHIP
+  COMMAND        STR chiptool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME U16 2
+  RETENTION_TIME U16 -1
+END
+CLEAN_MODES METADATA
+  MODE           STR WARP
+  COMMAND        STR warptool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+  RETENTION_TIME U16 -1 
+END
+CLEAN_MODES METADATA
+  MODE           STR DIFF
+  COMMAND        STR difftool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME S16 3
+  RETENTION_TIME S16 -1
+END
+CLEAN_MODES METADATA
+  MODE           STR DIST
+  COMMAND        STR disttool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -full -set_label goto_cleaned -label @LABEL@ -time_stamp_end @CURRENT_DATE@
+#  RETENTION_TIME S16 10
+  RETENTION_TIME S16 -1
+END
+CLEAN_MODES METADATA
+  MODE           STR MAGICDS
+  COMMAND        STR magicdstool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME S16 2
+  RETENTION_TIME S16 -1
+END
+CLEAN_MODES METADATA
+  MODE           STR BGCHIP
+  COMMAND	 STR bgtool -dbname @DBNAME@ -updatechip -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME S16 7
+  RETENTION_TIME S16 1
+END
+CLEAN_MODES METADATA
+  MODE           STR BGWARP
+  COMMAND	 STR bgtool -dbname @DBNAME@ -updatewarp -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME S16 7
+  RETENTION_TIME S16 -1
+END
+
+
+END_OF_NIGHT MULTI
+END_OF_NIGHT METADATA
+  NAME           STR MORNING_DARKS
+  OBSMODE        STR ENGINEERING
+  EXPTYPE        STR DARK
+  OBJECT         STR ENGINEERING
+  COMMENT        STR darks_morn%
+END
+
+FILTERS MULTI
+FILTERS STR g.00000
+FILTERS STR r.00000
+FILTERS STR i.00000
+FILTERS STR z.00000
+FILTERS STR y.00000
+FILTERS STR w.00000
+
+UNRECOVERABLE_QUALITY MULTI
+UNRECOVERABLE_QUALITY S16 4007
+
+MACRO_DEFINITIONS MULTI
+MACRO_DEFINITIONS METADATA
+  PROC_MODE STR queue_chips
+  MACRO     STR survey.del.destreak @LABEL@
+END
+MACRO_DEFINITIONS METADATA
+  PROC_MODE STR confirm_stacks
+  MACRO     STR survey.add.destreak @LABEL@ /data/ipp053.0/gpc1_destreak
+END
+
+# 2018-04-30 CZW: Comment out all targets to allow commissioning training and tests to skip processing.
+TARGETS MULTI
+TARGETS METADATA
+  NAME         STR OSS
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR OSS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  ADDITIONAL_STACK_LABEL STR ecliptic.rp
+  DESPERATE_DIFFS BOOL TRUE
+#  REDUCTION STR SSTF_4SIG
+  COMMENT      STR  OSS%
+END
+TARGETS METADATA
+  NAME         STR EU
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR OSS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+  DESPERATE_DIFFS BOOL TRUE
+  COMMENT      STR  EU.%
+END
+TARGETS METADATA
+  NAME         STR ESS
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR ESS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  ADDITIONAL_STACK_LABEL STR ecliptic.rp
+  DESPERATE_DIFFS BOOL TRUE
+#  REDUCTION STR SSTF_4SIG
+  COMMENT      STR  %ESS%
+END
+TARGETS METADATA
+  NAME         STR MSS
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR MSS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  ADDITIONAL_STACK_LABEL STR ecliptic.rp
+  DESPERATE_DIFFS BOOL TRUE
+#  REDUCTION STR SSTF_4SIG
+  COMMENT      STR  %MSS%
+END
+TARGETS METADATA
+  NAME         STR FSS
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR FSS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  CHIP      S16 5
+#  DIFF      S16 300
+END
+TARGETS METADATA
+  NAME         STR ThreePi
+  DISTRIBUTION STR ThreePi
+  TESS         STR RINGS.V3
+  OBSMODE      STR 3PI
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL TRUE
+  COMMENT      STR  %3PI%
+END
+TARGETS METADATA
+  NAME         STR Bright
+  DISTRIBUTION STR NODIST
+  TESS         STR RINGS.V3
+  OBSMODE      STR BRIGHT
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL TRUE
+  REDUCTION STR EUCLID_DEFAULT 
+  COMMENT      STR  Euclid.r%
+#  DIFF          S16  7
+END
+TARGETS METADATA
+  NAME         STR BrightTwi
+  DISTRIBUTION STR NODIST
+  TESS         STR RINGS.V3
+  OBSMODE      STR BRIGHT
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL FALSE
+  REDUCTION STR EUCLID_DEFAULT 
+  COMMENT      STR  Euclid.twi%
+#  DIFF          S16  7
+END
+TARGETS METADATA
+  NAME         STR Bright3Pi 
+  DISTRIBUTION STR NODIST
+  TESS         STR RINGS.V3
+  OBSMODE      STR BRIGHT
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL FALSE
+  REDUCTION STR EUCLID_DEFAULT 
+  COMMENT      STR  %3PI%
+#  DIFF          S16  7
+END
+TARGETS METADATA
+  NAME      STR CFA
+  DISTRIBUTION STR CFA
+  TESS      STR MD07.V3
+  OBSMODE   STR CFA
+#  OBJECT    STR MD07%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+END
+TARGETS METADATA
+  NAME         STR YSE
+  DISTRIBUTION STR YSE
+  TESS         STR RINGS.V3
+  OBSMODE      STR YSE
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS  BOOL FALSE
+  DESPERATE_DIFFS BOOL FALSE
+  REDUCTION STR YSE
+  ## don't use so can include Trans% for YSE in same config
+  #COMMENT   STR  YSE%
+  ## change days for cleanup at start
+  DIST      S16  30
+  DIFF      S16  10 
+END
+TARGETS METADATA
+  NAME         STR SNIa
+  DISTRIBUTION STR SNIa.test
+  TESS         STR RINGS.V3
+  OBSMODE      STR SNIa
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+#  REDUCTION STR SNIA_DEFAULT
+  COMMENT   STR  Supernova%
+  ## change days till cleanup
+#  DIST      S16 20
+END
+TARGETS METADATA
+  NAME         STR  QUB.ic
+  DISTRIBUTION STR  NODIST
+  TESS         STR  RINGS.V3
+  OBSMODE      STR  QUB
+  STACKABLE      BOOL FALSE
+  DIFFABLE       BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION    STR MD_DEFAULT
+  COMMENT      STR ICECUBE%
+#  DIST           S16  15
+#  DIFF           S16  300
+END
+TARGETS METADATA
+  NAME         STR  QUB.lv
+  DISTRIBUTION STR  NODIST
+  TESS         STR  RINGS.V3
+  OBSMODE      STR  QUB
+  STACKABLE      BOOL FALSE
+  DIFFABLE       BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL TRUE
+  REDUCTION    STR SWEETSPOT
+  COMMENT      STR G%.R%.P%
+#  DIST           S16  15
+#  DIFF           S16  300
+END
+TARGETS METADATA
+  NAME         STR  K2
+  DISTRIBUTION STR  K2 
+  TESS         STR  RINGS.V3
+  OBSMODE      STR  K2
+  STACKABLE      BOOL FALSE
+  DIFFABLE       BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+#  REDUCTION    STR SWEETSPOT
+  COMMENT      STR  K2%
+#  DIST           S16  30
+#  DIFF           S16  10
+END
+TARGETS  METADATA
+  NAME          STR NCU
+  DISTRIBUTION  STR NCU
+  TESS          STR RINGS.V3
+  OBSMODE       STR NCU
+  STACKABLE     BOOL FALSE
+  DIFFABLE      BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION     STR SWEETSPOT
+  COMMENT      STR  %NCU%
+#  DIST          S16 300
+#  CHIP          S16 300
+#  DIFF          S16 300
+END
+# TARGETS METADATA
+#   NAME         STR  LIGO
+#   DISTRIBUTION STR  LIGO
+#   TESS         STR  RINGS.V3
+#   OBSMODE      STR  LIGO
+#   STACKABLE      BOOL FALSE
+#   DIFFABLE       BOOL FALSE
+#   OFFNIGHT_DIFFS BOOL FALSE
+#   DIST           S16  15
+#   CHIP           S16  5
+#   WARP           S16  5
+#   DIFF           S16  5
+# END
+TARGETS METADATA
+  NAME      STR  M31
+  DISTRIBUTION STR M31
+  TESS      STR  M31.V4
+  OBSMODE   STR  M31
+  OBJECT    STR  M31%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  DIST      S16  30
+  # bump the retention times for the time being
+ # CHIP S16 60
+ # WARP S16 60
+ # DIFF S16 60
+ # CHIPBG S16 60
+ # WARPBG S16 60
+END
+TARGETS METADATA
+  NAME      STR  MD01
+  DISTRIBUTION STR MD01
+  TESS      STR  MD01.V3
+  OBSMODE   STR  MD
+  OBJECT    STR  MD01%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16  30
+END
+TARGETS METADATA
+  NAME      STR  MD02
+  DISTRIBUTION STR MD02
+  TESS      STR MD02.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD02%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD03
+  DISTRIBUTION STR MD03
+  TESS      STR MD03.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD03%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD04
+  DISTRIBUTION STR MD04
+  TESS      STR MD04.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD04%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD05
+  DISTRIBUTION STR MD05
+  TESS      STR MD05.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD05%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+  ## change days till cleanup
+#  #CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR MD06
+  DISTRIBUTION STR MD06
+  TESS      STR MD06.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD06%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+  ## change days till cleanup
+#  #CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR MD07
+  DISTRIBUTION STR MD07
+  TESS      STR MD07.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD07%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+  ## change days till cleanup
+#  #CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR MD08
+  DISTRIBUTION STR MD08
+  TESS      STR MD08.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD08%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+  ## change days till cleanup
+#  #CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR MD09
+  DISTRIBUTION STR MD09
+  TESS      STR MD09.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD09%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD10
+  DISTRIBUTION STR MD10
+  TESS      STR MD10.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD10%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD11
+  DISTRIBUTION STR MD11
+  TESS      STR MD11.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD11%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR STS
+  DISTRIBUTION STR STS
+  TESS      STR STS.V4
+  OBSMODE   STR STS%
+#  OBJECT    STR STS%
+  STACKABLE BOOL FALSE
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR STS_DATASET
+  # bump the retention times for the time being
+#  CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR SweetSpot
+  DISTRIBUTION STR SweetSpot
+  TESS      STR RINGS.V3
+  OBSMODE   STR SS
+  STACKABLE BOOL FALSE
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  ADDITIONAL_STACK_LABEL STR ecliptic.rp
+#  REDUCTION STR SSTF_4SIG
+#  WARP      S16 60
+END
+TARGETS METADATA
+  NAME         STR PI
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR PI
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+END
+TARGETS METADATA
+  NAME         STR CNP
+  DISTRIBUTION STR CNP
+  TESS         STR CNP.V3
+  OBSMODE      STR CNP
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  REDUCTION   STR  CNP_DATASET
+#  CHIP	      S16  800
+#  WARP	      S16  800
+END
+TARGETS METADATA
+  NAME         STR STD
+  TESS         STR RINGS.V0
+  OBSMODE      STR STD
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  DISTRIBUTION STR NODIST
+END
+TARGETS METADATA
+  NAME         STR microtest
+  TESS         STR RINGS.V3
+  COMMENT      STR Microtest Obs%
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  DISTRIBUTION STR NODIST
+END
+
+#This is a hack, and I freely admit it.
+#Removed the rest because we do not regularly run microtests.
+# TARGETS METADATA
+#   NAME STR microtestMD01
+#   TESS STR MD01
+#   OBJECT STR MD01%
+#   COMMENT STR Microtest Obs%
+#   STACKABLE BOOL TRUE
+# END
+# TARGETS METADATA
+#   NAME STR microtestMD01.noPattern
+#   TESS STR MD01
+#   OBJECT STR MD01%
+#   COMMENT STR Microtest Obs%
+#   REDUCTION STR MICROTEST_NOPATTERN
+#   STACKABLE BOOL TRUE
+# END
+
+# Detrend verification data
+DETRENDS MULTI
+DETRENDS METADATA
+  NAME     STR DARK
+  DETTYPE  STR DARK
+  EXPTYPE  STR dark
+  REF_ID   S64 585
+  REF_ITER S32 3
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_G
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 278
+  REF_ITER S32 0
+  FILTER   STR g.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_R
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 279
+  REF_ITER S32 0
+  FILTER   STR r.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_I
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 280
+  REF_ITER S32 0
+  FILTER   STR i.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_Z
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 281
+  REF_ITER S32 0
+  FILTER   STR z.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_Y
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 282
+  REF_ITER S32 0
+  FILTER   STR y.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_W
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 283
+  REF_ITER S32 0
+  FILTER   STR w.00000
+  MAX_EXP  S32 10
+END
+
Index: /branches/eam_branches/ippconfig.20240412/gpc1/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/ppImage.config	(revision 42661)
@@ -0,0 +1,1981 @@
+	
+# binned output image options
+BIN1.XBIN               S32      16
+BIN1.YBIN               S32      16
+BIN2.XBIN               S32     150
+BIN2.YBIN               S32     150
+
+OVERSCAN.SINGLE         BOOL    FALSE            # Reduce overscan to a single value?
+OVERSCAN.STAT           STR     MEDIAN
+OVERSCAN.BOXCAR         S32     3
+
+# Normalization class
+NORM.CLASS              STR     CHIP             # How to find the per-class normalizations
+
+NONLIN                  BOOL    FALSE            # apply non-linearity correction 
+OLDDARK                 BOOL    FALSE
+
+GAIN.OVERRIDE		BOOL	TRUE		# Override a non-finite gain?
+
+# use the deburned image instead of the raw, if it exists
+USE.DEBURNED.IMAGE      BOOL    TRUE           # use burntool-repaired image?
+USE.BEST.BURNTOOL	BOOL	TRUE	       # require the best burntooled data
+MASK.BURNTOOL           BOOL    FALSE          # Mask potential burntool trails
+TILTYSTREAK.APPLY       BOOL    FALSE          # apply the 'tiltystreak' tool
+NOISEMAP                BOOL    FALSE          # Apply read noise map
+
+APPLY.BURNTOOL          BOOL    TRUE           # apply burntool correction in ppImage
+
+PATTERN.CELL.SUBSET METADATA		   # Menu of chips and/or cells for cell pattern correction
+# XXX TEST ONLY (I was trying to median-subtract each cell using PATTERN.CELL to generate laser flat samples)
+#   XY40 STR 0111111111111111111111111111111111111111111111111111111111111111
+END
+
+#set pattern continuity correction
+PATTERN.CONTINUITY.SUBSET     METADATA        # List of chips and whether to do row pattern correction
+      XY00    BOOL    TRUE
+      XY01    BOOL    TRUE
+      XY02    BOOL    TRUE
+      XY03    BOOL    TRUE
+      XY04    BOOL    TRUE
+      XY05    BOOL    TRUE
+      XY06    BOOL    TRUE
+      XY07    BOOL    TRUE
+      XY10    BOOL    TRUE
+      XY11    BOOL    TRUE
+      XY12    BOOL    TRUE
+      XY13    BOOL    TRUE
+      XY14    BOOL    TRUE
+      XY15    BOOL    TRUE
+      XY16    BOOL    TRUE
+      XY17    BOOL    TRUE
+      XY20    BOOL    TRUE
+      XY21    BOOL    TRUE
+      XY22    BOOL    TRUE
+      XY23    BOOL    TRUE
+      XY24    BOOL    TRUE
+      XY25    BOOL    TRUE
+      XY26    BOOL    TRUE
+      XY27    BOOL    TRUE
+      XY30    BOOL    TRUE
+      XY31    BOOL    TRUE
+      XY32    BOOL    TRUE
+      XY33    BOOL    TRUE
+      XY34    BOOL    TRUE
+      XY35    BOOL    TRUE
+      XY36    BOOL    TRUE
+      XY37    BOOL    TRUE
+      XY40    BOOL    TRUE
+      XY41    BOOL    TRUE
+      XY42    BOOL    TRUE
+      XY43    BOOL    TRUE
+      XY44    BOOL    TRUE
+      XY45    BOOL    TRUE
+      XY46    BOOL    TRUE
+      XY47    BOOL    TRUE
+      XY50    BOOL    TRUE
+      XY51    BOOL    TRUE
+      XY52    BOOL    TRUE
+      XY53    BOOL    TRUE
+      XY54    BOOL    TRUE
+      XY55    BOOL    TRUE
+      XY56    BOOL    TRUE
+      XY57    BOOL    TRUE
+      XY60    BOOL    TRUE
+      XY61    BOOL    TRUE
+      XY62    BOOL    TRUE
+      XY63    BOOL    TRUE
+      XY64    BOOL    TRUE
+      XY65    BOOL    TRUE
+      XY66    BOOL    TRUE
+      XY67    BOOL    TRUE
+      XY70    BOOL    TRUE
+      XY71    BOOL    TRUE
+      XY72    BOOL    TRUE
+      XY73    BOOL    TRUE
+      XY74    BOOL    TRUE
+      XY75    BOOL    TRUE
+      XY76    BOOL    TRUE
+      XY77    BOOL    TRUE
+END
+
+# Final detrending options 
+HAS.VIDEO       BOOL    FALSE            # Treat this OTA as if it has video data
+USE.VIDEO.DARK  BOOL    TRUE             # Use a video dark if we have video data?
+USE.VIDEO.MASK  BOOL    FALSE            # Use a video mask if we have video data?
+
+# aditional auxiliary mask applied to corners of all chips in video cells.
+# Is only applied if MASK.AUXMASK and USE.VIDEO.MASK are both true
+AUX.VIDEO.MASK  STR     neb://any/gpc1/auxmask/mpg.20130930/mask_video_cell_corners.fits
+
+
+TILTYSTREAK.BY.CLASS METADATA              # apply the 'tiltystreak' tool
+APPLY.XY01 BOOL FALSE
+APPLY.XY03 BOOL FALSE
+APPLY.XY04 BOOL FALSE
+APPLY.XY05 BOOL FALSE
+APPLY.XY06 BOOL FALSE
+APPLY.XY10 BOOL FALSE
+APPLY.XY11 BOOL FALSE
+APPLY.XY13 BOOL FALSE
+APPLY.XY14 BOOL FALSE
+APPLY.XY15 BOOL FALSE
+APPLY.XY16 BOOL FALSE
+APPLY.XY17 BOOL FALSE
+APPLY.XY20 BOOL FALSE
+APPLY.XY21 BOOL FALSE
+APPLY.XY23 BOOL FALSE
+APPLY.XY24 BOOL FALSE
+APPLY.XY25 BOOL FALSE
+APPLY.XY26 BOOL FALSE
+APPLY.XY30 BOOL FALSE
+APPLY.XY31 BOOL FALSE
+APPLY.XY33 BOOL FALSE
+APPLY.XY34 BOOL FALSE
+APPLY.XY35 BOOL FALSE
+APPLY.XY36 BOOL FALSE
+APPLY.XY37 BOOL FALSE
+APPLY.XY40 BOOL FALSE
+APPLY.XY41 BOOL FALSE
+APPLY.XY42 BOOL FALSE
+APPLY.XY43 BOOL FALSE
+APPLY.XY44 BOOL FALSE
+APPLY.XY46 BOOL FALSE
+APPLY.XY50 BOOL FALSE
+APPLY.XY52 BOOL FALSE
+APPLY.XY53 BOOL FALSE
+APPLY.XY54 BOOL FALSE
+APPLY.XY56 BOOL FALSE
+APPLY.XY60 BOOL FALSE
+APPLY.XY62 BOOL FALSE
+APPLY.XY63 BOOL FALSE
+APPLY.XY64 BOOL FALSE
+APPLY.XY66 BOOL FALSE
+APPLY.XY71 BOOL FALSE
+APPLY.XY72 BOOL FALSE
+APPLY.XY73 BOOL FALSE
+APPLY.XY74 BOOL FALSE
+APPLY.XY76 BOOL FALSE
+
+APPLY.XY02 BOOL TRUE
+APPLY.XY12 BOOL TRUE
+APPLY.XY22 BOOL TRUE
+APPLY.XY27 BOOL TRUE
+APPLY.XY32 BOOL TRUE
+APPLY.XY45 BOOL TRUE
+APPLY.XY47 BOOL TRUE
+APPLY.XY51 BOOL TRUE
+APPLY.XY55 BOOL TRUE
+APPLY.XY57 BOOL TRUE
+APPLY.XY61 BOOL TRUE
+APPLY.XY65 BOOL TRUE
+APPLY.XY67 BOOL TRUE
+APPLY.XY75 BOOL TRUE
+
+OPTIONS.XY02 STR mask=0001011100010111000101110001011100010111000101110001011100010111 # cols: 3,5,6,7
+OPTIONS.XY12 STR mask=0000011100000111000001110000011100000111111101111111011111110111 # col 5,6,7 (+ 0,1,2,3 for row > 4)
+OPTIONS.XY22 STR mask=0001001100010011000100110001001100010011000100110001001100010011 # cols: 3,6,7
+OPTIONS.XY27 STR none
+OPTIONS.XY32 STR mask=0011011100110111001101110011011100110111001101110011011100110111 # cols: 2,3,5,6,7
+OPTIONS.XY45 STR mask=0111111101111111011111111111111111111111111111111111111111111111 # all except 00, 01, 02
+OPTIONS.XY47 STR mask=1111111001111110011111100111111001111110011111100111111001111110 # cols: 2,3,4,5,6,7 (add 00)
+OPTIONS.XY51 STR mask=0011101100111011001110110011101100111011001110110011101100111011 # cols: 2,3,4,6,7
+OPTIONS.XY55 STR mask=0000000011111111111111111111111111111111111111111111111111111111 # all except row 0
+OPTIONS.XY57 STR none
+OPTIONS.XY61 STR none
+OPTIONS.XY65 STR mask=0111011101110111011101110111011101110111011101110111011101110111 # cols: 1,2,3,5,6,7
+OPTIONS.XY67 STR mask=1100111111001111110011111100111100000000000000000000000000000000 # cols: 0,1,4,5,6,7 except rows 4,5,6,7
+OPTIONS.XY75 STR mask=0001111100011111000111110001111100011111000111110001111100011111 # cols: 3,4,5,6,7
+
+# OPTIONS.XY02 STR mask=00010111.00010111.00010111.00010111.00010111.00010111.00010111.00010111 # cols: 3,5,6,7
+END
+
+# crosstalk measurements : only valid for GPC1 for now
+CROSSTALK.MEASURE  BOOL    FALSE          # Subtract model background?
+CROSSTALK.CORRECT  BOOL    FALSE           # Subtract model background?
+
+## XXX use these local variations until we are building real detrend images
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+    EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+  END
+  FLATCORR METADATA
+    FILTER   STR FPA.FILTERID
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTERID
+  END
+  SHUTTER METADATA
+  END
+  MASK METADATA
+  END	
+  ASTROM METADATA
+  END	
+  NOISEMAP METADATA
+  END	
+  LINEARITY METADATA
+  END
+END
+
+# only apply the fringe for these filters
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR y.00000
+
+# Standard chip processing (NOTE: when changing this be sure to check whether changes should be applied to
+# CHIP_PRESERVE_BG CHIP_AUXMASK or CHIP_PRESERVE_BG_AUXMASK
+CHIP 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
+  NOISEMAP           BOOL    TRUE            # Apply noise read map
+  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
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  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    FALSE           # Subtract model background?
+END
+
+CHIP_NOCOMPRESS 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
+  NOISEMAP	     BOOL    TRUE	     
+  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
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  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    FALSE           # Subtract model background?
+  NO.COMPRESS        BOOL    TRUE            # do not compress images
+END
+
+# test for MOPS request reprocessing without masking
+CHIP_NOMASKTEST 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            # Non-linearity correction; not implemented
+   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    FALSE            # Mask bad pixels
+   MASK.BUILD         BOOL    FALSE           # 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    FALSE           # Subtract model background?
+END
+
+# Chip processing for testing pattern correction
+CHIP_PATTERNTEST 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    FALSE            # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # 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    FALSE           # Subtract model background?
+END
+
+# Chip processing with DARKTEST 
+CHIP_DARKTEST 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
+  NOISEMAP           BOOL    TRUE            # Apply noise read map
+  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
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  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    FALSE           # Subtract model background?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      DETTYPE   STR DARKTEST
+      EXPTIME   STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      FILTER    STR FPA.FILTERID
+    END
+    FLATCORR METADATA
+      FILTER    STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER    STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END
+    ASTROM METADATA
+    END
+    NOISEMAP METADATA
+    END
+  END   
+END
+
+CHIP_MASKTEST 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            # Non-linearity correction; not implemented
+   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    FALSE           # Subtract model background?
+
+   DETREND.CONSTRAINTS  METADATA
+     MASK METADATA
+       DETTYPE STR MASKTEST
+     END   
+     VIDEOMASK METADATA
+       DETTYPE STR VIDEOMASKTEST
+     END
+     FLAT METADATA
+       FILTER  STR FPA.FILTERID
+     END
+     FLATCORR METADATA
+       FILTER   STR FPA.FILTERID
+     END
+     FRINGE METADATA
+       FILTER   STR FPA.FILTERID
+     END
+  END
+END
+
+CHIP_DARKTEST_MASKTEST 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            # Non-linearity correction; not implemented
+   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    FALSE           # Subtract model background?
+
+   DETREND.CONSTRAINTS  METADATA
+     DARK METADATA
+       DETTYPE STR DARKTEST
+       EXPTIME STR FPA.EXPOSURE
+     END
+     MASK METADATA
+       DETTYPE STR MASKTEST
+     END   
+     VIDEOMASK METADATA
+       DETTYPE STR VIDEOMASKTEST
+     END
+     FLAT METADATA
+       FILTER  STR FPA.FILTERID
+     END
+     FLATCORR METADATA
+       FILTER   STR FPA.FILTERID
+     END
+     FRINGE METADATA
+       FILTER   STR FPA.FILTERID
+     END
+  END
+END
+
+
+CHIP_TIMEDARK 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            # Non-linearity correction; not implemented
+   BIAS               BOOL    FALSE           # Bias subtraction
+   DARK               BOOL    TRUE            # Dark subtraction
+   NOISEMAP           BOOL    TRUE
+   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    FALSE           # Subtract model background?
+
+   DETREND.CONSTRAINTS  METADATA
+     DARK METADATA
+       DETTYPE STR TIMEDARK
+       EXPTIME STR FPA.EXPOSURE
+     END
+     MASK METADATA
+       DETTYPE STR TIMEMASK
+       EXPTIME STR FPA.EXPOSURE
+     END   
+     VIDEOMASK METADATA
+       DETTYPE STR VIDEOMASKTEST
+     END
+     FLAT METADATA
+       FILTER  STR FPA.FILTERID
+     END
+     FLATCORR METADATA
+       FILTER   STR FPA.FILTERID
+     END
+     FRINGE METADATA
+       FILTER   STR FPA.FILTERID
+     END
+  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    FALSE           # Subtract model background?
+END
+
+ 
+# Standard chip processing
+CHIP_ADDNOISE      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            # 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
+  ADDNOISE         BOOL    TRUE            # Add noise to mimic shorter exposure
+  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  FALSE           # Subtract model background?
+END
+
+# Standard chip processing with tiltystreak activated
+TILTY              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    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            # 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
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+  TILTYSTREAK.APPLY  BOOL    TRUE            # apply the 'tiltystreak' tool
+  NOISEMAP           BOOL    TRUE            # Apply read noise map
+END
+
+# Standard chip processing with noisemap activated
+NOISY                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    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
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+  TILTYSTREAK.APPLY  BOOL    FALSE           # apply the 'tiltystreak' tool
+  NOISEMAP           BOOL    TRUE            # Apply read noise map
+END
+
+# Standard chip processing for areas with high stellar density
+# Turn remnance masking off --- it kills all the detector
+CHIP_DENSE_STARS	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?
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias
+PPIMAGE_OB           METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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    TRUE            # apply non-linearity correction 
+  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?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD        METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark -- search for DARK_PREMASK
+PPIMAGE_DARKMASK_PROCESS METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # apply non-linearity correction 
+  BIAS             BOOL    FALSE
+  DARK             BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END   
+END
+
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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    TRUE            # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_FLATPROC_PREMASK       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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    TRUE            # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDSF      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_FLATMASK_PROCESS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+
+  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
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_DET_ONLY   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
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  FPA1.FITS        BOOL    TRUE            # Save 1st binned fpa image? 
+  FPA2.FITS        BOOL    TRUE            # Save 2nd binned fpa image? 
+  PHOTOM           BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM           BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRP    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
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA    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
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATCORR    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
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  FRINGE           BOOL    FALSE           # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      DETTYPE STR FLAT_PREMASK
+      FILTER  STR FPA.FILTERID
+    END
+    FLATCORR METADATA
+      FILTER  STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END	
+    ASTROM METADATA
+    END	
+  END
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATTEST    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
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  FRINGE           BOOL    FALSE           # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      EXPTIME STR FPA.EXPOSURE
+      DETTYPE STR TIMEDARK
+    END
+    FLAT METADATA
+      DETTYPE STR FLATTEST
+      FILTER  STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END	
+    ASTROM METADATA
+    END	
+  END
+END
+
+# Photometry and astrometry only (for pre-reduced data)
+PPIMAGE_PA         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    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            # apply non-linearity correction 
+  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
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  PHOTOM           BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# JPEG images for different types of residual images
+# Save JPEG from BIN1 for bias
+PPIMAGE_J1_RESID_B      METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  NONLIN           BOOL    FALSE           # apply non-linearity correction 
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  # GPC1 has significant dark structures: use a wide greyscale range
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     VALUE
+    SCALE.MIN      F32     -50.0
+    SCALE.MAX      F32     +50.0
+  END
+END
+
+# Save JPEG from BIN2 for bias
+PPIMAGE_J2_RESID_B        METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  NONLIN           BOOL    FALSE            # apply non-linearity correction 
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  # GPC1 has significant dark structures: use a wide greyscale range
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     VALUE
+    SCALE.MIN      F32     -50.0
+    SCALE.MAX      F32     +50.0
+  END
+END
+
+# Save JPEG from BIN1 for flat
+PPIMAGE_J1_RESID_F      METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  NONLIN           BOOL    FALSE            # apply non-linearity correction 
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.98
+    SCALE.MAX      F32     1.02
+  END
+END
+
+# Save JPEG from BIN2 for flat
+PPIMAGE_J2_RESID_F        METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  NONLIN           BOOL    FALSE            # apply non-linearity correction 
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+		   
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.98
+    SCALE.MAX      F32     1.02
+  END
+END
+
+# generate CTE map image
+PPIMAGE_CTEMAP     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    TRUE            # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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    TRUE            # measure CTE errors?
+
+  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_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
+
+
+PR_DARKTEST_NOSUB 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?
+  FRINGE           BOOL    FALSE           # 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    FALSE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL  FALSE           # Subtract model background?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      DETTYPE STR DARKTEST
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      FILTER  STR FPA.FILTERID
+    END
+    FLATCORR METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END	
+    ASTROM METADATA
+    END	
+    NOISEMAP METADATA
+    END
+  END   
+END
+
+
+PR               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?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PATTERN.ROW      BOOL    TRUE            # Row pattern correction
+  PATTERN.CELL	   BOOL	   TRUE		   # Cell pattern correction
+  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    FALSE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL  FALSE           # Subtract model background?
+END
+
+PR_NOPATTERN       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?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PATTERN.ROW      BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL        BOOL    FALSE	        # Cell pattern correction
+  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    FALSE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL  FALSE            # Subtract model background?
+END
+
+# Standard chip processing + auxiliary mask
+CHIP_AUXMASK 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
+  NOISEMAP	     BOOL    TRUE	     
+  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
+  MASK.AUXMASK       BOOL    TRUE            # augment mask with more restrictive auxiliary mask
+  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    FALSE           # Subtract model background?
+  NO.COMPRESS        BOOL    TRUE            # turn off image compression
+    DETREND.CONSTRAINTS  METADATA
+      BIAS METADATA
+      END
+      DARK METADATA
+        EXPTIME STR FPA.EXPOSURE
+      END
+      FLAT METADATA
+        FILTER  STR FPA.FILTERID
+      END
+      FLATCORR METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      FRINGE METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      SHUTTER METADATA
+      END
+      MASK METADATA
+      END	
+      AUXMASK METADATA
+        DETTYPE STR AUXMASK_STS
+      END
+      ASTROM METADATA
+      END	
+      NOISEMAP METADATA
+      END	
+      LINEARITY METADATA
+      END
+    END
+END
+
+# Standard chip processing + auxiliary mask with heavy masking
+CHIP_AUXMASK_HEAVY 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
+  NOISEMAP	     BOOL    TRUE	     
+  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
+  MASK.AUXMASK       BOOL    TRUE            # augment mask with more restrictive auxiliary mask
+  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    FALSE           # Subtract model background?
+  NO.COMPRESS        BOOL    TRUE            # turn off image compression
+    DETREND.CONSTRAINTS  METADATA
+      BIAS METADATA
+      END
+      DARK METADATA
+        EXPTIME STR FPA.EXPOSURE
+      END
+      FLAT METADATA
+        FILTER  STR FPA.FILTERID
+      END
+      FLATCORR METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      FRINGE METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      SHUTTER METADATA
+      END
+      MASK METADATA
+      END	
+      AUXMASK METADATA
+        DETTYPE STR AUXMASK_HEAVY
+      END
+      ASTROM METADATA
+      END	
+      NOISEMAP METADATA
+      END	
+      LINEARITY METADATA
+      END
+    END
+END
+
+# Standard chip processing without background subtraction or pattern correction
+CHIP_PRESERVE_BG	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
+  NOISEMAP           BOOL    TRUE
+  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
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    TRUE            # Cell pattern coorection 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    FALSE           # Subtract background?
+  CROSSTALK.MEASURE  BOOL    FALSE           # Subtract model background?
+END
+
+
+# Standard chip processing with background removal, but then added back in
+CHIP_RESTORE_BG	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    FALSE           # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE 	     # 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    FALSE           # Subtract model background?
+END
+
+
+# Standard chip processing without background subtraction, pattern correction, or photometry bug applying auxiliary mask
+CHIP_PRESERVE_BG_AUXMASK	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
+  NOISEMAP           BOOL    TRUE
+  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
+  MASK.AUXMASK       BOOL    TRUE            # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE            # Cell pattern coorection 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    FALSE           # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    FALSE           # Subtract background?
+  CROSSTALK.MEASURE  BOOL    FALSE           # Subtract model background?
+  NO.COMPRESS        BOOL    TRUE            # turn off image compression
+    DETREND.CONSTRAINTS  METADATA
+      BIAS METADATA
+      END
+      DARK METADATA
+        EXPTIME STR FPA.EXPOSURE
+      END
+      FLAT METADATA
+        FILTER  STR FPA.FILTERID
+      END
+      FLATCORR METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      FRINGE METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      SHUTTER METADATA
+      END
+      MASK METADATA
+      END	
+      AUXMASK METADATA
+        DETTYPE STR AUXMASK_HEAVY
+      END
+      ASTROM METADATA
+      END	
+      NOISEMAP METADATA
+      END	
+      LINEARITY METADATA
+      END
+    END
+END
+
+
+# Standard chip processing
+CHIP_NOPATTERN     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    FALSE           # Row pattern correction
+  PATTERN.CELL	   BOOL	   FALSE	   # 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  FALSE           # Subtract model background?
+END
+
+# Standard chip processing for old pre-run5 data
+CHIP_PATTERN	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
+  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    FALSE           # Subtract model background?
+  PATTERN.ROW        BOOL    TRUE           # Subtract pattern noise
+  PATTERN.CELL       BOOL    FALSE           # Subtract pattern noise
+
+  PATTERN.ROW.SUBSET	METADATA	# List of chips and whether to do row pattern correction
+	XY01	BOOL	TRUE
+	XY02	BOOL	TRUE
+	XY03	BOOL	TRUE
+	XY04	BOOL	TRUE
+	XY05	BOOL	TRUE
+	XY06	BOOL	TRUE
+	XY10	BOOL	TRUE
+	XY11	BOOL	TRUE
+	XY12	BOOL	TRUE
+	XY13	BOOL	TRUE
+	XY14	BOOL	TRUE
+	XY15	BOOL	TRUE
+	XY16	BOOL	TRUE
+	XY17	BOOL	TRUE
+	XY20	BOOL	TRUE
+	XY21	BOOL	TRUE
+	XY22	BOOL	TRUE
+	XY23	BOOL	TRUE
+	XY24	BOOL	TRUE
+	XY25	BOOL	TRUE
+	XY26	BOOL	TRUE
+	XY27	BOOL	TRUE
+	XY30	BOOL	TRUE
+	XY31	BOOL	TRUE
+	XY32	BOOL	TRUE
+	XY33	BOOL	TRUE
+	XY34	BOOL	TRUE
+	XY35	BOOL	TRUE
+	XY36	BOOL	TRUE
+	XY37	BOOL	TRUE
+	XY40	BOOL	TRUE
+	XY41	BOOL	TRUE
+	XY42	BOOL	TRUE
+	XY43	BOOL	TRUE
+	XY44	BOOL	TRUE
+	XY45	BOOL	TRUE
+	XY46	BOOL	TRUE
+	XY47	BOOL	TRUE
+	XY50	BOOL	TRUE
+	XY51	BOOL	TRUE
+	XY52	BOOL	TRUE
+	XY53	BOOL	TRUE
+	XY54	BOOL	TRUE
+	XY55	BOOL	TRUE
+	XY56	BOOL	TRUE
+	XY57	BOOL	TRUE
+	XY60	BOOL	TRUE
+	XY61	BOOL	TRUE
+	XY62	BOOL	TRUE
+	XY63	BOOL	TRUE
+	XY64	BOOL	TRUE
+	XY65	BOOL	TRUE
+	XY66	BOOL	TRUE
+	XY67	BOOL	TRUE
+	XY71	BOOL	TRUE
+	XY72	BOOL	TRUE
+	XY73	BOOL	TRUE
+	XY74	BOOL	TRUE
+	XY75	BOOL	TRUE
+	XY76	BOOL	TRUE
+  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    FALSE	     # 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    FALSE           # 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    FALSE           # 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    FALSE           # Subtract model background?
+END
+
+# burntool turned off for manual reprocessing of problematic exposures
+# https://jira.ipp.ifa.hawaii.edu/browse/IPP-1451
+# modified from gpc1 default CHIP recipe
+CHIP_NOBURNTOOL 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
+  NOISEMAP           BOOL    TRUE            # Apply noise read map
+  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    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  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    FALSE           # Subtract model background?
+  USE.DEBURNED.IMAGE BOOL    FALSE           # use burntool-repaired image?
+  USE.BEST.BURNTOOL  BOOL    FALSE           # require the best burntooled data
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc1/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/ppMerge.config	(revision 42661)
@@ -0,0 +1,98 @@
+# Mask generation --- already included in default, above
+PPMERGE_DARKMASK METADATA
+  ITER               S32    3
+  MASK.SUSPECT.SIGMA F32	8.0		# Threshold for suspect pixels (sigma)
+  MASK.BAD	     F32	0.1		# Threshold for bad pixels 
+  MASK.MODE	     STR	FRACTION	# Meaning of threshold : value, sigma
+  SAMPLE             S32    100000          # Sampling factor for measuring the background
+END
+
+PPMERGE_FLATMASK METADATA
+  ITER           S32    3
+  MASK.SUSPECT.SIGMA F32	3.0		# Threshold for suspect pixels (sigma)
+  MASK.BAD	 F32	0.1		# Threshold for bad pixels (sigma)
+  MASK.MODE	 STR	FRACTION	# Threshold for bad pixels (sigma)
+  SAMPLE         S32    100000          # Sampling factor for measuring the background
+END
+
+ROWS		S32	32		# Number of rows to read at once
+
+FRINGE.NUM          S32     1000        # Number of fringe regions per cell
+FRINGE.SIZE         S32     5           # Half-size of fringe regions
+FRINGE.XSMOOTH      S32     3           # Number of smoothing regions per cell in x
+FRINGE.YSMOOTH      S32     3           # Number of smoothing regions per cell in y
+FRINGE.SMOOTH       BOOL    TRUE        # Smooth the output image?
+FRINGE.SMOOTH.SIGMA F32     2.0         # Sigma of smoothing Gaussian
+
+# Ordinates for fitting dark current
+# example for linear in darktime only
+# DARK.ORDINATES	METADATA
+# 	CELL.DARKTIME	S32	1
+# END
+
+# Ordinates for fitting dark current as function of darktime and fpa temp:
+# DARK.ORDINATES	METADATA
+# 	CELL.DARKTIME	S32	1
+#  	FPA.TEMP	METADATA
+#  		ORDER	S32	1
+#  		SCALE	BOOL	TRUE
+# 		RULE	STR	FPA.TEMP * CELL.DARKTIME
+#  		MIN	F32	-95
+#  		MAX	F32	-50
+#  	END
+# END
+
+# 2010.02.02 -- this was the dark rule for the dark master from 20100124
+# Ordinates for fitting dark current as function of darktime and fpa temp:
+# Counts = C0 + (CT0 + CT1*Temp + CT2*Temp^2)*exptime
+# the 0th order term is implied, right?
+# Note: GPC1 has bad values for DARKTIME in unpredictable cells; use EXPOSURE for now
+# DARK.ORDINATES	METADATA
+# 	CELL.EXPOSURE	S32	1
+#  	TEMP	METADATA
+#  		ORDER	S32	1
+# 		RULE	STR	CHIP.TEMP * CELL.EXPOSURE
+#  	END
+#  	TEMP2	METADATA
+#  		ORDER	S32	1
+# 		RULE	STR	CHIP.TEMP * CHIP.TEMP * CELL.EXPOSURE
+#  	END
+# END
+
+# DARK.ORDINATES	METADATA
+#  	TEMP	METADATA
+#  		ORDER	S32	1
+# 		RULE	STR	CHIP.TEMP
+#  	END
+#  	TEMP2	METADATA
+#  		ORDER	S32	1
+# 		RULE	STR	CHIP.TEMP * CHIP.TEMP
+#  	END
+# END
+
+# Ordinates for fitting dark current as function of darktime and fpa temp:
+# Counts = C0 + (CT0 + CT1*Temp)*exptime
+# the 0th order term is implied, right?
+# Note: GPC1 has bad values for DARKTIME in unpredictable cells; use EXPOSURE for now
+#DARK.ORDINATES	METADATA
+#	CELL.EXPOSURE	S32	1
+# 	TEMP	METADATA
+# 		ORDER	S32	1
+#		RULE	STR	CHIP.TEMP * CELL.EXPOSURE
+# 	END
+#END
+ #
+#Dark for 2010-07-02 with new temp concept.
+DARK.ORDINATES	METADATA
+	CELL.EXPOSURE	S32	1
+  	TEMP	METADATA
+  		ORDER	S32	1
+ 		RULE	STR	CHIP.TEMPERATURE * CELL.EXPOSURE
+  	END
+  	TEMP2	METADATA
+  		ORDER	S32	1
+ 		RULE	STR	CHIP.TEMPERATURE * CHIP.TEMPERATURE * CELL.EXPOSURE
+  	END
+END
+
+
Index: /branches/eam_branches/ippconfig.20240412/gpc1/ppStack.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/ppStack.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/ppStack.config	(revision 42661)
@@ -0,0 +1,499 @@
+# 
+PSF.MODEL	STR	PS_MODEL_PS1_V1	# Model for PSF generation
+BACKGROUND.MODEL BOOL   F
+
+ZP.AIRMASS      METADATA                # Airmass terms by filter
+	# standard GPC1 photcodes
+        g.00000       F32     0.0
+        r.00000       F32     0.0
+        i.00000       F32     0.0
+        z.00000       F32     0.0
+        y.00000       F32     0.0
+        w.00000       F32     0.0
+	# adding GPC2 photcodes for cross-camera stacks
+        g.00002       F32     0.0
+        r.00002       F32     0.0
+        i.00002       F32     0.0
+        z.00002       F32     0.0
+        y.00002       F32     0.0
+        w.00002       F32     0.0
+	# adding generic photcodes for contingency
+        g             F32     0.0
+        r             F32     0.0
+        i             F32     0.0
+        z             F32     0.0
+        y             F32     0.0
+        w             F32     0.0
+END
+ZP.TARGET       METADATA	        # Target zero point by filter
+	# standard GPC1 photcodes
+        g.00000       F32     25.0
+        r.00000       F32     25.0
+        i.00000       F32     25.0
+        z.00000       F32     25.0
+        y.00000       F32     25.0
+        w.00000       F32     25.0
+	# adding GPC2 photcodes for cross-camera stacks
+        g.00002       F32     25.0
+        r.00002       F32     25.0
+        i.00002       F32     25.0
+        z.00002       F32     25.0
+        y.00002       F32     25.0
+        w.00002       F32     25.0
+	# adding generic photcodes for contingency
+        g             F32     25.0
+        r             F32     25.0
+        i             F32     25.0
+        z             F32     25.0
+        y             F32     25.0
+        w             F32     25.0
+END
+
+PS1_REFERENCE METADATA                  # Refstack for diffims, typically best of best IQ/images and N>20
+    OUTPUT.NOCOMP	    BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    PSF.INPUT.MAX           F32   6.0   # never really want >6 pixels in refstack
+    PSF.INPUT.CLIP.NSIGMA   F32   1.0   # sample typically on rising side of distribution (set even smaller?)
+    PSF.INPUT.THRESH        F32   0.0
+    PSF.INPUT.ASYMMETRY     F32   0.0
+END
+
+STACK_DEEP    METADATA                  # N>>20 inputs, typically MD fields
+    OUTPUT.NOCOMP	    BOOL  TRUE
+    OUTPUT.LOGFLUX  	    BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    PSF.INPUT.MAX           F32   10.0
+    PSF.INPUT.CLIP.NSIGMA   F32   1.5
+    PSF.INPUT.THRESH        F32   5.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+END
+
+QUICKSTACK_DEEP    METADATA             # Unconvolved and deep stacks only
+    CONVOLVE		   BOOL  FALSE    
+    COMBINE.REJ     	   F32   3.5    # Rejection threshold in combination (sigma). tune?
+    COMBINE.DISCARD 	   F32   0.2    # Discard fraction for Olympic weighted mean. tune?
+    OUTPUT.NOCOMP   	   BOOL  TRUE
+    OUTPUT.LOGFLUX  	   BOOL  FALSE
+    PSF.INPUT.MAX          F32   10.0    # since not convolved limit, relax/tune?
+    PSF.INPUT.CLIP.NSIGMA  F32   1.5
+    PSF.INPUT.THRESH        F32   5.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+END
+
+STACK_NIGHTLY  METADATA                 # Typically MD 8 input nightly stacks
+    OUTPUT.NOCOMP   BOOL    FALSE
+    OUTPUT.LOGFLUX  BOOL    FALSE
+END
+
+STACK_THREEPI  METADATA
+    OUTPUT.NOCOMP   	    BOOL  FALSE
+    OUTPUT.LOGFLUX  	    BOOL  TRUE
+    PSF.INPUT.MAX           F32	  10.0	# input cut more restrictive now 12->10 pix, limit target PSF in convolved stacks 
+    PSF.INPUT.CLIP.NSIGMA   F32   1.5	# additional cut if majority of inputs much smaller than INPUT.MAX
+    PSF.INPUT.THRESH        F32   10.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+    PSF.TARGET.AS.MAX	    BOOL  TRUE
+   MATCH.REJ        F32    4.0
+   SAFE		 BOOL	F
+
+END
+
+STACK_THREEPI_ALT  METADATA 
+    OUTPUT.NOCOMP   	    BOOL  TRUE  ## MD test mod
+    OUTPUT.LOGFLUX  	    BOOL  FALSE ## MD test mod
+    STACK.TYPE		    STR	  DEEP_STACK ## MD test mod
+    PSF.INPUT.MAX           F32	  10.0	# input cut more restrictive now 12->10 pix, limit target PSF in convolved stacks 
+    PSF.INPUT.CLIP.NSIGMA   F32   1.5	# additional cut if majority of inputs much smaller than INPUT.MAX
+    PSF.INPUT.THRESH        F32   10.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+   MATCH.REJ        F32    4.0
+   SAFE		 BOOL	F
+
+END
+
+STACK_CNP  METADATA                   ## Based on STACK_THREEPI and STACK_MD_DEEP_1DG 
+    OUTPUT.NOCOMP   	    BOOL  FALSE
+    OUTPUT.LOGFLUX  	    BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+
+   MATCH.REJ        F32    4.0
+   SAFE		 BOOL	F
+
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+
+END
+
+
+STACK_MD_REF       METADATA  ## revised config for MD refstacks vs PS1_REFERENCE above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   6.0   # never really want >6 pixels in refstack
+    PSF.INPUT.CLIP.NSIGMA   F32   1.0   # sample typically on rising side of distribution (set even smaller?)
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0 # need ot tune?
+    SAFE                    BOOL  FALSE
+END
+
+STACK_MD_DEEP     METADATA   ## revised config for MD deepstack above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK 
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0 
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0 # need ot tune?
+    SAFE                    BOOL  FALSE
+END
+
+STACK_ALLDEEP      METADATA     # no cuts, everything in changes after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK 
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   100.0
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0 # need ot tune?
+    SAFE                    BOOL  FALSE
+END
+
+STACK_NIGHTLY_1DG  METADATA                 # Revised MD 8 input nightly stacks and using 1DG convolution
+    OUTPUT.NOCOMP             BOOL  FALSE
+    OUTPUT.LOGFLUX            BOOL  FALSE
+    PSF.INPUT.CLIP.SIMPLE     BOOL  True
+    PSF.INPUT.MAX             F32   12.0    # what FWHM does diffim become mostly useless, if any?
+    PSF.INPUT.CLIP.NSIGMA     F32   1000.0  # want to use up to MAX, but sig could possibly be small?
+    MATCH.REJ                 F32   4.0     # need to tune?
+    SAFE                      BOOL  FALSE
+    PSF.TARGET.AS.MAX         BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32   0.1
+END
+
+STACK_MD_IQ_1DG       METADATA  ## revised config for MD refstacks vs PS1_REFERENCE above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0   # center/edge can vary 1-2 pix, prefer <6 pix but needs to be <10 pix for edges until code improved..
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0  # any change to inputs can greatly impact edge filling factor..
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0   # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     4               # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    TRUE            # HACK for removing bscale offset from input warps because of compression (0.5*BSCALE)
+END
+
+STACK_MD_REF_1DG       METADATA  ## revised config for MD refstacks vs PS1_REFERENCE above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   7.0   # center/edge can vary 1-2 pix, prefer <6 pix but needs to be <7 pix for edges
+    PSF.INPUT.CLIP.NSIGMA   F32   1.0   # sample typically on rising side of distribution (set even smaller?)
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0   # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     4               # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    TRUE            # HACK for removing bscale offset from input warps because of compression (0.5*BSCALE)
+END
+
+STACK_MD_DEEP_1DG     METADATA   ## revised config for MD deepstack above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     30              # Minimum input per pixel 
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    TRUE            # HACK for removing bscale offset from input warps because of compression (0.5*BSCALE)
+END
+
+STACK_ALLDEEP_1DG      METADATA     # no real cuts, for changes after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   14.0    # greater than 14 is more often junk
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.5             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.5             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+END
+
+STACK_MDTHREEPI_DEEP_1DG     METADATA   ## revised config for MD+3PI 
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.01             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     2.5             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+END
+
+
+
+
+STACK_CNP_PV3_IQ_1DG  METADATA       ## revised -- based on STACK_THREEPI/STACK_MD_DEEP_1DG
+    OUTPUT.NOCOMP           BOOL  TRUE 
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ        F32    4.0
+    SAFE		 BOOL	F
+    PSF.TARGET.AS.MAX        BOOL  TRUE   # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1     # set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1          # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5          # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0          # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1          # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2          # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1          # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     3            # Minimum input per pixel     
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels 
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+STACK_CNP_PV3_REF_1DG  METADATA  ## revised CNP PV3 REF stack --
+    OUTPUT.NOCOMP            BOOL  TRUE   # pointed field -- no compression, no logflux 
+    OUTPUT.LOGFLUX           BOOL  FALSE  # 
+    OUTPUT.REPLICATE         BOOL  TRUE
+    STACK.TYPE               STR   DEEP_STACK  
+    PSF.INPUT.CLIP.SIMPLE    BOOL  True
+    PSF.INPUT.MAX            F32   10.0   # CNP large FWHM, center/edge vary 1-2 pix? 
+    PSF.INPUT.CLIP.NSIGMA    F32   0.0    # sample typically on rising side of distribution 
+    PSF.INPUT.THRESH         F32   NAN
+    PSF.INPUT.ASYMMETRY      F32   NAN
+    MATCH.REJ                F32   4.0    # need ot tune?
+    SAFE                     BOOL  FALSE
+    PSF.TARGET.AS.MAX        BOOL  TRUE   # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1     # set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1          # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5          # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0          # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1          # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2          # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1          # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     3            # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels 
+    MASK.BLANKBORDER S32    20           # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE        # MUST be FALSE for PV3
+END
+
+STACK_CNP_PV3_DEEP_1DG  METADATA   ## -- 
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   16.0    # large FWHM images up to 20 --  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0   # do not want to clip really
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     3               # Minimum input per pixel -- more and get crazy structures.. 
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels -- many, dont trust SUSPECT
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3 (PV2 bias hack fix)
+END
+
+
+STACK_MD_PV3_NIGHT_1DG  METADATA   ## Revised MD 8 input NIGHT stacks for PV3 -- no time to test, so similar to original but 1DG 
+    OUTPUT.NOCOMP             BOOL  FALSE
+    OUTPUT.LOGFLUX            BOOL  FALSE
+    PSF.INPUT.CLIP.SIMPLE     BOOL  True
+    PSF.INPUT.MAX             F32   12.0    # what FWHM does diffim become mostly useless, if any?
+    PSF.INPUT.CLIP.NSIGMA     F32   1000.0  # want to use up to MAX, but sig could possibly be small?
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0       # need ot tune?
+    SAFE                    BOOL  TRUE      # Play safe when combining small number of values? 
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    ## -- extra masking not tested and likely not want for small Nin stack
+    #THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    #COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    #COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    #COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    #COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    #IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    #MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels 
+    ## -- 
+    NMINPIX         S32     1               # Minimum input per pixel
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+STACK_MD_PV3_IQ_1DG       METADATA  ## revised config for MD PV3 IQ stacks -- not complete
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0   # center/edge can vary 1-2 pix, prefer <6 pix but needs to be <10 pix for edges until code improved..
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0  # any change to inputs can greatly impact edge filling factor..
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0   # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     4               # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+STACK_MD_PV3_REF_1DG       METADATA  ## revised config for MD PV3 refstacks -- not complete
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   7.0   # center/edge can vary 1-2 pix, prefer <6 pix but needs to be <7 pix for edges
+    PSF.INPUT.CLIP.NSIGMA   F32   1.0   # sample typically on rising side of distribution (set even smaller?)
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0   # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     4               # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+STACK_MD_PV3_DEEP_1DG     METADATA   ## revised config for MD PV3 deepstack -- not complete
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     30              # Minimum input per pixel 
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+
+
+# Recipe overrides for STACK
+STACKPHOT METADATA
+  PSF.MODEL	STR	PS_MODEL_QGAUSS	# Model for PSF match
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc1/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/psastro.config	(revision 42661)
@@ -0,0 +1,880 @@
+	
+# save matched stars?
+PSASTRO.SAVE.REFMATCH      BOOL TRUE  # save refstar matches as table in output smf file
+
+# astrometry matching parameters
+
+# nominal plate scale (units / pixel)
+# XXX we are using pixels here because of the limited dynamic range for 
+# NAXIS1,2 when loaded by addstar.  
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32    1000. # we use stars in a region (4800+2000 pix)^2, a factor of 2 in area
+PSASTRO.GRID.SCALE     F32      50
+PSASTRO.GRID.NSTAR.MAX S32     800 # deprecated 
+PSASTRO.GRID.NREF.MAX  S32    1600 # max stars accepted for grid search from ref catalog (2x as many as the RAW stars, to match area)
+PSASTRO.GRID.NRAW.MAX  S32     800 # max stars accepted for grid search from raw image
+
+PSASTRO.MAX.NRAW      S32      1000   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF      S32      5000   # max stars accepted for fitting (0 for all)
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32     0.25   # pad by this fraction of the full mosaic (may need to be larger for single chips)
+
+# 
+PSASTRO.MIN.INST.MAG.RAW       F32     -15.0   # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32      -8.0   # max instrumental magnitude for stars accepted for fitting
+PSASTRO.GRID.MIN.INST.MAG.RAW  F32     -15.0   # min instrumental magnitude for stars accepted for grid search
+PSASTRO.GRID.MAX.INST.MAG.RAW  F32      -8.0   # max instrumental magnitude for stars accepted for grid search
+
+PSASTRO.GRID.MIN.ANGLE F32 -1.00 # start angle (degrees)
+PSASTRO.GRID.MAX.ANGLE F32 +1.01 # sequence is MIN, MIN + DEL, < MAX, we get -1.0, -0.5, 0.0, 0.5, 1.0
+PSASTRO.GRID.DEL.ANGLE F32  0.50
+
+#
+PSASTRO.GRID.MIN.SCALE F32  1.00
+PSASTRO.GRID.MAX.SCALE F32  1.00
+PSASTRO.GRID.DEL.SCALE F32  0.01
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.RADIUS.N0 F32    90
+PSASTRO.MATCH.RADIUS.N1 F32    60
+PSASTRO.MATCH.RADIUS.N2 F32    30
+PSASTRO.MATCH.RADIUS.N3 F32    20
+PSASTRO.MATCH.RADIUS.N4 F32    20
+PSASTRO.MATCH.RADIUS.N5 F32    10
+PSASTRO.MATCH.RADIUS.N6 F32    10
+PSASTRO.MATCH.RADIUS.N7 F32    5
+PSASTRO.MATCH.FIT.NITER S32    8
+
+# for iterations >= N, require a single match per reference
+PSASTRO.MATCH.UNIQ.ITER S32     4 
+
+# XXX Test for taurus
+PSASTRO.GRID.MIN.SIGMA  F32  1.0
+PSASTRO.IGNORE          STR  SATURATED,CRLIMIT,DEFECT,BLEND,FAIL
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32    150
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+PSASTRO.USE.MODEL             BOOL     TRUE
+
+# apply Koppenhoefer Correction to this camera?
+KH.CORRECT.APPLY	      BOOL     TRUE
+KH.CORRECT.ENDDATE	      STR      2011/05/11,00:00:00
+
+# PSASTRO.FIX.CHIPS             BOOL     TRUE
+PSASTRO.PIXEL.TOLERANCE       F32      3.0
+PSASTRO.ANGLE.TOLERANCE       F32      1.0
+
+# Mosaic Astrometry options
+PSASTRO.MOSAIC.MODE         BOOL   TRUE
+
+# for iterations >= N, require a single match per reference
+PSASTRO.MOSAIC.CHIP.NITER     S32      5  # fit clipping iterations (NOTE: last iteration is NITER, not NITER - 1)
+PSASTRO.MOSAIC.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+PSASTRO.MOSAIC.UNIQ.ITER      S32      3  # for iterations >= N, require a single match per reference
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    0.00 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    0.00 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.00 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.00 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N4 F32    0.00 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N5 F32    0.30 # max allowed error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.MAX.STDEV.N0 F32    0.00 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N1 F32    0.00 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N2 F32    0.00 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N3 F32    0.00 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N4 F32    0.00 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N5 F32    0.00 # max allowed stdev for valid solution (arcsec)
+
+# mosaic radius match in pixels (do these make sense?)
+PSASTRO.MOSAIC.RADIUS.N0    F32    5
+PSASTRO.MOSAIC.RADIUS.N1    F32    10
+PSASTRO.MOSAIC.RADIUS.N2    F32    10
+PSASTRO.MOSAIC.RADIUS.N3    F32    5
+PSASTRO.MOSAIC.RADIUS.N4    F32    3
+PSASTRO.MOSAIC.RADIUS.N5    F32    3
+
+PSASTRO.MOSAIC.CHIP.ORDER     S32      1  # limit chip-fit order to 1
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N5  S32      3 # fit order (-1 means use default)
+
+# we need to allow a loose fit if we are fitting to 2mass (50mas internal error -> 100mas limit?)
+# if we are fitting against quality digital data, we can require tighter constraints
+
+PSASTRO.MODEL.REF.CHIP        STR      XY33
+
+PSASTRO.MODEL.SET.BORESITE    BOOL     FALSE
+PSASTRO.MODEL.BORESITE.X      F32      -62.0
+PSASTRO.MODEL.BORESITE.Y      F32     -139.0
+#PSASTRO.MODEL.BORESITE.X      F32      -200.0
+#PSASTRO.MODEL.BORESITE.Y      F32     -300.0
+
+# maximum accepted fwhm_major (moved from camera.config
+PSASTRO.MAX.ALLOWED.FWHM              F32       12
+
+# *** make sure the choice of CATDIR (dvo database) contains the photcodes desired below
+# PSASTRO.CATDIR              STR      SYNTH.GRIZY 
+# PSASTRO.CATDIR		STR	PS1.REF.20120503
+# PSASTRO.CATDIR               STR     PS1.REF.20120524
+# PSASTRO.CATDIR               STR     PS1.REF.20140605
+#PSASTRO.CATDIR               STR     PS1.REF.20140713
+PSASTRO.CATDIR               STR     PS1.REF.20170919
+
+DVO.GETSTAR.PHOTCODE        STR      i
+# EAM 2021.11.11: return to 10k (was 3k on processing tag since July swap)
+DVO.GETSTAR.MAX.RHO         F32      10000.0
+DVO.GETSTAR.MIN.MAG         F32     -10.0
+DVO.GETSTAR.MIN.MAG.INST    F32     -45.0
+
+# rather than mean, use specified EDGE:
+ZERO.POINT.USE.MEAN	      	BOOL     TRUE
+ZERO.POINT.EDGE.FRACTION      	F32      0.9
+ZERO.POINT.EDGE.SAMPLE        	S32      25
+ZERO.POINT.EDGE.SAMPLE.FRACTION F32      0.1
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 25.013
+  PHOTCODE STR g
+  GHOST_MAX_MAG                   F32 -16.5
+  GLINT_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32 24.840
+  PHOTCODE STR r
+  GHOST_MAX_MAG                   F32 -20.0
+  GLINT_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+  ZEROPT   F32 24.711
+  PHOTCODE STR i
+  GHOST_MAX_MAG                   F32 -22.0
+  GLINT_MAX_MAG                   F32 -23.4
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+  ZEROPT   F32 24.300
+  PHOTCODE STR z
+  GHOST_MAX_MAG                   F32 -22.0
+  GLINT_MAX_MAG                   F32 -23.4
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR y
+  ZEROPT   F32 23.570
+  PHOTCODE STR y
+  GHOST_MAX_MAG                   F32 -21.5
+  GLINT_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR w
+  ZEROPT   F32 26.000
+  PHOTCODE STR r
+  GHOST_MAX_MAG                   F32 -20.4
+  GLINT_MAX_MAG                   F32 -24.4
+END
+
+REFSTAR_MASK                    BOOL TRUE
+REFSTAR_MASK_MAX_MAG            F32 -15.0
+
+# TdB20200430: Updated satspike position angle offset
+REFSTAR_MASK_SATSTAR_POS_ZERO   F32  -0.79451
+PSASTRO.MODEL.ROT.PARITY      S32     1
+
+#TdB20200229: The size of saturated star circles should be an exponential for gpc2
+#rad(mag) = REFSTAR_MASK_SATSTAR_RAD_OFFSET + REFSTAR_MASK_SATSTAR_EXP**(REFSTAR_MASK_SATSTAR_MAG_MAX-mag)
+REFSTAR_MASK_SATSTAR_MAG_MAX    F32 -11.363
+REFSTAR_MASK_SATSTAR_RAD_OFFSET F32  17.631
+REFSTAR_MASK_SATSTAR_EXP        F32   1.493
+
+REFSTAR_MASK_SATSPIKE_MAG_SLOPE F32  0.096
+REFSTAR_MASK_SATSPIKE_MAG_MAX   F32  7.35
+REFSTAR_MASK_SATSPIKE_OFFSET    F32 200.0
+REFSTAR_MASK_SATSPIKE_WIDTH     F32   8.00
+# Width control. if L > L0, W = W0 + (L - L0) * slope
+REFSTAR_MASK_SATSPIKE_L0        F32  200.0
+REFSTAR_MASK_SATSPIKE_WIDTH_SLOPE F32 0.01
+
+# pair 1 (longer)
+# REFSTAR_MASK_SATSPIKE_MAG_MAX1  F32 -16.20
+
+# pair 2 (shorter)
+# REFSTAR_MASK_SATSPIKE_MAG_MAX2  F32 -17.70
+
+
+REFSTAR_MASK_BLEED              BOOL FALSE
+REFSTAR_MASK_BLEED_MAG_MAX      F32 -15.0
+REFSTAR_MASK_BLEED_MAG_SLOPE    F32   5.0
+
+PSASTRO.EXTRACT METADATA
+ EXTRACT_MAX_MAG                F32  -19.0
+ DVO.GETSTAR.MAX.RHO            F32  300.0
+END
+
+# ghost model file is relative to PATH (eg, ippconfig directory)
+GHOST_MODEL                     STR  gpc1/ghost.model.mdc
+# GHOST_MAX_MAG                   F32 -20.0
+
+REFSTAR_COUNT_GHOSTS            BOOL TRUE
+REFSTAR_MASK_GHOST              BOOL TRUE
+PSASTRO.SAVE.GHOSTS             BOOL TRUE  # save ghost positions as table in output smf file
+
+#TdB20200305: The length of glints as function of mag is recomputed for gpc2
+#glint_length(mag) = GLINT_LENGTH_MAG_SLOPE*(GLINT_LENGTH_MAG_ZERO-mag)
+GLINT_LENGTH_MAG_SLOPE          F32 1901.0
+GLINT_LENGTH_MAG_ZERO           F32 -16.8
+#TdB20200308: The length of glints also depends on position off the focal plane (perpendicular to pixel FPA), out to GLINT_LENGTH_POS_CUT
+#glint_length(pos) = GLINT_LENGTH_POS_SLOPE*(GLINT_LENGTH_POS_REF-pos)
+GLINT_LENGTH_POS_SLOPE          F32 0.00019
+GLINT_LENGTH_POS_REF            F32 33821.
+GLINT_LENGTH_POS_CUT            F32 30700.
+GLINT_LENGTH_MIN_FPA            F32 1500.0
+#TdB20200312: The angle that glints have depends on position along the focal plane (parallel to pixel FPA)
+#glint_angle(pos) = GLINT_ANGLE_SLOPE*(GLINT_ANGLE_POS_REF-(pos/1000))
+GLINT_ANGLE_POS_SLOPE           F32  0.07903  
+GLINT_ANGLE_POS_REF             F32 -575.5
+GLINT_WIDTH                     F32  80.0
+
+# save glint positions?
+PSASTRO.SAVE.GLINTS             BOOL TRUE  # save glint positions as table in output smf file
+
+
+PR_RECIPE METADATA
+  REFSTAR_MASK                    BOOL FALSE
+END
+
+REFSTAR_MASK_GLINTS		BOOL  TRUE
+GLINT_MAX_MAG                   F32 -21.
+GLINT.REGION			MULTI
+
+#TdB20200514: GPC1 does not show any glints coming from the left or right, at all, after searching thousands of images. So, shrinking the bounding boxes to zero.
+GLINT.REGION			METADATA
+  REGION			STR  [-38000:-38000,-20000:+20000]
+  GLINT.TYPE                    STR  LEFT
+END
+
+GLINT.REGION			METADATA
+  REGION			STR  [+38000:+38000,-20000:+20000]
+  GLINT.TYPE                    STR  RIGHT
+END
+
+GLINT.REGION			METADATA
+  REGION			STR  [-20000:+20000,+24000:+38000:]
+  GLINT.TYPE                    STR  TOP
+END
+
+GLINT.REGION			METADATA
+  REGION			STR  [-20000:+20000,-38000:-24000]
+  GLINT.TYPE                    STR  BOTTOM
+END
+
+REFSTAR_MASK_CROSSTALK_MAG_SLOPE F32   3.44
+REFSTAR_MASK_CROSSTALK_MAG_MAX   F32 -13.47
+CROSSTALK_MAX_MAG                F32  20.0
+CROSSTALK_MASK                   BOOL TRUE
+
+# crosstal rules file is relative to PATH (eg, ippconfig directory)
+CROSSTALK_FILE                     STR  gpc1/crosstalk_rules.mdc
+
+PS1_REFERENCE METADATA
+  PSASTRO.CATDIR              STR      PS1.GRIZY
+#   PSASTRO.CATDIR	       STR	PS1.REF.20120325
+  ## PHOTCODE.DATA MULTI UPDATE
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR g
+  ##   ZEROPT   F32 24.541
+  ##   PHOTCODE STR g
+  ##   GHOST_MAX_MAG                   F32 -20.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR r
+  ##   ZEROPT   F32 24.705.1
+  ##   PHOTCODE STR r
+  ##   GHOST_MAX_MAG                   F32 -20.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR i
+  ##   ZEROPT   F32 24.580
+  ##   PHOTCODE STR i
+  ##   GHOST_MAX_MAG                   F32 -25.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR z
+  ##   ZEROPT   F32 24.201
+  ##   PHOTCODE STR z
+  ##   GHOST_MAX_MAG                   F32 -25.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR y
+  ##   ZEROPT   F32 23.260
+  ##   PHOTCODE STR y
+  ##   GHOST_MAX_MAG                   F32 -25.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR w
+  ##   ZEROPT   F32 26.0
+  ##   PHOTCODE STR r
+  ##   GHOST_MAX_MAG                   F32 -20.0
+  ## END
+END
+
+### MOPS wants dynamic masking turned off
+MOPS.TEST	METADATA
+	REFSTAR_MASK	BOOL	FALSE
+END
+
+SAS_REFERENCE METADATA
+    PSASTRO.CATDIR                 STR  SAS.REF.V1
+END
+
+# these values worked to get solutions for the STS observations from 2009 & 2010
+# these field has damage from excessive persistence and the impact of burntool
+STS_DATASET  METADATA
+
+  # need to boost the total number of stars available for the fit:
+  # allow more stars per chip and boost the density to which we query
+  # from the reference database.
+  PSASTRO.MAX.NRAW               S32      2000   # 
+  PSASTRO.MAX.NREF               S32      8000   # max stars accepted for fitting (0 for all)
+  # use wider range of magnitudes for grid search
+  PSASTRO.GRID.MIN.INST.MAG.RAW  F32     -15.0   # min instrumental magnitude for stars accepted for fitting
+  PSASTRO.GRID.MAX.INST.MAG.RAW  F32     -11.0   # max instrumental magnitude for stars accepted for fitting
+
+  # reduce the magnitude range to avoid the bright stars have bad astrometry problem
+  PSASTRO.MIN.INST.MAG.RAW       F32     -12.0   # min instrumental magnitude for stars accepted for fitting
+  PSASTRO.MAX.INST.MAG.RAW       F32     -11.0   # min instrumental magnitude for stars accepted for fitting
+
+  DVO.GETSTAR.MIN.MAG.INST   F32     -15.0
+  DVO.GETSTAR.MAX.RHO        F32      60000.0
+  
+  # the crowding is high, so unless we restrict somewhat tightly early
+  # on, we get very noisy (and wrong) fits.  These values are probably
+  # too restrictive for the general observation: we would risk missing
+  # matches.
+
+  # single-chip radius match in pixels
+  PSASTRO.MATCH.RADIUS.N0 F32   10
+  PSASTRO.MATCH.RADIUS.N1 F32    5
+  PSASTRO.MATCH.RADIUS.N2 F32    5
+  PSASTRO.MATCH.RADIUS.N3 F32    5
+  PSASTRO.MATCH.RADIUS.N4 F32    3
+  PSASTRO.MATCH.RADIUS.N5 F32    3
+  PSASTRO.MATCH.RADIUS.N6 F32    5
+  PSASTRO.MATCH.RADIUS.N7 F32    5
+  PSASTRO.MATCH.FIT.NITER S32    5
+
+  # 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
+#   PSASTRO.CATDIR               STR     PS1.REF.20140605
+#   PSASTRO.CATDIR               STR     PS1.REF.20140713
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+   ZERO.POINT.USE.MEAN		BOOL	TRUE  
+END
+
+CNP_DATASET METADATA
+    ZERO.POINT.USE.MEAN         BOOL    TRUE
+    PSASTRO.MAX.ALLOWED.FWHM    F32     25
+END
+
+LAP_ASTRO METADATA
+#  PSASTRO.CATDIR                STR      3PI.20110505.REFCAT
+#  PSASTRO.CATDIR		 STR	  SYNTH.GRIZY
+#  PSASTRO.CATDIR		 STR     PS1.REF.20120503
+#  PSASTRO.CATDIR               STR     PS1.REF.20120524
+#   PSASTRO.CATDIR               STR     PS1.REF.20140605
+#  PSASTRO.CATDIR		 STR	 PS1.REF.20140713
+   PSASTRO.CATDIR		 STR	 PS1.REF.20170919
+   ZERO.POINT.USE.MEAN		BOOL	TRUE  
+END
+
+SYNTH_CAT METADATA
+   PSASTRO.CATDIR		STR SYNTH.GRIZY
+END
+
+POLE_REFCAT METADATA
+   PSASTRO.CATDIR		STR  PS1.GAIA.POLEREF.20190619
+   ZERO.POINT.USE.MEAN		     BOOL TRUE  
+   PSASTRO.GRID.MIN.ANGLE       F32  -20
+   PSASTRO.GRID.MAX.ANGLE       F32  +20
+   PSASTRO.GRID.DEL.ANGLE       F32   0.5
+   PSASTRO.FIELD.PADDING        F32   0.5
+END
+
+SNIA_ASTRO METADATA
+   ZERO.POINT.USE.MEAN         BOOL  TRUE
+   PSASTRO.MAX.ALLOWED.FWHM    F32   24
+#   PSASTRO.CATDIR              STR   PS1.REF.20140713
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+END
+
+QUB_ASTRO METADATA
+   ZERO.POINT.USE.MEAN         BOOL  TRUE
+   PSASTRO.MAX.ALLOWED.FWHM    F32   24
+#   PSASTRO.CATDIR              STR   PS1.REF.20140713
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+END
+
+YSE_ASTRO METADATA
+   ZERO.POINT.USE.MEAN         BOOL  TRUE
+   PSASTRO.MAX.ALLOWED.FWHM    F32   24 
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+END
+
+#Recipe for processing engineering exposures
+ENGI_ASTRO METADATA
+   ZERO.POINT.USE.MEAN         BOOL  TRUE
+   PSASTRO.MAX.ALLOWED.FWHM    F32   30
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+END
+
+MD_ASTRO METADATA
+   ZERO.POINT.BY.EXPOSURE      BOOL  TRUE
+   ZERO.POINT.USE.MEAN         BOOL  TRUE
+   DVO.GETSTAR.MAX.RHO         F32   6000.0  # was globally changed to 10k, seems >6k more than 1600 NREF
+   PSASTRO.GRID.NREF.MAX       S32   1600    # max stars for grid search from ref catalog
+   PSASTRO.GRID.NRAW.MAX       S32   800     # max stars for grid search from raw/image  
+   DVO.GETSTAR.MIN.MAG         F32   12.0    # leave similar to default, MD in marginal weather and can lose 1-3 mags 
+   DVO.GETSTAR.MIN.MAG.INST    F32   -25.0
+#   PSASTRO.CATDIR              STR   PS1.REF.20140713
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+   ## refcat may be okay astrom but not faint phot -- so need to be able to further limit by ZP 
+   ## -- concern w/ new refcat >20 extra sources w/ larger merr over-dominating scatter in ZP 
+   ## -- CLAMP will limit both astrom and zp -- 
+   REFSTAR_CLAMP_MAG_MAX       F32   22.0
+   REFSTAR.ZP.MIN.MAG          F32   12.0
+   REFSTAR.ZP.MAX.MAG          F32   19.0
+   ## for ZP need extra limit by filter to avoid poorer photometry scatter on faint end
+   ## -- cannot restrict on bright end due to possible marginal nights
+   ## -- set for merr<0.02-0.03 in refcat, ~similar for each MD field
+#   PHOTCODE.DATA MULTI UPDATE
+   PHOTCODE.DATA MULTI   
+   PHOTCODE.DATA METADATA
+     FILTER   STR g
+     PHOTCODE STR g
+     REFSTAR.ZP.MAX.MAG    F32  19.0
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR r
+     PHOTCODE STR r
+     REFSTAR.ZP.MAX.MAG    F32  19.0
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR i
+     PHOTCODE STR i
+     REFSTAR.ZP.MAX.MAG    F32  18.5
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR z
+     PHOTCODE STR z
+     REFSTAR.ZP.MAX.MAG    F32  18.5
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR y
+     PHOTCODE STR y
+     REFSTAR.ZP.MAX.MAG    F32  17.5
+   END
+END
+
+
+CNP_ASTRO_PV3 METADATA
+   PSASTRO.MAX.ALLOWED.FWHM    F32   25  # larger number typical >12, so include 2x larger
+   PSASTRO.CATDIR              STR   PS1.REF.20140713
+   PSASTRO.GRID.MIN.ANGLE      F32   -20
+   PSASTRO.GRID.MAX.ANGLE      F32   +20
+   PSASTRO.GRID.DEL.ANGLE      F32   0.5
+   PSASTRO.FIELD.PADDING       F32   0.5
+   DVO.GETSTAR.MAX.RHO         F32   5000.0  # globally changed to 10k, huge numbers in soln and larger sigma
+   DVO.GETSTAR.MIN.MAG         F32   8.0     # can go brighter in marginal nights (like MD done every night as possible) 
+   PSASTRO.GRID.NREF.MAX       S32   1600    # defaults 
+   PSASTRO.GRID.NRAW.MAX       S32   800    
+   PSASTRO.MIN.INST.MAG.RAW       F32     -15.0   # min instrumental magnitude for stars accepted for fitting
+   PSASTRO.MAX.INST.MAG.RAW       F32      -8.5   # reduce instrumental faint end a bit (cuts most if rho>5k anyways)
+   PSASTRO.GRID.MIN.INST.MAG.RAW  F32     -15.0   # min instrumental magnitude for stars accepted for grid search
+   PSASTRO.GRID.MAX.INST.MAG.RAW  F32      -8.0   # max instrumental magnitude for stars accepted for grid search
+
+   ZERO.POINT.USE.MEAN         BOOL  TRUE  
+   ## refcat -- want to be able to further limit for ZP, general settings 
+   ## -- concern w/ new refcat >20 extra sources w/ larger merr can over-dominating scatter in ZP 
+   ## -- CLAMP will limit both astrom and zp -- CNP are shorter exposures 
+   REFSTAR_CLAMP_MAG_MAX       F32   20.0  
+   REFSTAR.ZP.MIN.MAG          F32   8.0   
+   REFSTAR.ZP.MAX.MAG          F32   19.0
+   ## for ZP need extra restriction by filter to avoid poorer photometry scatter on faint end
+   ## -- ZP is by exposure so can easily reduce numbers  
+   ## -- cannot restrict on bright end due to possible marginal nights
+   ## -- set for merr<0.03 in refcat, similar to MD
+#   PHOTCODE.DATA MULTI UPDATE
+   PHOTCODE.DATA MULTI   
+   PHOTCODE.DATA METADATA
+     FILTER   STR g
+     PHOTCODE STR g
+     #REFSTAR.ZP.MAX.MAG    F32  19.0
+     REFSTAR.ZP.MAX.MAG    F32  18.0  # changed after PV3.20141111 run to match raw merr
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR r
+     PHOTCODE STR r
+     REFSTAR.ZP.MAX.MAG    F32  18.0
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR i
+     PHOTCODE STR i
+     REFSTAR.ZP.MAX.MAG    F32  18.0
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR z
+     PHOTCODE STR z
+     REFSTAR.ZP.MAX.MAG    F32  18.0
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR y
+     PHOTCODE STR y
+     REFSTAR.ZP.MAX.MAG    F32  17.0
+   END
+END
+
+MD_ASTRO_PV3 METADATA
+   ZERO.POINT.BY.EXPOSURE      BOOL  TRUE
+   ZERO.POINT.USE.MEAN         BOOL  TRUE
+   DVO.GETSTAR.MAX.RHO         F32   6000.0  # was globally changed to 10k
+   PSASTRO.GRID.NREF.MAX       S32   1600    # max stars for grid search from ref catalog
+   PSASTRO.GRID.NRAW.MAX       S32   800     # max stars for grid search from raw/image  
+   DVO.GETSTAR.MIN.MAG         F32   12.0    # leave similar to default, MD in marginal weather and can lose 1-3 mags 
+   DVO.GETSTAR.MIN.MAG.INST    F32   -25.0
+   PSASTRO.CATDIR              STR   PS1.REF.20140713
+   ## refcat may be okay astrom but not faint phot -- so need to be able to further limit by ZP 
+   ## -- concern w/ new refcat >20 extra sources w/ larger merr over-dominating scatter in ZP 
+   ## -- CLAMP will limit both astrom and zp -- 
+   REFSTAR_CLAMP_MAG_MAX       F32   22.0
+   REFSTAR.ZP.MIN.MAG          F32   12.0
+   REFSTAR.ZP.MAX.MAG          F32   19.0
+   ## for ZP need extra limit by filter to avoid poorer photometry scatter on faint end
+   ## -- cannot restrict on bright end due to possible marginal nights
+   ## -- set for merr<0.02-0.03 in refcat, ~similar for each MD field
+#   PHOTCODE.DATA MULTI UPDATE
+   PHOTCODE.DATA MULTI   
+   PHOTCODE.DATA METADATA
+     FILTER   STR g
+     PHOTCODE STR g
+     REFSTAR.ZP.MAX.MAG    F32  19.0
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR r
+     PHOTCODE STR r
+     REFSTAR.ZP.MAX.MAG    F32  19.0
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR i
+     PHOTCODE STR i
+     REFSTAR.ZP.MAX.MAG    F32  18.5
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR z
+     PHOTCODE STR z
+     REFSTAR.ZP.MAX.MAG    F32  18.5
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR y
+     PHOTCODE STR y
+     REFSTAR.ZP.MAX.MAG    F32  17.5
+   END
+END
+
+
+TEST_REFCAT METADATA
+   PSASTRO.CATDIR		STR /data/ipp064.0/ipp/ippRefs/catdir.refcat.20120524.v0
+END
+
+STATICSKY_TESTCAL   METADATA
+   REFSTAR_MASK                BOOL FALSE
+   PSASTRO.SAVE.REFMATCH       BOOL FALSE
+   PSASTRO.FIX.CHIPS           BOOL FALSE
+   PSASTRO.USE.MODEL           BOOL FALSE
+   PSASTRO.MOSAIC.MODE         BOOL FALSE
+   DVO.GETSTAR.FIXED.ZEROPT    F32   25.0
+
+   PSASTRO.CATDIR               STR     PS1.REF.20140605
+#  PSASTRO.CATDIR               	STR     PS1.REF.20120524
+   ZERO.POINT.USE.MEAN          	BOOL    TRUE
+   PSASTRO.MAX.NRAW 			S32	0 
+   PSASTRO.GRID.NRAW.MAX 		S32	50000 
+   PSASTRO.MIN.INST.MAG.RAW 		F32	-21.0
+   PSASTRO.MAX.INST.MAG.RAW 		F32	-15.0 
+   PSASTRO.GRID.MIN.INST.MAG.RAW 	F32	-21.0 
+   PSASTRO.GRID.MAX.INST.MAG.RAW 	F32	-15.0  
+   DVO.GETSTAR.MIN.MAG.INST 		F32	-14.0
+END
+
+STATICSKY_CAL   METADATA
+    REFSTAR_MASK                BOOL FALSE
+    PSASTRO.SAVE.REFMATCH       BOOL FALSE
+    PSASTRO.FIX.CHIPS           BOOL FALSE
+    PSASTRO.USE.MODEL           BOOL FALSE
+    PSASTRO.MOSAIC.MODE         BOOL FALSE
+    DVO.GETSTAR.FIXED.ZEROPT    F32   25.0
+    DVO.GETSTAR.MIN.MAG.INST	F32   -15.0
+#   PSASTRO.CATDIR                       STR     PS1.REF.20120524
+#   PSASTRO.CATDIR               STR     PS1.REF.20140605
+#    PSASTRO.CATDIR               STR  PS1.REF.20140713
+    PSASTRO.CATDIR               STR     PS1.REF.20170919
+    ZERO.POINT.USE.MEAN                  BOOL    TRUE
+
+    ## for skycell, radius shouldn't need to be as large as 90 pixel default. deeper stacks, crowded fields can be problems
+    PSASTRO.MATCH.RADIUS.N0 F32    15
+    PSASTRO.MATCH.RADIUS.N1 F32    10
+    PSASTRO.MATCH.RADIUS.N2 F32    5
+    PSASTRO.MATCH.RADIUS.N3 F32    1
+    PSASTRO.MATCH.RADIUS.N4 F32    0.5
+    PSASTRO.MATCH.FIT.NITER S32    5
+
+    PSASTRO.MAX.ERROR      F32      0.2  # in arcsec units, if larger than 0.2" on skycell then a problem..
+
+    TRANSFORM.GALAXY.SHAPE.ERRORS  BOOL T
+END
+
+STATICSKY_POLE   METADATA
+    REFSTAR_MASK                BOOL FALSE
+    PSASTRO.SAVE.REFMATCH       BOOL FALSE
+    PSASTRO.FIX.CHIPS           BOOL FALSE
+    PSASTRO.USE.MODEL           BOOL FALSE
+    PSASTRO.MOSAIC.MODE         BOOL FALSE
+    DVO.GETSTAR.FIXED.ZEROPT    F32   25.0
+    DVO.GETSTAR.MIN.MAG.INST	F32  -15.0
+#   PSASTRO.CATDIR              STR  PS1.REF.20120524
+#   PSASTRO.CATDIR              STR  PS1.REF.20140605
+#   PSASTRO.CATDIR              STR  PS1.REF.20140713
+#   PSASTRO.CATDIR              STR  PS1.REF.20170919
+    PSASTRO.CATDIR		STR  PS1.GAIA.POLEREF.20190619
+    ZERO.POINT.USE.MEAN         BOOL TRUE
+
+    ## for skycell, radius shouldn't need to be as large as 90 pixel default. deeper stacks, crowded fields can be problems
+    PSASTRO.MATCH.RADIUS.N0 F32    15
+    PSASTRO.MATCH.RADIUS.N1 F32    10
+    PSASTRO.MATCH.RADIUS.N2 F32    5
+    PSASTRO.MATCH.RADIUS.N3 F32    1
+    PSASTRO.MATCH.RADIUS.N4 F32    0.5
+    PSASTRO.MATCH.FIT.NITER S32    5
+
+    PSASTRO.MAX.ERROR      F32      0.2  # in arcsec units, if larger than 0.2" on skycell then a problem..
+
+    TRANSFORM.GALAXY.SHAPE.ERRORS  BOOL T
+END
+
+# revised setup for MD nightly stack inputs, should work for case of N~2-30
+# - similar to DEEPCAL except for MIN.NSTAR 5 to attemp more edge skycells if poorer
+STATICSKY_NIGHTCAL   METADATA
+#   PSASTRO.CATDIR                  STR   PS1.REF.20120524  # reset here to ensure same catalog is used when reprocessing set uniformly
+#   PSASTRO.CATDIR                  STR   PS1.REF.20140605 (BAD catalog)
+#   PSASTRO.CATDIR                  STR   PS1.REF.20140713
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+   REFSTAR_MASK                    BOOL  FALSE
+   PSASTRO.SAVE.REFMATCH           BOOL  FALSE
+   PSASTRO.FIX.CHIPS               BOOL  FALSE
+   PSASTRO.USE.MODEL               BOOL  FALSE
+   PSASTRO.MOSAIC.MODE             BOOL  FALSE
+   ZERO.POINT.USE.MEAN             BOOL  TRUE
+   PSASTRO.FIELD.PADDING           F32   0.01   # skycells are well defined, don't need large padding. 1% of 6400 is 64 pixels
+   PSASTRO.MAX.NRAW                S32   1000   # include more than MAX.NREF to account for extras like false-positives
+   PSASTRO.MAX.NREF            	   S32   500   # if edge skycell ~5% then want >50 to match (hit ~40% in normal field matches)
+   PSASTRO.MIN.INST.MAG.RAW        F32   -25.0  # 
+   PSASTRO.MAX.INST.MAG.RAW        F32   -5.0
+   PSASTRO.GRID.SEARCH 		   BOOL  FALSE  # skycell/stack and astrom well known, when used could cause problems and not help
+   #PSASTRO.GRID.NRAW.MAX           S32   2000
+   #PSASTRO.GRID.NREF.MAX 	    S32   2000
+   #PSASTRO.GRID.MIN.INST.MAG.RAW   F32   -21.0
+   #PSASTRO.GRID.MAX.INST.MAG.RAW   F32   -14.0
+   DVO.GETSTAR.MAX.RHO		   F32	 6000.0  # slightly larger than MAX.NREF 
+   DVO.GETSTAR.MIN.MAG.INST        F32   -25.0   # set absurd range to cover large range of exptime, then clamp...
+   DVO.GETSTAR.MIN.MAG		   F32	 15.0    # only used if keyword problem
+   REFSTAR_CLAMP_MAG_MIN 	   F32	 15.0    # saturation in MD ~14 even in y-band, so toss out brighter in the list
+   DVO.GETSTAR.FIXED.ZEROPT        F32   0.0     # not really needed, exptime overly dominates
+  
+   ## for skycell/stack astrom well known, radius shouldn't need to be as large as 90 pixel default. in deeper stacks can be problems
+   PSASTRO.MATCH.RADIUS.N0         F32   5 
+   PSASTRO.MATCH.RADIUS.N1 	   F32   3 
+   PSASTRO.MATCH.RADIUS.N2 	   F32   1
+   PSASTRO.MATCH.RADIUS.N3 	   F32   0.5
+   PSASTRO.MATCH.FIT.NITER 	   S32   4 
+   PSASTRO.MAX.ERROR       	   F32   0.2  # in arcsec units, still liberal limit for well known astrometry for skycells
+   PSASTRO.MIN.NSTAR       	   S32   5    # edges may not have many and require special treatment 
+END
+
+
+# revised setup for DEEP/MDS stacks with range of inputs, should work for N~2(edges)--500 inputs with large MIN/MAX.INST.MAG.RAW
+STATICSKY_DEEPCAL   METADATA
+   #PSASTRO.CATDIR                  STR   PS1.REF.20120524  # reset here to ensure same catalog is used when reprocessing set uniformly
+   #PSASTRO.CATDIR                  STR   PS1.REF.20140605  # ensure same catalog is used when reprocessing MD set uniformly (BAD catalog)
+#   PSASTRO.CATDIR                  STR   PS1.REF.20140713 
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+   REFSTAR_MASK                    BOOL  FALSE
+   PSASTRO.SAVE.REFMATCH           BOOL  FALSE
+   PSASTRO.FIX.CHIPS               BOOL  FALSE
+   PSASTRO.USE.MODEL               BOOL  FALSE
+   PSASTRO.MOSAIC.MODE             BOOL  FALSE
+   ZERO.POINT.USE.MEAN             BOOL  TRUE
+   PSASTRO.FIELD.PADDING           F32   0.01   # skycells are well defined, don't need large padding. 1% of 6400 is 64 pixels
+   PSASTRO.MAX.NRAW                S32   1500   # include more than MAX.NREF to account for extras like false-positives
+   PSASTRO.MAX.NREF            	   S32   1000   # if edge skycell ~10% then try ~50 to match. increase to help odd bulk offsets
+   PSASTRO.MIN.INST.MAG.RAW        F32   -25.0  # 
+   PSASTRO.MAX.INST.MAG.RAW        F32   -5.0
+   PSASTRO.GRID.SEARCH 		   BOOL  FALSE  # skycell/stack and astrom well known, when used could cause problems and not help
+   #PSASTRO.GRID.NRAW.MAX           S32   2000
+   #PSASTRO.GRID.NREF.MAX 	    S32   2000
+   #PSASTRO.GRID.MIN.INST.MAG.RAW   F32   -21.0
+   #PSASTRO.GRID.MAX.INST.MAG.RAW   F32   -14.0
+   DVO.GETSTAR.MAX.RHO		   F32	 6000.0  # N/sqdeg, slightly larger than MAX.NREF 
+   DVO.GETSTAR.MIN.MAG.INST        F32   -25.0   # set absurd range to cover large range of exptime, then clamp...
+   DVO.GETSTAR.MIN.MAG		   F32	 16.5    # only used if keyword problem so also using CLAMP_MAG_MIN
+   REFSTAR_CLAMP_MAG_MIN 	   F32	 16.5    # saturation in MD ~14 even in y-band, so toss out brighter in the list. seeing offset in brighter stars
+   DVO.GETSTAR.FIXED.ZEROPT        F32   0.0     # not really needed, exptime overly dominates
+  
+   ## for skycell/stack astrom well known, radius shouldn't need to be as large as 90 pixel default. in deeper stacks can be problems
+   PSASTRO.MATCH.RADIUS.N0         F32   5 
+   PSASTRO.MATCH.RADIUS.N1 	   F32   3 
+   PSASTRO.MATCH.RADIUS.N2 	   F32   1
+   PSASTRO.MATCH.RADIUS.N3 	   F32   0.5
+   PSASTRO.MATCH.FIT.NITER 	   S32   4 
+   PSASTRO.MAX.ERROR       	   F32   0.2  # in arcsec units, still liberal limit for well known astrometry for skycells
+   PSASTRO.MIN.NSTAR       	   S32   10   # edges may not have many and require special treatment 
+
+   KH.CORRECT.APPLY              BOOL     FALSE
+END
+
+## MD version
+## revised setup for DEEP/MDS stacks with range of inputs, should work for N~2(edges)--500 inputs with large MIN/MAX.INST.MAG.RAW
+STATICSKY_MD_DEEPCAL   METADATA
+   #PSASTRO.CATDIR                  STR   PS1.REF.20120524  # reset here to ensure same catalog is used when reprocessing set uniformly
+   #PSASTRO.CATDIR                  STR   PS1.REF.20140605  # ensure same catalog is used when reprocessing MD set uniformly (BAD catalog)
+   PSASTRO.CATDIR                  STR   PS1.REF.20140713 
+   REFSTAR_MASK                    BOOL  FALSE
+   PSASTRO.SAVE.REFMATCH           BOOL  FALSE
+   PSASTRO.FIX.CHIPS               BOOL  FALSE
+   PSASTRO.USE.MODEL               BOOL  FALSE
+   PSASTRO.MOSAIC.MODE             BOOL  FALSE
+   ZERO.POINT.USE.MEAN             BOOL  TRUE
+   PSASTRO.FIELD.PADDING           F32   0.01   # skycells are well defined, don't need large padding. 1% of 6400 is 64 pixels
+   PSASTRO.MAX.NRAW                S32   1500   # include more than MAX.NREF to account for extras like false-positives
+   PSASTRO.MAX.NREF            	   S32   1000   # if edge skycell ~10% then try ~50 to match. increase to help odd bulk offsets
+   PSASTRO.MIN.INST.MAG.RAW        F32   -25.0  # 
+   PSASTRO.MAX.INST.MAG.RAW        F32   -5.0
+   PSASTRO.GRID.SEARCH 		   BOOL  FALSE  # skycell/stack and astrom well known, when used could cause problems and not help
+   #PSASTRO.GRID.NRAW.MAX           S32   2000
+   #PSASTRO.GRID.NREF.MAX 	    S32   2000
+   #PSASTRO.GRID.MIN.INST.MAG.RAW   F32   -21.0
+   #PSASTRO.GRID.MAX.INST.MAG.RAW   F32   -14.0
+   DVO.GETSTAR.MAX.RHO		   F32	 6000.0  # N/sqdeg, slightly larger than MAX.NREF 
+   DVO.GETSTAR.MIN.MAG.INST        F32   -25.0   # set absurd range to cover large range of exptime, then clamp...
+   DVO.GETSTAR.MIN.MAG		   F32	 16.5    # only used if keyword problem so also using CLAMP_MAG_MIN
+   REFSTAR_CLAMP_MAG_MIN 	   F32	 16.5    # saturation in MD ~14 even in y-band, so toss out brighter in the list. seeing offset in brighter stars
+   DVO.GETSTAR.FIXED.ZEROPT        F32   0.0     # not really needed, exptime overly dominates
+  
+   ## for skycell/stack astrom well known, radius shouldn't need to be as large as 90 pixel default. in deeper stacks can be problems
+   PSASTRO.MATCH.RADIUS.N0         F32   5 
+   PSASTRO.MATCH.RADIUS.N1 	   F32   3 
+   PSASTRO.MATCH.RADIUS.N2 	   F32   1
+   PSASTRO.MATCH.RADIUS.N3 	   F32   0.5
+   PSASTRO.MATCH.FIT.NITER 	   S32   4 
+   PSASTRO.MAX.ERROR       	   F32   0.2  # in arcsec units, still liberal limit for well known astrometry for skycells
+   PSASTRO.MIN.NSTAR       	   S32   10   # edges may not have many and require special treatment 
+
+   KH.CORRECT.APPLY              BOOL     FALSE
+END
+
+
+## if defined for MD, needs to have MD name in group so shouldn't be modified except for MD work
+## -- was ad hoc limit for NREF~150, rho~6000 due to issues fainter than 19 mag in all filters and brighter than 17.0 mag (except y ~16.5) in MD
+## -- for PV3 add refcat min/max mag REFSTAR.ZP.MIN.MAG for ZP range only 
+STATICSKY_MD_PV3_DEEPCAL   METADATA
+   PSASTRO.CATDIR                  STR   PS1.REF.20140713
+   REFSTAR_MASK                    BOOL  FALSE
+   PSASTRO.SAVE.REFMATCH           BOOL  FALSE
+   PSASTRO.FIX.CHIPS               BOOL  FALSE
+   PSASTRO.USE.MODEL               BOOL  FALSE
+   PSASTRO.MOSAIC.MODE             BOOL  FALSE
+   ZERO.POINT.USE.MEAN             BOOL  TRUE
+   PSASTRO.FIELD.PADDING           F32   0.01   # skycells are well defined, don't need large padding. 1% of 6400 is 64 pixels
+   PSASTRO.MAX.NRAW                S32   1500   # include more than MAX.NREF to account for extras like false-positives
+   PSASTRO.MAX.NREF                S32   500    # if edge skycell ~10% then try ~50 to match. increase to help odd bulk offsets
+   PSASTRO.MIN.INST.MAG.RAW        F32   -25.0  # 
+   PSASTRO.MAX.INST.MAG.RAW        F32   -5.0
+   PSASTRO.GRID.SEARCH             BOOL  FALSE  # skycell/stack and astrom well known, when used could cause problems and not help
+
+   DVO.GETSTAR.MAX.RHO             F32   6000.0  # N/sqdeg, slightly larger than MAX.NREF 
+   DVO.GETSTAR.MIN.MAG.INST        F32   -25.0   # set absurd range to cover large range of exptime, then clamp...
+   DVO.GETSTAR.MIN.MAG             F32   15.0    # only used if keyword problem so also using CLAMP_MAG_MIN
+   REFSTAR_CLAMP_MAG_MIN           F32   15.0    # saturation in MD ~14 even in y-band, so toss out brighter in the list. offset in brighter stars
+   DVO.GETSTAR.FIXED.ZEROPT        F32   0.0     # not really needed, exptime overly dominates
+
+   ## for skycell/stack astrom well known, radius shouldn't need to be as large as 90 pixel default. in deeper stacks can be problems
+   PSASTRO.MATCH.RADIUS.N0         F32   5
+   PSASTRO.MATCH.RADIUS.N1         F32   3
+   PSASTRO.MATCH.RADIUS.N2         F32   1
+   PSASTRO.MATCH.RADIUS.N3         F32   0.5
+   PSASTRO.MATCH.FIT.NITER         S32   4
+   PSASTRO.MAX.ERROR               F32   0.2  # in arcsec units, still liberal limit for well known astrometry for skycells
+   PSASTRO.MIN.NSTAR               S32   10   # edges may not have many and require special treatment 
+
+   KH.CORRECT.APPLY                BOOL     FALSE
+
+   REFSTAR.ZP.MIN.MAG      F32  15.0  # general refcat zp min/max setting -- need to use photcode below
+   REFSTAR.ZP.MAX.MAG      F32  19.0
+   ## set min to avoid bright turnover and max to limit merr<0.04
+   ## -- 
+#   PHOTCODE.DATA MULTI UPDATE
+   PHOTCODE.DATA MULTI
+   PHOTCODE.DATA METADATA
+     FILTER   STR g
+     PHOTCODE STR g
+     REFSTAR.ZP.MIN.MAG    F32  17.0  #
+     REFSTAR.ZP.MAX.MAG    F32  20.0  #
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR r
+     PHOTCODE STR r
+     REFSTAR.ZP.MIN.MAG    F32  17.0  #
+     REFSTAR.ZP.MAX.MAG    F32  19.0  #
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR i 
+     PHOTCODE STR i
+     REFSTAR.ZP.MIN.MAG    F32  17.0  #
+     REFSTAR.ZP.MAX.MAG    F32  19.0  #
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR z
+     PHOTCODE STR z
+     REFSTAR.ZP.MIN.MAG    F32  16.0  #
+     REFSTAR.ZP.MAX.MAG    F32  18.0  #
+   END
+   PHOTCODE.DATA METADATA
+     FILTER   STR y
+     PHOTCODE STR y
+     REFSTAR.ZP.MIN.MAG    F32  15.0  #
+     REFSTAR.ZP.MAX.MAG    F32  17.0  #
+   END
+END
+
+SWEETSPOT_TEST METADATA
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+   ZERO.POINT.USE.MEAN          BOOL    TRUE
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc1/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/psphot.config	(revision 42661)
@@ -0,0 +1,146 @@
+
+BACKGROUND.XBIN                     S32   400             # size of background superpixels
+BACKGROUND.YBIN                     S32   400             # size of background superpixels
+BACKGROUND.XSAMPLE                  F32   2.0             # size of background superpixels
+BACKGROUND.YSAMPLE                  F32   2.0             # size of background superpixels
+
+SOFTEN.VARIANCE                     BOOL  FALSE          # XXX drop? soften the errors for bright pixels
+SOFTEN.VARIANCE.FRACTION            F32   0.000		 # CZW 2013-06-20 I've disabled this, as I don't think it's needed.
+
+PEAKS_SMOOTH_SIGMA                  F32   2.5           # smoothing kernel sigma in pixels
+
+PSF_CLUMP_NX                        S32   3             # subdivide image in to NX x NY regions for 
+PSF_CLUMP_NY                        S32   3             # selecting PSF stars
+PSF_CLUMP_GRID_SCALE                F32   2.5		# XXX too large? size of Sx,Sy image pixel
+
+PSF.RESIDUALS.RADIUS   		    F32   9.0           # keep this pixel if residual is more significant than this
+PSF.RESIDUALS.SPATIAL_ORDER 	    S32   1             # fit spatial variations of the residuals at this order (0,1)
+
+# PSF model parameters : choose the PSF model desired
+PSF_MODEL              	 	    STR   PS_MODEL_PS1_V1
+# vector of simga values to use in when setting the moments window (this is shorter for gpc1 than
+# the psphot default)
+@PSF.SIGMA.VALUES                   F32   1.0  2.0  3.0  4.5  6.0  9.0 # comment due to ticket #1476
+
+PSPHOT.CR.NSIGMA.SOFTEN             F32   0.0025        # Softening parameter for weights in CR stat
+PSPHOT.CR.MAX.SIZE                  F32   0.8             # guess for limit on M_minor in pix^2
+PSPHOT.CR.MAX.MAG                   F32  -8.0             # guess for limit on Kron Mag
+PSPHOT.CR.AUTOSCALE                 BOOL  FALSE
+
+PSF.TREND.NX                        S32   6
+PSF.TREND.NY                        S32   6
+
+PSF_MAX_NSTARS                      S32   2000          # limit number of stars used for PSF model
+
+# rename NONLINEAR_FIT_SN_LIM?
+FULL_FIT_SN_LIM      		    F32   25.0
+
+APTREND.ORDER.MAX    		    S32   6
+
+PSPHOT.CRMASK.APPLY		    BOOL  TRUE		  # TEST THIS before enabling.
+
+DIAGNOSTIC.PLOTS METADATA
+  IMAGE.BACKGROUND.CELL.HISTOGRAM   BOOL  FALSE
+  IMAGE.BACKGROUND.CELL.HISTOGRAM.X S32   8
+  IMAGE.BACKGROUND.CELL.HISTOGRAM.Y S32   8
+END
+
+DIFF METADATA
+  BACKGROUND.XBIN		    S32  128            # size of background superpixels
+  BACKGROUND.YBIN	    	    S32  128            # size of background superpixels
+  DIFF_STATS			    BOOL TRUE	       # Calculate diff-specific stats
+  OUTPUT.FORMAT		            STR  PS1_DV5       # Format of output file
+
+  PSPHOT.EXT.NSIGMA.LIMIT	    F32	 0.0
+  PSPHOT.EXT.DIFF.ALTERNATE	    BOOL TRUE
+  PSPHOT.EXT.DIFF.ALTERNATE.THRESH  F32	 1.25
+
+  # XXX enable these when MOPS is ready
+  # LMM_FIT_CHISQ_CONVERGENCE         BOOL FALSE
+  # LMM_FIT_GAIN_FACTOR_MODE          S32  2
+  # PSF_FIT_MIN_TOL                   F32  0.2
+  # EXT_FIT_MIN_TOL                   F32  0.2 
+  # PSF_FIT_ITER                      S32  20
+  # EXT_FIT_ITER                      S32  20
+  # FOOTPRINT_CULL_NSIGMA_DELTA       F32  10
+  # FOOTPRINT_CULL_NSIGMA_MIN         F32   2  
+
+  PSPHOT.EXT.FIT.ALL.SOURCES	    BOOL TRUE
+  PSPHOT.EXT.FIT.ALL.THRESH	    F32	 1000
+# Lower threshold as requested by MOPS
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL   4.75    FALSE
+  END
+END
+
+SSTF_DIFF METADATA
+  PSPHOT.CR.MAX.SIZE                F32   0.0             # guess for limit on M_minor in pix^2
+
+  PSPHOT.EXT.NSIGMA.LIMIT	    F32	 0.0
+  PSPHOT.EXT.DIFF.ALTERNATE	    BOOL TRUE
+  PSPHOT.EXT.DIFF.ALTERNATE.THRESH  F32	 1.25
+
+  PSPHOT.EXT.FIT.ALL.SOURCES	    BOOL TRUE
+  PSPHOT.EXT.FIT.ALL.THRESH	    F32	 1000
+# Lower threshold as requested by MOPS
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL   4.75    FALSE
+  END
+END
+
+SSTF_WS_DIFF METADATA
+  PSPHOT.CR.MAX.SIZE                F32   0.0             # guess for limit on M_minor in pix^2
+
+  PSPHOT.EXT.NSIGMA.LIMIT           F32  0.0
+  PSPHOT.EXT.DIFF.ALTERNATE         BOOL TRUE
+  PSPHOT.EXT.DIFF.ALTERNATE.THRESH  F32  1.25
+
+  PSPHOT.EXT.FIT.ALL.SOURCES        BOOL TRUE
+  PSPHOT.EXT.FIT.ALL.THRESH         F32  1000
+# Lower threshold as requested by MOPS
+  EXTENDED_SOURCE_MODELS METADATA
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL   4.75    FALSE
+  END
+END
+
+# Recipe overrides for PR reduction
+PR	METADATA
+	BACKGROUND.XBIN	      S32   128             # size    	    of background superpixels
+	BACKGROUND.YBIN	         S32   128             # size of background superpixels
+	SKY_STAT         STR   FITTED_MEAN_V4  # statistic used to measure background
+END
+
+CHIP_CONSTANT_WEIGHTPHOT METADATA
+        CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE
+END
+
+SWEETSPOT_DENSE METADATA
+  PEAKS_NSIGMA_LIMIT                  F32   200.0            # peak significance threshold
+  PEAKS_NSIGMA_LIMIT_2                F32   100.0            # peak significance threshold
+  FULL_FIT_SN_LIM                     F32   200.0
+END
+
+UNIONS_DR3 METADATA
+  PEAKS_NSIGMA_LIMIT                  F32   100.0            # peak significance threshold
+  PSF.TREND.NX                        S32   1
+  PSF.TREND.NY                        S32   1
+  PEAKS_USE_SIGNAL_IMAGE	      BOOL  TRUE             # significance peaks have a central divot
+  LMM_FIT_USE_REWEIGHTING             BOOL  TRUE             # use IRLS-style reweighting (TRUE) or ordinary LMM
+  EXT_MODEL                           STR   PS_MODEL_RGAUSS
+
+# EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform any of the aperture-like measurements?
+# EXTENDED_SOURCE_ANNULI              BOOL  TRUE
+# EXTENDED_SOURCE_SN_LIM              F32   5.0
+
+  # radii in pixels. UNIONS_DR3 uses TESS RINGS.V3 with 0.25 arcsec pixels
+  # these correspond to 1, 2, 4, 8, 12, 16 arcsecond radii
+  @RADIAL.ANNULAR.BINS.LOWER          F32      0.00 4.00  8.00 16.00 32.00 48.00 # perl parser fails without a comment ticket #1476 still?
+  @RADIAL.ANNULAR.BINS.UPPER          F32      4.00 8.00 16.00 32.00 48.00 64.00 # perl parser fails without a comment ticket #1476 still?
+  RADIAL.ANNULAR.BINS.MIN             S32      3 # always measure apertures to this entry
+
+  RADIAL_APERTURES		      BOOL  TRUE # measure the radial apertures listed above
+  RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc1/psvideophot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/psvideophot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/psvideophot.config	(revision 42661)
@@ -0,0 +1,34 @@
+# Standard chip processing
+CHIP_1               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
+  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
+
+# Photometry and astrometry only (for pre-reduced data)
+PSVIDEOPHOT_1         METADATA
+   # right now we don't have any options
+    PHOTOM           BOOL    TRUE            # Source identification and photometry
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc1/pswarp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/pswarp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/pswarp.config	(revision 42661)
@@ -0,0 +1,15 @@
+ASTROM.SOURCE		STR	PSASTRO.OUTPUT	# Source file rule for astrometry, or NULL
+BACKGROUND.MODEL	BOOL	TRUE
+BKG.XGRID		S32	50
+BKG.YGRID		S32	50
+ADDITIONAL_WCS_ORDERS   S32     3               # By default, use a bilevel astrometric model with 4 additional orders.
+
+WARP_GAUSS	METADATA
+  INTERPOLATION.MODE	STR	GAUSS	# Interpolation mode to use
+  ASTROM.SOURCE		STR	PSASTRO.OUTPUT	# Source file rule for astrometry, or NULL
+  BACKGROUND.MODEL	BOOL	TRUE
+  BKG.XGRID		S32	50
+  BKG.YGRID		S32	50
+  ADDITIONAL_WCS_ORDERS   S32     4               # By default, use a bilevel astrometric model with 4 additional orders.
+END
+
Index: /branches/eam_branches/ippconfig.20240412/gpc1/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc1/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc1/rejections.config	(revision 42661)
@@ -0,0 +1,5 @@
+
+
+ITERATION	BOOL	FALSE		# Are iterations permitted?
+MASTER		BOOL	FALSE		# Force stacks to be accepted as a master?
+
Index: /branches/eam_branches/ippconfig.20240412/gpc2/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/Makefile.am	(revision 42661)
@@ -0,0 +1,27 @@
+
+installdir = $(datadir)/ippconfig/gpc2
+
+install_files = \
+	dvo.config \
+	camera.config \
+	format_default.config \
+	format_mef.config \
+	format_20180131.config \
+	format_20220616.config \
+        ghost.model.mdc \
+        crosstalk_rules.mdc \
+	ppImage.config \
+        ppMerge.config \
+	psphot.config \
+	pswarp.config \
+	ppStack.config \
+	psastro.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/gpc2/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/camera.config	(revision 42661)
@@ -0,0 +1,210 @@
+# Camera configuration file for GPC2: describes the camera
+
+# File formats that we know about
+FORMATS		METADATA
+	MEF		STR	gpc2/format_mef.config
+	# RELPHOT	STR	gpc2/format_relphot.config
+	FORMAT_20220616 STR     gpc2/format_20220616.config
+	FORMAT_20180131 STR	gpc2/format_20180131.config
+	FORMAT_DEFAULT  STR     gpc2/format_default.config
+#	FORMAT_20180111 STR	gpc2/format_20180111.config
+#	FORMAT_20140521	STR	gpc2/format_20140521.config
+#	FORMAT_RAW	STR	gpc2/format_raw.config # default config from the lab (missing MJD, and maybe other stuff)
+END
+
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA	METADATA
+        XY00  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY01  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY02  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY03  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY04  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY05  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY06  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY07  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY10  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY11  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY12  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY13  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY14  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY15  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY16  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY17  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY20  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY21  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY22  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY23  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY24  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY25  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY26  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY27  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY30  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY31  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY32  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY33  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY34  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY35  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY36  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY37  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY40  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY41  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY42  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY43  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY44  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY45  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY46  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY47  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY50  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY51  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY52  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY53  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY54  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY55  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY56  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY57  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY60  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY61  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY62  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY63  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY64  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY65  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY66  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY67  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY70  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY71  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY72  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY73  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY74  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY75  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY76  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+        XY77  STR xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+END	   
+
+# internal to external filter names
+FILTER.ID       METADATA
+#   r        MULTI
+#   r        STR   Not available
+#   r        STR   g.00002
+#   r        STR   r.00002
+#   r        STR   i.00002
+#   r        STR   z.00002
+#   r        STR   y.00002
+#   r        STR   w.00002
+
+   g        MULTI 
+   g	     STR   g.00002
+   g	     STR   g
+
+    r	     MULTI
+    r	     STR   r.00002
+    r	     STR   r
+
+    i	     MULTI
+    i	     STR   i.00002
+    i	     STR   i
+
+    z	     MULTI
+    z	     STR   z.00002
+    z	     STR   z
+
+    y	     MULTI
+    y	     STR   y.00002
+    y	     STR   y
+
+# the block below allows the w-band filter to be used by other filters 
+    w        MULTI 
+    w        STR   w.00002 
+    w        STR   w 
+    w        STR   g.00002 
+#   w        STR   r.00002 
+#   w        STR   z.00002 
+#   w        STR   y.00002 
+
+#   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     MULTI
+   OPEN	    STR   OPEN
+   OPEN	    STR	  CLEAR.00002
+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	gpc2		# Camera directory for DVO
+
+# Recipe options
+RECIPES		METADATA
+	PPIMAGE		STR	gpc2/ppImage.config
+	PPMERGE		STR	gpc2/ppMerge.config
+	PSASTRO		STR	gpc2/psastro.config
+ 	PSPHOT		STR	gpc2/psphot.config
+#	PSWARP		STR	gpc2/pswarp.config
+#       PSVIDEOPHOT     STR     gpc2/psvideophot.config
+#	REJECTIONS      STR     gpc2/rejections.config       # rejection recipe
+ 	PPSTACK		STR	gpc2/ppStack.config
+#	NIGHTLY_SCIENCE STR	gpc2/nightly_science.config -- because of a bug in ppConfigDump, this cannot have 2 levels
+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.XGAL STR {CHIP.NAME}.xgal # 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/eam_branches/ippconfig.20240412/gpc2/crosstalk_rules.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/crosstalk_rules.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/crosstalk_rules.mdc	(revision 42661)
@@ -0,0 +1,490 @@
+#TdB20220601: GPC2 crosstalk rules now set up in the recipes as a series of metadata blocks
+CROSSTALK.RULE			MULTI
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR 0/0 
+  CELL.OFFSET                   STR 10/20
+  CROSS.MAGDIFF                 STR 9.08/8.07  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR 0/10
+  CELL.OFFSET                   STR 10/0
+  CROSS.MAGDIFF                 STR 7.78/8.37  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR 0/0/10
+  CELL.OFFSET                   STR -10/10/0
+  CROSS.MAGDIFF                 STR 8.26/7.99/8.43  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR 0/0 
+  CELL.OFFSET                   STR -10/10
+  CROSS.MAGDIFF                 STR 8.25/8.14  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0 
+  CELL.OFFSET                   STR -10/10
+  CROSS.MAGDIFF                 STR 8.08/8.4  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0 
+  CELL.OFFSET                   STR -10/10
+  CROSS.MAGDIFF                 STR 8.13/8.01  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 0
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR 0/0/10/10
+  CELL.OFFSET                   STR -10/10/-10/0
+  CROSS.MAGDIFF                 STR 8.22/7.65/8.06/7.54  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR 0 
+  CELL.OFFSET                   STR 10
+  CROSS.MAGDIFF                 STR 8.63  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR -10/0/0 
+  CELL.OFFSET                   STR 10/-10/20
+  CROSS.MAGDIFF                 STR 8.47/8.54/9.01  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR 0 
+  CELL.OFFSET                   STR -10
+  CROSS.MAGDIFF                 STR 8.68  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR 0/0/0/0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10/10/20/30
+  CROSS.MAGDIFF                 STR 8.73/8.77/8.69/8.27/8.27/8.14  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10
+  CROSS.MAGDIFF                 STR 8.37/8.46/8.37  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0/0/0 
+  CELL.OFFSET                   STR -40/-30/-20/-10/20
+  CROSS.MAGDIFF                 STR 8.45/8.39/8.64/8.73/7.62  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 1
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR 0/0 
+  CELL.OFFSET                   STR -20/-10
+  CROSS.MAGDIFF                 STR 8.19/8.04  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR 0/0 
+  CELL.OFFSET                   STR 10/30
+  CROSS.MAGDIFF                 STR 9.13/8.99  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR 0 
+  CELL.OFFSET                   STR 10
+  CROSS.MAGDIFF                 STR 8.81  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR 0/0/0/0/10
+  CELL.OFFSET                   STR -20/-10/10/20/-10
+  CROSS.MAGDIFF                 STR 8.81/9.06/8.66/9.04/8.43  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10/10
+  CROSS.MAGDIFF                 STR 8.59/8.95/9.16/8.79  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0/0 
+  CELL.OFFSET                   STR -20/-10/10/20
+  CROSS.MAGDIFF                 STR 8.11/8.32/7.71/7.09  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR 0 
+  CELL.OFFSET                   STR -10
+  CROSS.MAGDIFF                 STR 8.33  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 2
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR 0 
+  CELL.OFFSET                   STR -10
+  CROSS.MAGDIFF                 STR 8.18  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR 0 
+  CELL.OFFSET                   STR 10
+  CROSS.MAGDIFF                 STR 8.13  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR -10/0/0 
+  CELL.OFFSET                   STR 10/-10/20
+  CROSS.MAGDIFF                 STR 8.49/8.15/8.23  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR -10/-10/-10/0/0/0/0 
+  CELL.OFFSET                   STR -10/0/10/-20/-10/10/20
+  CROSS.MAGDIFF                 STR 8.74/9.08/9.08/8.22/8.49/8.44/8.65  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR 0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10
+  CROSS.MAGDIFF                 STR 8.7/8.47/8.4  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10/10/20/30
+  CROSS.MAGDIFF                 STR 7.83/7.89/7.89/8.56/7.92/7.56  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0 
+  CELL.OFFSET                   STR -10/10/20
+  CROSS.MAGDIFF                 STR 7.44/7.54/7.24  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR 0/0/0 
+  CELL.OFFSET                   STR -20/-10/10
+  CROSS.MAGDIFF                 STR 8.04/8.81/7.4  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 3
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR 0/0/0/0 
+  CELL.OFFSET                   STR -40/-30/-20/-10
+  CROSS.MAGDIFF                 STR 7.77/7.86/8.34/8.29  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR 0/0/0/0/0 
+  CELL.OFFSET                   STR 10/20/30/40/50
+  CROSS.MAGDIFF                 STR 7.46/8.11/8.24/8.15/7.68  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/10/10/10/10/10/10
+  CELL.OFFSET                   STR -10/10/20/30/40/50/60/-10/0/10/20/30/40
+  CROSS.MAGDIFF                 STR 8.79/8.52/8.83/8.35/8.38/8.07/8.27/8.13/8.1/8.81/7.81/7.54/7.92  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR 0/0/0/0 
+  CELL.OFFSET                   STR -10/10/20/30
+  CROSS.MAGDIFF                 STR 8.24/8.04/8.13/8.03  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10/10/20/30/40
+  CROSS.MAGDIFF                 STR 8.42/8.14/8.34/8.06/7.75/7.74/7.74  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -40/-30/-20/-10/10/20/30
+  CROSS.MAGDIFF                 STR 8.09/8.42/8.45/8.54/8.22/8.1/7.6  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -50/-40/-30/-20/-10/10/20
+  CROSS.MAGDIFF                 STR 7.79/7.57/8.13/7.99/7.85/7.8/7.4  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -60/-50/-40/-30/-20/-10/10
+  CROSS.MAGDIFF                 STR 7.53/7.98/7.86/7.54/7.46/7.85/7.6  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 4
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR 0/0/0/0/0/0 
+  CELL.OFFSET                   STR -60/-50/-40/-30/-20/-10
+  CROSS.MAGDIFF                 STR 7.82/7.99/7.78/7.95/8.07/7.75  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR 0/0/0/0/0/10/10/10/10/10/10/20/20/20
+  CELL.OFFSET                   STR 10/20/30/40/50/0/10/20/30/40/50/0/10/20
+  CROSS.MAGDIFF                 STR 8.28/8.81/8.31/8.12/8.19/7.8/7.56/7.74/7.52/7.65/7.83/8.01/7.51/7.74  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR -10/0/0/0/0/0/0/0/10/10/10/20
+  CELL.OFFSET                   STR 0/-10/10/20/30/40/50/60/-10/0/10/10
+  CROSS.MAGDIFF                 STR 7.77/8.36/7.94/8.09/8.13/8.1/7.6/7.51/7.45/7.53/7.48/7.71  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR -10/-10/0/0/0/0/0/0/0/10/10/10/20/20/20
+  CELL.OFFSET                   STR -10/0/-20/-10/10/20/30/40/50/-10/0/10/-10/0/10
+  CROSS.MAGDIFF                 STR 8.29/8.18/8.26/7.92/8.17/8.13/7.87/7.52/7.54/7.4/7.03/7.79/7.44/7.49/8.12  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR 0/0/0/0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10/10/20/30
+  CROSS.MAGDIFF                 STR 8.04/8.32/8.32/8.05/8.36/7.91  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -40/-30/-20/-10/10/20/30
+  CROSS.MAGDIFF                 STR 7.88/7.74/7.6/7.86/7.52/7.3/7.21  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -50/-40/-30/-20/-10/10/20
+  CROSS.MAGDIFF                 STR 8.24/8.47/8.52/8.01/7.89/7.99/7.46  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR -10/-10/-10/-10/-10/0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10/0/10/-60/-50/-40/-30/-20/-10/10
+  CROSS.MAGDIFF                 STR 7.96/8.26/7.49/7.6/7.47/7.91/8.11/7.97/7.91/8.41/7.9/8.01  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 5
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR -10/-10/0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -10/0/-70/-60/-50/-40/-30/-20/-10
+  CROSS.MAGDIFF                 STR 7.98/7.62/8.74/8.36/8.36/8.16/7.84/8.31/8.12  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR 0/0/0/0/0/10/10/10/10/10/10/10
+  CELL.OFFSET                   STR 10/20/30/40/50/0/10/20/30/40/50/60
+  CROSS.MAGDIFF                 STR 8.44/8.37/8.1/8.37/8.05/8.37/8.04/8.13/8.26/7.96/8.54/8.19  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/10/10/10/10/10/10
+  CELL.OFFSET                   STR -10/10/20/30/40/50/60/-10/0/10/20/30/40
+  CROSS.MAGDIFF                 STR 8.44/8.17/8.29/8.21/8.26/7.69/7.09/8.18/8.04/8.54/7.73/8.26/8.31  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/10/10/10/10/10/10/10/10
+  CELL.OFFSET                   STR -20/-10/10/20/30/40/50/-20/-10/0/10/20/30/40/50
+  CROSS.MAGDIFF                 STR 8.42/8.46/-8/7.94/7.94/7.72/7.38/7.95/7.65/8.2/8.9/7.81/8.15/7.74/7.93  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0/10/10/10/10/10/10/10/10
+  CELL.OFFSET                   STR -30/-20/-10/10/20/30/40/-30/-20/-10/0/10/20/30/40
+  CROSS.MAGDIFF                 STR 8.03/8.53/8.32/7.79/8.36/7.68/7.66/8.64/8.09/7.89/7.79/8.35/8.09/8.36/7.31  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/10/10/10/10
+  CELL.OFFSET                   STR -30/-20/-10/10/20/30/-10/0/10/20
+  CROSS.MAGDIFF                 STR 8.2/8.1/8.36/7.94/7.7/7.66/8.4/8.47/-8/7.48  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR -10/-10/-10/0/0/0/0/0/0/0/10/10/10/10
+  CELL.OFFSET                   STR -10/0/10/-50/-40/-30/-20/-10/10/20/-20/-10/0/10
+  CROSS.MAGDIFF                 STR 7.63/7.4/7.4/8.1/8.03/8.06/8.03/8.04/8.05/7.69/7.98/8.12/8.22/7.99  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR -20/-20/-20/-10/-10/-10/-10/-10/0/0/0/0/0/0/0/10/10/10/10/10/10
+  CELL.OFFSET                   STR -10/0/10/-30/-20/-10/0/10/-60/-50/-40/-30/-20/-10/10/-40/-30/-20/-10/0/10
+  CROSS.MAGDIFF                 STR 7.73/7.11/7.21/7.5/7.66/7.37/7.23/-7/7.63/7.98/7.93/8.12/8.09/8.26/7.62/7.84/8.56/7.87/7.93/7.75/7.14  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 6
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR -10/-10/-10/-10/-10/-10/-10/-10/0/0/0/0/0 
+  CELL.OFFSET                   STR -70/-60/-50/-40/-30/-20/-10/0/-50/-40/-30/-20/-10
+  CROSS.MAGDIFF                 STR 7.45/7.49/8.01/7.31/7.08/7.4/7.13/6.84/8.1/8.16/8.36/7.58/7.67  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 0
+  CHIP.OFFSET                   STR -10/-10/-10/-10/-10/-10/-10/-10/0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR 0/10/20/30/40/50/60/70/10/20/30/40/50/60/70
+  CROSS.MAGDIFF                 STR 8.22/-8/7.91/8.26/7.77/7.45/7.22/7.25/8.1/7.82/8.27/8.26/8.09/7.9/7.41  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 1
+  CHIP.OFFSET                   STR -10/-10/-10/-10/-10/0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -10/0/10/20/30/-10/10/20/30/40/50/60
+  CROSS.MAGDIFF                 STR 7.99/7.76/7.27/7.89/7.59/7.64/8.09/7.96/8.11/8.1/7.47/7.42  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 2
+  CHIP.OFFSET                   STR -10/-10/0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -10/0/-20/-10/10/20/30/40/50
+  CROSS.MAGDIFF                 STR 8.26/7.98/7.9/7.95/8.18/7.82/8.07/7.5/7.74  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 3
+  CHIP.OFFSET                   STR -10/-10/0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -10/0/-30/-20/-10/10/20/30/40
+  CROSS.MAGDIFF                 STR 7.87/7.46/7.61/8.08/8.03/8.06/8.44/7.79/7.65  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 4
+  CHIP.OFFSET                   STR 0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -40/-30/-20/-10/10/20/30
+  CROSS.MAGDIFF                 STR 8.11/8.73/8.24/8.24/8.14/8.33/7.7  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 5
+  CHIP.OFFSET                   STR -10/0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR 0/-50/-40/-30/-20/-10/10/20
+  CROSS.MAGDIFF                 STR 8.33/7.98/7.93/7.8/8.23/7.74/7.79/7.81  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 6
+  CHIP.OFFSET                   STR -10/-10/-10/-10/-10/0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10/0/10/-60/-50/-40/-30/-20/-10/10
+  CROSS.MAGDIFF                 STR 7.85/7.72/7.7/7.68/7.47/8.08/7.86/7.77/8.39/8.27/8.45/8.11  
+END
+
+CROSSTALK.RULE                  METADATA
+  CHIP.SRC                      S32 7
+  CELL.SRC                      S32 7
+  CHIP.OFFSET                   STR -10/-10/-10/-10/0/0/0/0/0/0/0 
+  CELL.OFFSET                   STR -30/-20/-10/0/-70/-60/-50/-40/-30/-20/-10
+  CROSS.MAGDIFF                 STR 7.43/7.43/7.24/7.43/7.9/8.03/8.42/8.17/7.71/7.79/7.55  
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/dvo.config	(revision 42661)
@@ -0,0 +1,73 @@
+
+# location of DVO database tables
+MOSAICNAME              GPC1
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+#DATE-KEYWORD		DATE-OBS
+#DATE-MODE		yyyy-mm-dd
+#UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	20.7070999146
+OBSERVATORY-LONGITUDE	10.4170608521
+
+SUBPIX_DATAFILE		NONE
+
+IMAGE-ID-KEYWORD        IMAGEID
+SOURCE-ID-KEYWORD       SOURCEID
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              2     # mark star FEW if N(good) < STAR_TOOFEW
+GRID_TOOFEW             10     # keep grid FROZEN if N(good) < GRID_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 4
+RELPHOT_GRID_Y 4
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+RELASTRO_SIGMA_LIM      0.01  # select measurements with dM < SIGMA_LIM for relphot analysis
+PAR_FACTOR_MIN          0.2
Index: /branches/eam_branches/ippconfig.20240412/gpc2/format_20140521.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/format_20140521.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/format_20140521.config	(revision 42661)
@@ -0,0 +1,530 @@
+# Refurbished GPC1
+# Change effective from 22 January 2010 (TJD=5219): new CCD temperature keywords
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS2
+        TELESCOP        STR     PS2
+	INSTRUME	STR	gpc2
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	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
+        CCID71-2-03-1  STR  XY02:GPCChip
+        CCID71-2-07-2  STR  XY03:GPCChip
+        CCID71-3-08-1  STR  XY04:GPCChip
+        CCID71-1-05-1  STR  XY05:GPCChip
+        CCID71-3-11-3  STR  XY11:GPCChip
+        CCID71-1-10-1  STR  XY12:GPCChip
+        CCID71-3-06-3  STR  XY13:GPCChip
+        CCID71-2-03-2  STR  XY14:GPCChip
+        CCID71-2-08-1  STR  XY15:GPCChip
+        CCID71-2-11-1  STR  XY16:GPCChip
+        CCID71-1-08-4  STR  XY21:GPCChip
+        CCID71-3-03-3  STR  XY22:GPCChip
+        CCID71-3-06-1  STR  XY23:GPCChip
+        CCID71-3-06-2  STR  XY24:GPCChip
+        CCID71-3-06-4  STR  XY25:GPCChip
+        CCID71-1-06-1  STR  XY26:GPCChip
+        CCID71-1-08-2  STR  XY30:GPCChip
+        CCID71-1-05-4  STR  XY31:GPCChip
+        CCID71-1-03-3  STR  XY32:GPCChip
+        CCID71-1-03-2  STR  XY33:GPCChip
+        CCID71-1-06-2  STR  XY34:GPCChip
+        CCID71-1-07-4  STR  XY35:GPCChip
+        CCID71-3-11-2  STR  XY36:GPCChip
+        CCID71-2-12-1  STR  XY37:GPCChip
+        CCID71-1-11-3  STR  XY40:GPCChip
+        CCID71-1-11-2  STR  XY41:GPCChip
+        CCID71-1-09-2  STR  XY42:GPCChip
+        CCID71-2-05-4  STR  XY43:GPCChip
+        CCID71-2-06-2  STR  XY44:GPCChip
+        CCID71-3-03-2  STR  XY45:GPCChip
+        CCID71-2-06-1  STR  XY46:GPCChip
+        CCID71-3-02-1  STR  XY47:GPCChip
+        CCID71-2-10-1  STR  XY51:GPCChip
+        CCID71-2-08-2  STR  XY52:GPCChip
+        CCID71-2-10-2  STR  XY53:GPCChip
+        CCID71-2-11-4  STR  XY54:GPCChip
+        CCID71-3-09-2  STR  XY55:GPCChip
+        CCID71-3-09-1  STR  XY56:GPCChip
+        CCID71-2-03-3  STR  XY61:GPCChip
+        CCID71-1-01-2  STR  XY62:GPCChip
+        CCID71-1-10-2  STR  XY63:GPCChip
+        CCID71-1-05-2  STR  XY64:GPCChip
+        CCID71-1-05-3  STR  XY65:GPCChip
+        CCID71-1-01-4  STR  XY66:GPCChip
+        CCID71-1-03-4  STR  XY72:GPCChip
+        CCID71-2-11-2  STR  XY73:GPCChip
+        CCID71-3-08-2  STR  XY74:GPCChip
+        CCID71-3-11-4  STR  XY75:GPCChip
+
+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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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     PS2
+        FPA.INSTRUMENT  STR     GPC2
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521
+        FPA.LATITUDE    STR     20:42:26.21 # North Latitude in Degrees 20.7070999146
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+        FPA.DETECTOR    STR     GPC2
+        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.BAD        S32     -1000
+	CELL.XSIZE	S32	590
+	CELL.YSIZE	S32	598
+        CELL.TIMESYS    STR     UTC
+        CELL.SATURATION F32     60000		# Saturation point (ADU)
+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
+#	XY02	STR     0000000000000000000000000000000000000000000000000000000000000001 # xy77
+#	XY02	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
+#	XY06    STR     0101000000010000000110000100000000000000000000000000000000000000
+# 	XY06	BOOL	FALSE
+# END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/format_20180111.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/format_20180111.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/format_20180111.config	(revision 42661)
@@ -0,0 +1,632 @@
+# Refurbished GPC2
+# Change effective from 11 January 2018 (TJD=58129): different device arrangement.
+#  This could be pushed back to 2017-12-21, but many of the exposures on the datastore do not exist.
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS2
+        TELESCOP        STR     PS2
+	INSTRUME	STR	gpc2
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	58129.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         STR     FPPOS      # Alternate CONTENT keyword in case DETECTOR is unreliable
+        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
+        CCID71-2-11-4  STR  XY00:GPCChip
+        CCID71-2-06-1  STR  XY01:GPCChip
+        CCID71-7-04-5  STR  XY02:GPCChip
+        CCID71-7-07-5  STR  XY03:GPCChip
+        CCID71-7-16-7  STR  XY04:GPCChip
+        CCID71-7-08-7  STR  XY05:GPCChip
+        CCID71-7-04-7  STR  XY06:GPCChip
+        CCID71-7-08-4  STR  XY07:GPCChip
+        CCID71-2-06-2  STR  XY10:GPCChip
+        CCID71-7-03-6  STR  XY11:GPCChip
+        CCID71-7-05-1  STR  XY12:GPCChip
+        CCID71-7-07-6  STR  XY13:GPCChip
+        CCID71-7-16-4  STR  XY14:GPCChip
+        CCID71-7-03-3  STR  XY15:GPCChip
+        CCID71-7-02-3  STR  XY16:GPCChip
+        CCID71-7-05-3  STR  XY17:GPCChip
+        CCID71-7-02-1  STR  XY20:GPCChip
+        CCID71-7-05-4  STR  XY21:GPCChip
+        CCID71-7-13-7  STR  XY22:GPCChip
+        CCID71-7-07-3  STR  XY23:GPCChip
+        CCID71-7-16-2  STR  XY24:GPCChip
+        CCID71-7-08-5  STR  XY25:GPCChip
+        CCID71-7-02-4  STR  XY26:GPCChip
+        CCID71-3-11-2  STR  XY27:GPCChip
+        CCID71-7-02-5  STR  XY30:GPCChip
+        CCID71-7-14-7  STR  XY31:GPCChip
+        CCID71-1-11-2  STR  XY32:GPCChip
+        CCID71-7-07-1  STR  XY33:GPCChip
+        CCID71-7-13-3  STR  XY34:GPCChip
+        CCID71-7-08-6  STR  XY35:GPCChip
+        CCID71-7-08-4  STR  XY36:GPCChip
+        CCID71-7-15-5  STR  XY37:GPCChip
+        CCID71-7-06-6  STR  XY40:GPCChip
+        CCID71-7-12-6  STR  XY41:GPCChip
+        CCID71-7-03-7  STR  XY42:GPCChip
+        CCID71-7-03-1  STR  XY43:GPCChip
+        CCID71-7-12-1  STR  XY44:GPCChip
+        CCID71-7-09-4  STR  XY45:GPCChip
+        CCID71-1-03-2  STR  XY46:GPCChip
+        CCID71-2-08-2  STR  XY47:GPCChip
+        CCID71-7-14-5  STR  XY50:GPCChip
+        CCID71-3-06-2  STR  XY51:GPCChip
+        CCID71-7-03-5  STR  XY52:GPCChip
+        CCID71-7-06-3  STR  XY53:GPCChip
+        CCID71-7-14-2  STR  XY54:GPCChip
+        CCID71-7-05-7  STR  XY55:GPCChip
+        CCID71-1-09-2  STR  XY56:GPCChip
+        CCID71-3-09-2  STR  XY57:GPCChip
+        CCID71-1-06-2  STR  XY60:GPCChip
+        CCID71-7-12-4  STR  XY61:GPCChip
+        CCID71-7-16-3  STR  XY62:GPCChip
+        CCID71-7-01-7  STR  XY63:GPCChip
+        CCID71-7-12-5  STR  XY64:GPCChip
+        CCID71-7-09-5  STR  XY65:GPCChip
+        CCID71-1-03-3  STR  XY66:GPCChip
+        CCID71-7-06-5  STR  XY67:GPCChip
+        CCID71-7-04-2  STR  XY70:GPCChip
+        CCID71-3-03-3  STR  XY71:GPCChip
+        CCID71-7-01-1  STR  XY72:GPCChip
+        CCID71-7-01-6  STR  XY73:GPCChip
+        CCID71-3-06-4  STR  XY74:GPCChip
+        CCID71-7-15-7  STR  XY75:GPCChip
+        CCID71-1-07-4  STR  XY76:GPCChip
+        CCID71-1-01-2  STR  XY77:GPCChip
+END
+
+# CONTENTS        METADATA
+#         # CONTENT      =    chip name : type
+#         xy00  STR  XY00:GPCChip
+#         xy01  STR  XY01:GPCChip
+#         xy02  STR  XY02:GPCChip
+#         xy03  STR  XY03:GPCChip
+#         xy04  STR  XY04:GPCChip
+#         xy05  STR  XY05:GPCChip
+#         xy06  STR  XY06:GPCChip
+#         xy07  STR  XY07:GPCChip
+#         xy10  STR  XY10:GPCChip
+#         xy11  STR  XY11:GPCChip
+#         xy12  STR  XY12:GPCChip
+#         xy13  STR  XY13:GPCChip
+#         xy14  STR  XY14:GPCChip
+#         xy15  STR  XY15:GPCChip
+#         xy16  STR  XY16:GPCChip
+#         xy17  STR  XY17:GPCChip
+#         xy20  STR  XY20:GPCChip
+#         xy21  STR  XY21:GPCChip
+#         xy22  STR  XY22:GPCChip
+#         xy23  STR  XY23:GPCChip
+#         xy24  STR  XY24:GPCChip
+#         xy25  STR  XY25:GPCChip
+#         xy26  STR  XY26:GPCChip
+#         xy27  STR  XY27:GPCChip
+#         xy30  STR  XY30:GPCChip
+#         xy31  STR  XY31:GPCChip
+#         xy32  STR  XY32:GPCChip
+#         xy33  STR  XY33:GPCChip
+#         xy34  STR  XY34:GPCChip
+#         xy35  STR  XY35:GPCChip
+#         xy36  STR  XY36:GPCChip
+#         xy37  STR  XY37:GPCChip
+#         xy40  STR  XY40:GPCChip
+#         xy41  STR  XY41:GPCChip
+#         xy42  STR  XY42:GPCChip
+#         xy43  STR  XY43:GPCChip
+#         xy44  STR  XY44:GPCChip
+#         xy45  STR  XY45:GPCChip
+#         xy46  STR  XY46:GPCChip
+#         xy47  STR  XY47:GPCChip
+#         xy50  STR  XY50:GPCChip
+#         xy51  STR  XY51:GPCChip
+#         xy52  STR  XY52:GPCChip
+#         xy53  STR  XY53:GPCChip
+#         xy54  STR  XY54:GPCChip
+#         xy55  STR  XY55:GPCChip
+#         xy56  STR  XY56:GPCChip
+#         xy57  STR  XY57:GPCChip
+#         xy60  STR  XY60:GPCChip
+#         xy61  STR  XY61:GPCChip
+#         xy62  STR  XY62:GPCChip
+#         xy63  STR  XY63:GPCChip
+#         xy64  STR  XY64:GPCChip
+#         xy65  STR  XY65:GPCChip
+#         xy66  STR  XY66:GPCChip
+#         xy67  STR  XY67:GPCChip
+#         xy70  STR  XY70:GPCChip
+#         xy71  STR  XY71:GPCChip
+#         xy72  STR  XY72:GPCChip
+#         xy73  STR  XY73:GPCChip
+#         xy74  STR  XY74:GPCChip
+#         xy75  STR  XY75:GPCChip
+#         xy76  STR  XY76:GPCChip
+#         xy77  STR  XY77:GPCChip
+# 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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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.FILTER      STR     FILTER
+        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  TELTEMLC # Primary mirror support temps (C)   CZW: Confirm
+        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 #CZW: Confirm
+	CHIP.TEMPERATURE STR	DETTEM
+        FPA.EXPOSURE    STR     EXPREQ          # Requested exposure time, presumably camera exposure time
+        CELL.EXPOSURE   STR     EXPTIME         # Exposure time measured by shutter CZW: Not found in cell extensions/nor GPC1
+        CELL.DARKTIME   STR     DARKTIME        # Exposure time for camera
+        CELL.TIME       STR     SHUTOUTC	# Observation time CZW: Not found in cell extensions/nor GPC1
+        CELL.GAIN       STR     GAIN		# Cell gain (e/ADU) CZW: Not found in cell extensions
+        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     PS2
+        FPA.INSTRUMENT  STR     GPC2
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521
+        FPA.LATITUDE    STR     20:42:26.21 # North Latitude in Degrees 20.7070999146
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+        FPA.DETECTOR    STR     GPC2
+        FPA.TIMESYS     STR     UTC
+	CHIP.XSIZE	S32	4862 
+	CHIP.YSIZE	S32	4870 
+        CHIP.XPARITY    S32     1
+        CHIP.YPARITY    S32     1
+        CHIP.X0.DEPEND          STR     CHIP.NAME
+        CHIP.X0         METADATA
+          XY00  S32     4971
+          XY01  S32     4971
+          XY02  S32     4971
+          XY03  S32     4971
+          XY04  S32     4971
+          XY05  S32     4971
+          XY06  S32     4971
+          XY07  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
+          XY70  S32     34954
+          XY71  S32     34954
+          XY72  S32     34954
+          XY73  S32     34954
+          XY74  S32     34954
+          XY75  S32     34954
+          XY76  S32     34954
+          XY77  S32     34954
+        END
+        CHIP.Y0.DEPEND          STR     CHIP.NAME
+        CHIP.Y0         METADATA
+          XY00  S32     5143
+          XY01  S32     10286
+          XY02  S32     15429
+          XY03  S32     20572
+          XY04  S32     25715
+          XY05  S32     30858
+          XY06  S32     36001
+          XY07  S32     41144
+          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
+          XY70  S32     306
+          XY71  S32     5449
+          XY72  S32     10592
+          XY73  S32     15735
+          XY74  S32     20878
+          XY75  S32     26021
+          XY76  S32     31164
+          XY77  S32     36307
+        END
+        CHIP.XPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.XPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY07  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
+          XY70  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+          XY77  S32     1
+        END
+        CHIP.YPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.YPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY07  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
+          XY70  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+          XY77  S32     1
+        END
+        CELL.READDIR    S32     1
+#       CELL.BAD        S32     0
+        CELL.BAD        S32     -1000
+	CELL.XSIZE	S32	592 
+	CELL.YSIZE	S32	600 
+        CELL.TIMESYS    STR     UTC
+        CELL.SATURATION F32     60000		# Saturation point (ADU)
+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
+#	XY02	STR     0000000000000000000000000000000000000000000000000000000000000001 # xy77
+#	XY02	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
+#	XY06    STR     0101000000010000000110000100000000000000000000000000000000000000
+# 	XY06	BOOL	FALSE
+# END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/format_20180131.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/format_20180131.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/format_20180131.config	(revision 42661)
@@ -0,0 +1,634 @@
+# Refurbished GPC2
+# Change effective from 31 January 2018 (TJD=58149): different device arrangement.
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS2
+        TELESCOP        STR     PS2
+	INSTRUME	STR	gpc2
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	58149.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         STR     FPPOS      # Alternate CONTENT keyword in case DETECTOR is unreliable
+        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
+        CCID71-2-11-4  STR  XY00:GPCChip
+        CCID71-2-06-1  STR  XY01:GPCChip
+        CCID71-7-04-5  STR  XY02:GPCChip
+        CCID71-7-07-5  STR  XY03:GPCChip
+        CCID71-7-16-7  STR  XY04:GPCChip
+        CCID71-7-08-7  STR  XY05:GPCChip
+        CCID71-7-04-7  STR  XY06:GPCChip
+        CCID71-7-08-4  STR  XY07:GPCChip
+        CCID71-2-06-2  STR  XY10:GPCChip
+        CCID71-7-03-6  STR  XY11:GPCChip
+        CCID71-7-05-1  STR  XY12:GPCChip
+        CCID71-7-07-6  STR  XY13:GPCChip
+        CCID71-7-16-4  STR  XY14:GPCChip
+        CCID71-7-03-3  STR  XY15:GPCChip
+        CCID71-7-02-3  STR  XY16:GPCChip
+        CCID71-7-05-3  STR  XY17:GPCChip
+        CCID71-7-02-1  STR  XY20:GPCChip
+        CCID71-7-05-4  STR  XY21:GPCChip
+        CCID71-7-13-7  STR  XY22:GPCChip
+        CCID71-7-07-3  STR  XY23:GPCChip
+        CCID71-7-16-2  STR  XY24:GPCChip
+        CCID71-7-08-5  STR  XY25:GPCChip
+        CCID71-7-02-4  STR  XY26:GPCChip
+        CCID71-3-11-2  STR  XY27:GPCChip
+        CCID71-7-02-5  STR  XY30:GPCChip
+        CCID71-7-14-7  STR  XY31:GPCChip
+        CCID71-1-11-2  STR  XY32:GPCChip
+        CCID71-7-07-1  STR  XY33:GPCChip
+        CCID71-7-13-3  STR  XY34:GPCChip
+        CCID71-7-08-6  STR  XY35:GPCChip
+        CCID71-7-01-4  STR  XY36:GPCChip
+        CCID71-7-15-5  STR  XY37:GPCChip
+        CCID71-7-06-6  STR  XY40:GPCChip
+        CCID71-7-12-6  STR  XY41:GPCChip
+        CCID71-7-03-7  STR  XY42:GPCChip
+        CCID71-7-03-1  STR  XY43:GPCChip
+        CCID71-7-12-1  STR  XY44:GPCChip
+        CCID71-7-09-4  STR  XY45:GPCChip
+        CCID71-1-03-2  STR  XY46:GPCChip
+        CCID71-2-08-2  STR  XY47:GPCChip
+        CCID71-7-14-5  STR  XY50:GPCChip
+        CCID71-3-06-2  STR  XY51:GPCChip
+        CCID71-7-03-5  STR  XY52:GPCChip
+        CCID71-7-06-3  STR  XY53:GPCChip
+        CCID71-7-14-2  STR  XY54:GPCChip
+        CCID71-7-05-7  STR  XY55:GPCChip
+        CCID71-1-09-2  STR  XY56:GPCChip
+        CCID71-3-09-2  STR  XY57:GPCChip
+        CCID71-1-06-2  STR  XY60:GPCChip
+        CCID71-7-12-4  STR  XY61:GPCChip
+        CCID71-7-16-3  STR  XY62:GPCChip
+        CCID71-7-01-7  STR  XY63:GPCChip
+        CCID71-7-12-5  STR  XY64:GPCChip
+        CCID71-7-09-5  STR  XY65:GPCChip
+        CCID71-1-03-3  STR  XY66:GPCChip
+        CCID71-7-06-5  STR  XY67:GPCChip
+        CCID71-7-04-2  STR  XY70:GPCChip
+        CCID71-3-03-3  STR  XY71:GPCChip
+        CCID71-7-01-1  STR  XY72:GPCChip
+        CCID71-7-01-6  STR  XY73:GPCChip
+        CCID71-3-06-4  STR  XY74:GPCChip
+        CCID71-7-15-7  STR  XY75:GPCChip
+        CCID71-1-07-4  STR  XY76:GPCChip
+        CCID71-1-01-2  STR  XY77:GPCChip
+END
+
+# CONTENTS        METADATA
+#         # CONTENT      =    chip name : type
+#         xy00  STR  XY00:GPCChip
+#         xy01  STR  XY01:GPCChip
+#         xy02  STR  XY02:GPCChip
+#         xy03  STR  XY03:GPCChip
+#         xy04  STR  XY04:GPCChip
+#         xy05  STR  XY05:GPCChip
+#         xy06  STR  XY06:GPCChip
+#         xy07  STR  XY07:GPCChip
+#         xy10  STR  XY10:GPCChip
+#         xy11  STR  XY11:GPCChip
+#         xy12  STR  XY12:GPCChip
+#         xy13  STR  XY13:GPCChip
+#         xy14  STR  XY14:GPCChip
+#         xy15  STR  XY15:GPCChip
+#         xy16  STR  XY16:GPCChip
+#         xy17  STR  XY17:GPCChip
+#         xy20  STR  XY20:GPCChip
+#         xy21  STR  XY21:GPCChip
+#         xy22  STR  XY22:GPCChip
+#         xy23  STR  XY23:GPCChip
+#         xy24  STR  XY24:GPCChip
+#         xy25  STR  XY25:GPCChip
+#         xy26  STR  XY26:GPCChip
+#         xy27  STR  XY27:GPCChip
+#         xy30  STR  XY30:GPCChip
+#         xy31  STR  XY31:GPCChip
+#         xy32  STR  XY32:GPCChip
+#         xy33  STR  XY33:GPCChip
+#         xy34  STR  XY34:GPCChip
+#         xy35  STR  XY35:GPCChip
+#         xy36  STR  XY36:GPCChip
+#         xy37  STR  XY37:GPCChip
+#         xy40  STR  XY40:GPCChip
+#         xy41  STR  XY41:GPCChip
+#         xy42  STR  XY42:GPCChip
+#         xy43  STR  XY43:GPCChip
+#         xy44  STR  XY44:GPCChip
+#         xy45  STR  XY45:GPCChip
+#         xy46  STR  XY46:GPCChip
+#         xy47  STR  XY47:GPCChip
+#         xy50  STR  XY50:GPCChip
+#         xy51  STR  XY51:GPCChip
+#         xy52  STR  XY52:GPCChip
+#         xy53  STR  XY53:GPCChip
+#         xy54  STR  XY54:GPCChip
+#         xy55  STR  XY55:GPCChip
+#         xy56  STR  XY56:GPCChip
+#         xy57  STR  XY57:GPCChip
+#         xy60  STR  XY60:GPCChip
+#         xy61  STR  XY61:GPCChip
+#         xy62  STR  XY62:GPCChip
+#         xy63  STR  XY63:GPCChip
+#         xy64  STR  XY64:GPCChip
+#         xy65  STR  XY65:GPCChip
+#         xy66  STR  XY66:GPCChip
+#         xy67  STR  XY67:GPCChip
+#         xy70  STR  XY70:GPCChip
+#         xy71  STR  XY71:GPCChip
+#         xy72  STR  XY72:GPCChip
+#         xy73  STR  XY73:GPCChip
+#         xy74  STR  XY74:GPCChip
+#         xy75  STR  XY75:GPCChip
+#         xy76  STR  XY76:GPCChip
+#         xy77  STR  XY77:GPCChip
+# 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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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.FILTER      STR     FILTER
+        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  TELTEMLC # Primary mirror support temps (C)   CZW: Confirm
+        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.SHUTOUTC	STR	SHUTOUTC
+        FPA.SHUTCUTC    STR     SHUTCUTC
+
+        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 #CZW: Confirm
+	CHIP.TEMPERATURE STR	DETTEM
+        FPA.EXPOSURE    STR     EXPREQ          # Requested exposure time, presumably camera exposure time
+        CELL.EXPOSURE   STR     EXPTIME         # Exposure time measured by shutter CZW: Not found in cell extensions/nor GPC1
+        CELL.DARKTIME   STR     DARKTIME        # Exposure time for camera
+        CELL.TIME       STR     SHUTOUTC	# Observation time CZW: Not found in cell extensions/nor GPC1
+        CELL.GAIN       STR     GAIN		# Cell gain (e/ADU) CZW: Not found in cell extensions
+        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     PS2
+        FPA.INSTRUMENT  STR     GPC2
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521
+        FPA.LATITUDE    STR     20:42:26.21 # North Latitude in Degrees 20.7070999146
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+        FPA.DETECTOR    STR     GPC2
+        FPA.TIMESYS     STR     UTC
+	CHIP.XSIZE	S32	4862 
+	CHIP.YSIZE	S32	4870 
+        CHIP.XPARITY    S32     1
+        CHIP.YPARITY    S32     1
+        CHIP.X0.DEPEND          STR     CHIP.NAME
+        CHIP.X0         METADATA
+          XY00  S32     4971
+          XY01  S32     4971
+          XY02  S32     4971
+          XY03  S32     4971
+          XY04  S32     4971
+          XY05  S32     4971
+          XY06  S32     4971
+          XY07  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
+          XY70  S32     34954
+          XY71  S32     34954
+          XY72  S32     34954
+          XY73  S32     34954
+          XY74  S32     34954
+          XY75  S32     34954
+          XY76  S32     34954
+          XY77  S32     34954
+        END
+        CHIP.Y0.DEPEND          STR     CHIP.NAME
+        CHIP.Y0         METADATA
+          XY00  S32     5143
+          XY01  S32     10286
+          XY02  S32     15429
+          XY03  S32     20572
+          XY04  S32     25715
+          XY05  S32     30858
+          XY06  S32     36001
+          XY07  S32     41144
+          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
+          XY70  S32     306
+          XY71  S32     5449
+          XY72  S32     10592
+          XY73  S32     15735
+          XY74  S32     20878
+          XY75  S32     26021
+          XY76  S32     31164
+          XY77  S32     36307
+        END
+        CHIP.XPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.XPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY07  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
+          XY70  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+          XY77  S32     1
+        END
+        CHIP.YPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.YPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY07  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
+          XY70  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+          XY77  S32     1
+        END
+        CELL.READDIR    S32     1
+#       CELL.BAD        S32     0
+        CELL.BAD        S32     -1000
+	CELL.XSIZE	S32	592 
+	CELL.YSIZE	S32	600 
+        CELL.TIMESYS    STR     UTC
+        CELL.SATURATION F32     60000		# Saturation point (ADU)
+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
+#	XY02	STR     0000000000000000000000000000000000000000000000000000000000000001 # xy77
+#	XY02	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
+#	XY06    STR     0101000000010000000110000100000000000000000000000000000000000000
+# 	XY06	BOOL	FALSE
+# END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/format_20220616.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/format_20220616.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/format_20220616.config	(revision 42661)
@@ -0,0 +1,636 @@
+# Refurbished GPC2
+# Change effective from 31 January 2018 (TJD=58149): different device arrangement.
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS2
+        TELESCOP        STR     PS2
+	INSTRUME	STR	gpc2
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+	MJD-OBS		F64	59746.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         STR     FPPOS      # Alternate CONTENT keyword in case DETECTOR is unreliable
+        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
+        CCID71-2-11-4  STR  XY00:GPCChip
+        CCID71-2-06-1  STR  XY01:GPCChip
+        CCID71-7-04-5  STR  XY02:GPCChip
+        CCID71-7-07-5  STR  XY03:GPCChip
+        CCID71-7-16-7  STR  XY04:GPCChip
+        CCID71-7-08-7  STR  XY05:GPCChip
+        CCID71-7-04-7  STR  XY06:GPCChip
+        CCID71-7-08-4  STR  XY07:GPCChip
+        CCID71-2-06-2  STR  XY10:GPCChip
+        CCID71-7-03-6  STR  XY11:GPCChip
+        CCID71-7-05-1  STR  XY12:GPCChip
+        CCID71-7-07-6  STR  XY13:GPCChip
+        CCID71-7-16-4  STR  XY14:GPCChip
+        CCID71-7-03-3  STR  XY15:GPCChip
+        CCID71-7-02-3  STR  XY16:GPCChip
+        CCID71-7-05-3  STR  XY17:GPCChip
+        CCID71-7-02-1  STR  XY20:GPCChip
+        CCID71-7-05-4  STR  XY21:GPCChip
+        CCID71-7-13-7  STR  XY22:GPCChip
+        CCID71-7-07-3  STR  XY23:GPCChip
+        CCID71-7-16-2  STR  XY24:GPCChip
+        CCID71-7-08-5  STR  XY25:GPCChip
+        CCID71-7-02-4  STR  XY26:GPCChip
+        CCID71-3-11-2  STR  XY27:GPCChip
+        CCID71-7-02-5  STR  XY30:GPCChip
+        CCID71-7-14-7  STR  XY31:GPCChip
+        CCID71-1-11-2  STR  XY32:GPCChip
+        CCID71-7-07-1  STR  XY33:GPCChip
+        CCID71-7-13-3  STR  XY34:GPCChip
+        CCID71-7-08-6  STR  XY35:GPCChip
+        CCID71-7-01-4  STR  XY36:GPCChip
+        CCID71-7-15-5  STR  XY37:GPCChip
+        CCID71-7-06-6  STR  XY40:GPCChip
+        CCID71-7-12-6  STR  XY41:GPCChip
+        CCID71-7-03-7  STR  XY42:GPCChip
+        CCID71-7-03-1  STR  XY43:GPCChip
+        CCID71-7-12-1  STR  XY44:GPCChip
+        CCID71-7-09-4  STR  XY45:GPCChip
+        CCID71-1-03-2  STR  XY46:GPCChip
+        CCID71-2-08-2  STR  XY47:GPCChip
+        CCID71-7-14-5  STR  XY50:GPCChip
+        CCID71-3-06-2  STR  XY51:GPCChip
+        CCID71-7-03-5  STR  XY52:GPCChip
+        CCID71-7-06-3  STR  XY53:GPCChip
+        CCID71-7-14-2  STR  XY54:GPCChip
+        CCID71-7-05-7  STR  XY55:GPCChip
+        CCID71-1-09-2  STR  XY56:GPCChip
+        CCID71-3-09-2  STR  XY57:GPCChip
+        CCID71-1-06-2  STR  XY60:GPCChip
+        CCID71-7-12-4  STR  XY61:GPCChip
+        CCID71-7-16-3  STR  XY62:GPCChip
+        CCID71-7-01-7  STR  XY63:GPCChip
+        CCID71-7-12-5  STR  XY64:GPCChip
+        CCID71-7-09-5  STR  XY65:GPCChip
+        CCID71-1-03-3  STR  XY66:GPCChip
+        CCID71-7-06-5  STR  XY67:GPCChip
+        CCID71-7-04-2  STR  XY70:GPCChip
+        CCID71-3-03-3  STR  XY71:GPCChip
+        CCID71-7-01-1  STR  XY72:GPCChip
+        CCID71-7-01-6  STR  XY73:GPCChip
+        CCID71-3-06-4  STR  XY74:GPCChip
+        CCID71-7-15-7  STR  XY75:GPCChip
+        CCID71-1-07-4  STR  XY76:GPCChip
+        CCID71-1-01-2  STR  XY77:GPCChip
+END
+
+# CONTENTS        METADATA
+#         # CONTENT      =    chip name : type
+#         xy00  STR  XY00:GPCChip
+#         xy01  STR  XY01:GPCChip
+#         xy02  STR  XY02:GPCChip
+#         xy03  STR  XY03:GPCChip
+#         xy04  STR  XY04:GPCChip
+#         xy05  STR  XY05:GPCChip
+#         xy06  STR  XY06:GPCChip
+#         xy07  STR  XY07:GPCChip
+#         xy10  STR  XY10:GPCChip
+#         xy11  STR  XY11:GPCChip
+#         xy12  STR  XY12:GPCChip
+#         xy13  STR  XY13:GPCChip
+#         xy14  STR  XY14:GPCChip
+#         xy15  STR  XY15:GPCChip
+#         xy16  STR  XY16:GPCChip
+#         xy17  STR  XY17:GPCChip
+#         xy20  STR  XY20:GPCChip
+#         xy21  STR  XY21:GPCChip
+#         xy22  STR  XY22:GPCChip
+#         xy23  STR  XY23:GPCChip
+#         xy24  STR  XY24:GPCChip
+#         xy25  STR  XY25:GPCChip
+#         xy26  STR  XY26:GPCChip
+#         xy27  STR  XY27:GPCChip
+#         xy30  STR  XY30:GPCChip
+#         xy31  STR  XY31:GPCChip
+#         xy32  STR  XY32:GPCChip
+#         xy33  STR  XY33:GPCChip
+#         xy34  STR  XY34:GPCChip
+#         xy35  STR  XY35:GPCChip
+#         xy36  STR  XY36:GPCChip
+#         xy37  STR  XY37:GPCChip
+#         xy40  STR  XY40:GPCChip
+#         xy41  STR  XY41:GPCChip
+#         xy42  STR  XY42:GPCChip
+#         xy43  STR  XY43:GPCChip
+#         xy44  STR  XY44:GPCChip
+#         xy45  STR  XY45:GPCChip
+#         xy46  STR  XY46:GPCChip
+#         xy47  STR  XY47:GPCChip
+#         xy50  STR  XY50:GPCChip
+#         xy51  STR  XY51:GPCChip
+#         xy52  STR  XY52:GPCChip
+#         xy53  STR  XY53:GPCChip
+#         xy54  STR  XY54:GPCChip
+#         xy55  STR  XY55:GPCChip
+#         xy56  STR  XY56:GPCChip
+#         xy57  STR  XY57:GPCChip
+#         xy60  STR  XY60:GPCChip
+#         xy61  STR  XY61:GPCChip
+#         xy62  STR  XY62:GPCChip
+#         xy63  STR  XY63:GPCChip
+#         xy64  STR  XY64:GPCChip
+#         xy65  STR  XY65:GPCChip
+#         xy66  STR  XY66:GPCChip
+#         xy67  STR  XY67:GPCChip
+#         xy70  STR  XY70:GPCChip
+#         xy71  STR  XY71:GPCChip
+#         xy72  STR  XY72:GPCChip
+#         xy73  STR  XY73:GPCChip
+#         xy74  STR  XY74:GPCChip
+#         xy75  STR  XY75:GPCChip
+#         xy76  STR  XY76:GPCChip
+#         xy77  STR  XY77:GPCChip
+# 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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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.FILTER      STR     FILTER
+        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     SHMDOUTC 
+        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  TELTEMLC # Primary mirror support temps (C)   CZW: Confirm
+        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.SHUTOUTC	STR	SHUTOUTC
+        FPA.SHUTCUTC    STR     SHUTCUTC
+        FPA.SHMDOUTC    STR     SHMDOUTC
+        FPA.SHMDCUTC    STR     SHMDCUTC
+
+        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 #CZW: Confirm
+	CHIP.TEMPERATURE STR	DETTEM
+        FPA.EXPOSURE    STR     EXPREQ          # Requested exposure time, presumably camera exposure time
+        CELL.EXPOSURE   STR     EXPTIME         # Exposure time measured by shutter CZW: Not found in cell extensions/nor GPC1
+        CELL.DARKTIME   STR     DARKTIME        # Exposure time for camera
+        CELL.TIME       STR     SHMDOUTC	# Observation time CZW: Not found in cell extensions/nor GPC1
+        CELL.GAIN       STR     GAIN		# Cell gain (e/ADU) CZW: Not found in cell extensions
+        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     PS2
+        FPA.INSTRUMENT  STR     GPC2
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521
+        FPA.LATITUDE    STR     20:42:26.21 # North Latitude in Degrees 20.7070999146
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+        FPA.DETECTOR    STR     GPC2
+        FPA.TIMESYS     STR     UTC
+	CHIP.XSIZE	S32	4862 
+	CHIP.YSIZE	S32	4870 
+        CHIP.XPARITY    S32     1
+        CHIP.YPARITY    S32     1
+        CHIP.X0.DEPEND          STR     CHIP.NAME
+        CHIP.X0         METADATA
+          XY00  S32     4971
+          XY01  S32     4971
+          XY02  S32     4971
+          XY03  S32     4971
+          XY04  S32     4971
+          XY05  S32     4971
+          XY06  S32     4971
+          XY07  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
+          XY70  S32     34954
+          XY71  S32     34954
+          XY72  S32     34954
+          XY73  S32     34954
+          XY74  S32     34954
+          XY75  S32     34954
+          XY76  S32     34954
+          XY77  S32     34954
+        END
+        CHIP.Y0.DEPEND          STR     CHIP.NAME
+        CHIP.Y0         METADATA
+          XY00  S32     5143
+          XY01  S32     10286
+          XY02  S32     15429
+          XY03  S32     20572
+          XY04  S32     25715
+          XY05  S32     30858
+          XY06  S32     36001
+          XY07  S32     41144
+          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
+          XY70  S32     306
+          XY71  S32     5449
+          XY72  S32     10592
+          XY73  S32     15735
+          XY74  S32     20878
+          XY75  S32     26021
+          XY76  S32     31164
+          XY77  S32     36307
+        END
+        CHIP.XPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.XPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY07  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
+          XY70  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+          XY77  S32     1
+        END
+        CHIP.YPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.YPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY07  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
+          XY70  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+          XY77  S32     1
+        END
+        CELL.READDIR    S32     1
+#       CELL.BAD        S32     0
+        CELL.BAD        S32     -1000
+	CELL.XSIZE	S32	592 
+	CELL.YSIZE	S32	600 
+        CELL.TIMESYS    STR     UTC
+        CELL.SATURATION F32     60000		# Saturation point (ADU)
+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
+#	XY02	STR     0000000000000000000000000000000000000000000000000000000000000001 # xy77
+#	XY02	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
+#	XY06    STR     0101000000010000000110000100000000000000000000000000000000000000
+# 	XY06	BOOL	FALSE
+# END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/format_default.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/format_default.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/format_default.config	(revision 42661)
@@ -0,0 +1,633 @@
+# Refurbished GPC2
+# Copy of the format_20180131.config, with the MJD restriction removed.  This will allow data with bad
+#   MJD-OBS values to be registered without complication.
+#
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS2
+        TELESCOP        STR     PS2
+	INSTRUME	STR	gpc2
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+#	MJD-OBS		F64	58149.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         STR     FPPOS      # Alternate CONTENT keyword in case DETECTOR is unreliable
+        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
+        CCID71-2-11-4  STR  XY00:GPCChip
+        CCID71-2-06-1  STR  XY01:GPCChip
+        CCID71-7-04-5  STR  XY02:GPCChip
+        CCID71-7-07-5  STR  XY03:GPCChip
+        CCID71-7-16-7  STR  XY04:GPCChip
+        CCID71-7-08-7  STR  XY05:GPCChip
+        CCID71-7-04-7  STR  XY06:GPCChip
+        CCID71-7-08-4  STR  XY07:GPCChip
+        CCID71-2-06-2  STR  XY10:GPCChip
+        CCID71-7-03-6  STR  XY11:GPCChip
+        CCID71-7-05-1  STR  XY12:GPCChip
+        CCID71-7-07-6  STR  XY13:GPCChip
+        CCID71-7-16-4  STR  XY14:GPCChip
+        CCID71-7-03-3  STR  XY15:GPCChip
+        CCID71-7-02-3  STR  XY16:GPCChip
+        CCID71-7-05-3  STR  XY17:GPCChip
+        CCID71-7-02-1  STR  XY20:GPCChip
+        CCID71-7-05-4  STR  XY21:GPCChip
+        CCID71-7-13-7  STR  XY22:GPCChip
+        CCID71-7-07-3  STR  XY23:GPCChip
+        CCID71-7-16-2  STR  XY24:GPCChip
+        CCID71-7-08-5  STR  XY25:GPCChip
+        CCID71-7-02-4  STR  XY26:GPCChip
+        CCID71-3-11-2  STR  XY27:GPCChip
+        CCID71-7-02-5  STR  XY30:GPCChip
+        CCID71-7-14-7  STR  XY31:GPCChip
+        CCID71-1-11-2  STR  XY32:GPCChip
+        CCID71-7-07-1  STR  XY33:GPCChip
+        CCID71-7-13-3  STR  XY34:GPCChip
+        CCID71-7-08-6  STR  XY35:GPCChip
+        CCID71-7-01-4  STR  XY36:GPCChip
+        CCID71-7-15-5  STR  XY37:GPCChip
+        CCID71-7-06-6  STR  XY40:GPCChip
+        CCID71-7-12-6  STR  XY41:GPCChip
+        CCID71-7-03-7  STR  XY42:GPCChip
+        CCID71-7-03-1  STR  XY43:GPCChip
+        CCID71-7-12-1  STR  XY44:GPCChip
+        CCID71-7-09-4  STR  XY45:GPCChip
+        CCID71-1-03-2  STR  XY46:GPCChip
+        CCID71-2-08-2  STR  XY47:GPCChip
+        CCID71-7-14-5  STR  XY50:GPCChip
+        CCID71-3-06-2  STR  XY51:GPCChip
+        CCID71-7-03-5  STR  XY52:GPCChip
+        CCID71-7-06-3  STR  XY53:GPCChip
+        CCID71-7-14-2  STR  XY54:GPCChip
+        CCID71-7-05-7  STR  XY55:GPCChip
+        CCID71-1-09-2  STR  XY56:GPCChip
+        CCID71-3-09-2  STR  XY57:GPCChip
+        CCID71-1-06-2  STR  XY60:GPCChip
+        CCID71-7-12-4  STR  XY61:GPCChip
+        CCID71-7-16-3  STR  XY62:GPCChip
+        CCID71-7-01-7  STR  XY63:GPCChip
+        CCID71-7-12-5  STR  XY64:GPCChip
+        CCID71-7-09-5  STR  XY65:GPCChip
+        CCID71-1-03-3  STR  XY66:GPCChip
+        CCID71-7-06-5  STR  XY67:GPCChip
+        CCID71-7-04-2  STR  XY70:GPCChip
+        CCID71-3-03-3  STR  XY71:GPCChip
+        CCID71-7-01-1  STR  XY72:GPCChip
+        CCID71-7-01-6  STR  XY73:GPCChip
+        CCID71-3-06-4  STR  XY74:GPCChip
+        CCID71-7-15-7  STR  XY75:GPCChip
+        CCID71-1-07-4  STR  XY76:GPCChip
+        CCID71-1-01-2  STR  XY77:GPCChip
+END
+
+# CONTENTS        METADATA
+#         # CONTENT      =    chip name : type
+#         xy00  STR  XY00:GPCChip
+#         xy01  STR  XY01:GPCChip
+#         xy02  STR  XY02:GPCChip
+#         xy03  STR  XY03:GPCChip
+#         xy04  STR  XY04:GPCChip
+#         xy05  STR  XY05:GPCChip
+#         xy06  STR  XY06:GPCChip
+#         xy07  STR  XY07:GPCChip
+#         xy10  STR  XY10:GPCChip
+#         xy11  STR  XY11:GPCChip
+#         xy12  STR  XY12:GPCChip
+#         xy13  STR  XY13:GPCChip
+#         xy14  STR  XY14:GPCChip
+#         xy15  STR  XY15:GPCChip
+#         xy16  STR  XY16:GPCChip
+#         xy17  STR  XY17:GPCChip
+#         xy20  STR  XY20:GPCChip
+#         xy21  STR  XY21:GPCChip
+#         xy22  STR  XY22:GPCChip
+#         xy23  STR  XY23:GPCChip
+#         xy24  STR  XY24:GPCChip
+#         xy25  STR  XY25:GPCChip
+#         xy26  STR  XY26:GPCChip
+#         xy27  STR  XY27:GPCChip
+#         xy30  STR  XY30:GPCChip
+#         xy31  STR  XY31:GPCChip
+#         xy32  STR  XY32:GPCChip
+#         xy33  STR  XY33:GPCChip
+#         xy34  STR  XY34:GPCChip
+#         xy35  STR  XY35:GPCChip
+#         xy36  STR  XY36:GPCChip
+#         xy37  STR  XY37:GPCChip
+#         xy40  STR  XY40:GPCChip
+#         xy41  STR  XY41:GPCChip
+#         xy42  STR  XY42:GPCChip
+#         xy43  STR  XY43:GPCChip
+#         xy44  STR  XY44:GPCChip
+#         xy45  STR  XY45:GPCChip
+#         xy46  STR  XY46:GPCChip
+#         xy47  STR  XY47:GPCChip
+#         xy50  STR  XY50:GPCChip
+#         xy51  STR  XY51:GPCChip
+#         xy52  STR  XY52:GPCChip
+#         xy53  STR  XY53:GPCChip
+#         xy54  STR  XY54:GPCChip
+#         xy55  STR  XY55:GPCChip
+#         xy56  STR  XY56:GPCChip
+#         xy57  STR  XY57:GPCChip
+#         xy60  STR  XY60:GPCChip
+#         xy61  STR  XY61:GPCChip
+#         xy62  STR  XY62:GPCChip
+#         xy63  STR  XY63:GPCChip
+#         xy64  STR  XY64:GPCChip
+#         xy65  STR  XY65:GPCChip
+#         xy66  STR  XY66:GPCChip
+#         xy67  STR  XY67:GPCChip
+#         xy70  STR  XY70:GPCChip
+#         xy71  STR  XY71:GPCChip
+#         xy72  STR  XY72:GPCChip
+#         xy73  STR  XY73:GPCChip
+#         xy74  STR  XY74:GPCChip
+#         xy75  STR  XY75:GPCChip
+#         xy76  STR  XY76:GPCChip
+#         xy77  STR  XY77:GPCChip
+# 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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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.FILTER      STR     FILTER
+        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  TELTEMLC # Primary mirror support temps (C)   CZW: Confirm
+        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 #CZW: Confirm
+	CHIP.TEMPERATURE STR	DETTEM
+        FPA.EXPOSURE    STR     EXPREQ          # Requested exposure time, presumably camera exposure time
+        CELL.EXPOSURE   STR     EXPTIME         # Exposure time measured by shutter CZW: Not found in cell extensions/nor GPC1
+        CELL.DARKTIME   STR     DARKTIME        # Exposure time for camera
+        CELL.TIME       STR     SHUTOUTC	# Observation time CZW: Not found in cell extensions/nor GPC1
+        CELL.GAIN       STR     GAIN		# Cell gain (e/ADU) CZW: Not found in cell extensions
+        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     PS2
+        FPA.INSTRUMENT  STR     GPC2
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521
+        FPA.LATITUDE    STR     20:42:26.21 # North Latitude in Degrees 20.7070999146
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+        FPA.DETECTOR    STR     GPC2
+        FPA.TIMESYS     STR     UTC
+	CHIP.XSIZE	S32	4862 
+	CHIP.YSIZE	S32	4870 
+        CHIP.XPARITY    S32     1
+        CHIP.YPARITY    S32     1
+        CHIP.X0.DEPEND          STR     CHIP.NAME
+        CHIP.X0         METADATA
+          XY00  S32     4971
+          XY01  S32     4971
+          XY02  S32     4971
+          XY03  S32     4971
+          XY04  S32     4971
+          XY05  S32     4971
+          XY06  S32     4971
+          XY07  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
+          XY70  S32     34954
+          XY71  S32     34954
+          XY72  S32     34954
+          XY73  S32     34954
+          XY74  S32     34954
+          XY75  S32     34954
+          XY76  S32     34954
+          XY77  S32     34954
+        END
+        CHIP.Y0.DEPEND          STR     CHIP.NAME
+        CHIP.Y0         METADATA
+          XY00  S32     5143
+          XY01  S32     10286
+          XY02  S32     15429
+          XY03  S32     20572
+          XY04  S32     25715
+          XY05  S32     30858
+          XY06  S32     36001
+          XY07  S32     41144
+          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
+          XY70  S32     306
+          XY71  S32     5449
+          XY72  S32     10592
+          XY73  S32     15735
+          XY74  S32     20878
+          XY75  S32     26021
+          XY76  S32     31164
+          XY77  S32     36307
+        END
+        CHIP.XPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.XPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY07  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
+          XY70  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+          XY77  S32     1
+        END
+        CHIP.YPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.YPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY04  S32     -1
+          XY05  S32     -1
+          XY06  S32     -1
+          XY07  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
+          XY70  S32     1
+          XY71  S32     1
+          XY72  S32     1
+          XY73  S32     1
+          XY74  S32     1
+          XY75  S32     1
+          XY76  S32     1
+          XY77  S32     1
+        END
+        CELL.READDIR    S32     1
+#       CELL.BAD        S32     0
+        CELL.BAD        S32     -1000
+	CELL.XSIZE	S32	592 
+	CELL.YSIZE	S32	600 
+        CELL.TIMESYS    STR     UTC
+        CELL.SATURATION F32     60000		# Saturation point (ADU)
+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
+#	XY02	STR     0000000000000000000000000000000000000000000000000000000000000001 # xy77
+#	XY02	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
+#	XY06    STR     0101000000010000000110000100000000000000000000000000000000000000
+# 	XY06	BOOL	FALSE
+# END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/format_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/format_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/format_mef.config	(revision 42661)
@@ -0,0 +1,519 @@
+# The raw GPC data comes off the telescope with each of the chips stored in separate files
+
+# How to identify this type
+RULE	METADATA
+	DETECTOR	STR     gpc2       # having this forces / allows asm files to be correctly loaded?
+	CONTROLR	STR	STARGRASP
+	PSFORMAT        STR     MEF
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	   # The FITS file represents a complete camera fpa
+	EXTENSIONS	STR	CHIP	   # The extensions represent chips
+	FPA.OBS		STR	FILENAME   # A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+        # CONTENT      =    chip name : type
+        CCID71-2-11-4  STR  XY00:GPCChip
+        CCID71-2-06-1  STR  XY01:GPCChip
+        CCID71-7-04-5  STR  XY02:GPCChip
+        CCID71-7-07-5  STR  XY03:GPCChip
+        CCID71-7-16-7  STR  XY04:GPCChip
+        CCID71-7-08-7  STR  XY05:GPCChip
+        CCID71-7-04-7  STR  XY06:GPCChip
+        CCID71-7-08-4  STR  XY07:GPCChip
+        CCID71-2-06-2  STR  XY10:GPCChip
+        CCID71-7-03-6  STR  XY11:GPCChip
+        CCID71-7-05-1  STR  XY12:GPCChip
+        CCID71-7-07-6  STR  XY13:GPCChip
+        CCID71-7-16-4  STR  XY14:GPCChip
+        CCID71-7-03-3  STR  XY15:GPCChip
+        CCID71-7-02-3  STR  XY16:GPCChip
+        CCID71-7-05-3  STR  XY17:GPCChip
+        CCID71-7-02-1  STR  XY20:GPCChip
+        CCID71-7-05-4  STR  XY21:GPCChip
+        CCID71-7-13-7  STR  XY22:GPCChip
+        CCID71-7-07-3  STR  XY23:GPCChip
+        CCID71-7-16-2  STR  XY24:GPCChip
+        CCID71-7-08-5  STR  XY25:GPCChip
+        CCID71-7-02-4  STR  XY26:GPCChip
+        CCID71-3-11-2  STR  XY27:GPCChip
+        CCID71-7-02-5  STR  XY30:GPCChip
+        CCID71-7-14-7  STR  XY31:GPCChip
+        CCID71-1-11-2  STR  XY32:GPCChip
+        CCID71-7-07-1  STR  XY33:GPCChip
+        CCID71-7-13-3  STR  XY34:GPCChip
+        CCID71-7-08-6  STR  XY35:GPCChip
+        CCID71-7-01-4  STR  XY36:GPCChip
+        CCID71-7-15-5  STR  XY37:GPCChip
+        CCID71-7-06-6  STR  XY40:GPCChip
+        CCID71-7-12-6  STR  XY41:GPCChip
+        CCID71-7-03-7  STR  XY42:GPCChip
+        CCID71-7-03-1  STR  XY43:GPCChip
+        CCID71-7-12-1  STR  XY44:GPCChip
+        CCID71-7-09-4  STR  XY45:GPCChip
+        CCID71-1-03-2  STR  XY46:GPCChip
+        CCID71-2-08-2  STR  XY47:GPCChip
+        CCID71-7-14-5  STR  XY50:GPCChip
+        CCID71-3-06-2  STR  XY51:GPCChip
+        CCID71-7-03-5  STR  XY52:GPCChip
+        CCID71-7-06-3  STR  XY53:GPCChip
+        CCID71-7-14-2  STR  XY54:GPCChip
+        CCID71-7-05-7  STR  XY55:GPCChip
+        CCID71-1-09-2  STR  XY56:GPCChip
+        CCID71-3-09-2  STR  XY57:GPCChip
+        CCID71-1-06-2  STR  XY60:GPCChip
+        CCID71-7-12-4  STR  XY61:GPCChip
+        CCID71-7-16-3  STR  XY62:GPCChip
+        CCID71-7-01-7  STR  XY63:GPCChip
+        CCID71-7-12-5  STR  XY64:GPCChip
+        CCID71-7-09-5  STR  XY65:GPCChip
+        CCID71-1-03-3  STR  XY66:GPCChip
+        CCID71-7-06-5  STR  XY67:GPCChip
+        CCID71-7-04-2  STR  XY70:GPCChip
+        CCID71-3-03-3  STR  XY71:GPCChip
+        CCID71-7-01-1  STR  XY72:GPCChip
+        CCID71-7-01-6  STR  XY73:GPCChip
+        CCID71-3-06-4  STR  XY74:GPCChip
+        CCID71-7-15-7  STR  XY75:GPCChip
+        CCID71-1-07-4  STR  XY76:GPCChip
+        CCID71-1-01-2  STR  XY77:GPCChip
+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
+		xy01   STR  xy01:GPCCell
+		xy11   STR  xy11:GPCCell
+		xy21   STR  xy21:GPCCell
+		xy31   STR  xy31:GPCCell
+		xy41   STR  xy41:GPCCell
+		xy51   STR  xy51:GPCCell
+		xy61   STR  xy61:GPCCell
+		xy71   STR  xy71:GPCCell
+		xy02   STR  xy02:GPCCell
+		xy12   STR  xy12:GPCCell
+		xy22   STR  xy22:GPCCell
+		xy32   STR  xy32:GPCCell
+		xy42   STR  xy42:GPCCell
+		xy52   STR  xy52:GPCCell
+		xy62   STR  xy62:GPCCell
+		xy72   STR  xy72:GPCCell
+		xy03   STR  xy03:GPCCell
+		xy13   STR  xy13:GPCCell
+		xy23   STR  xy23:GPCCell
+		xy33   STR  xy33:GPCCell
+		xy43   STR  xy43:GPCCell
+		xy53   STR  xy53:GPCCell
+		xy63   STR  xy63:GPCCell
+		xy73   STR  xy73:GPCCell
+		xy04   STR  xy04:GPCCell
+		xy14   STR  xy14:GPCCell
+		xy24   STR  xy24:GPCCell
+		xy34   STR  xy34:GPCCell
+		xy44   STR  xy44:GPCCell
+		xy54   STR  xy54:GPCCell
+		xy64   STR  xy64:GPCCell
+		xy74   STR  xy74:GPCCell
+		xy05   STR  xy05:GPCCell
+		xy15   STR  xy15:GPCCell
+		xy25   STR  xy25:GPCCell
+		xy35   STR  xy35:GPCCell
+		xy45   STR  xy45:GPCCell
+		xy55   STR  xy55:GPCCell
+		xy65   STR  xy65:GPCCell
+		xy75   STR  xy75:GPCCell
+		xy06   STR  xy06:GPCCell
+		xy16   STR  xy16:GPCCell
+		xy26   STR  xy26:GPCCell
+		xy36   STR  xy36:GPCCell
+		xy46   STR  xy46:GPCCell
+		xy56   STR  xy56:GPCCell
+		xy66   STR  xy66:GPCCell
+		xy76   STR  xy76:GPCCell
+		xy07   STR  xy07:GPCCell
+		xy17   STR  xy17:GPCCell
+		xy27   STR  xy27:GPCCell
+		xy37   STR  xy37:GPCCell
+		xy47   STR  xy47:GPCCell
+		xy57   STR  xy57:GPCCell
+		xy67   STR  xy67:GPCCell
+		xy77   STR  xy77: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
+## EAM: since this format is used for smf and  for the MEF fl
+TRANSLATION	METADATA
+        FPA.FILTERID    STR     FILTERID
+        FPA.FILTER      STR     FILTERID
+#	FPA.FILTER      STR     FILTER
+        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  : this should not be set or it overrides the FPA.SHUTOUTC entry below
+        FPA.ALT         STR     ALT
+        FPA.AZ          STR     AZ
+        FPA.TEMP        STR     DETTEM
+	FPA.ZP		STR	MAG_ZP
+        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  TELTEMLC # Primary mirror support temps (C)   CZW: Confirm
+        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 #CZW: Confirm
+	CHIP.TEMPERATURE STR	DETTEM
+        FPA.EXPOSURE    STR     EXPREQ          # Requested exposure time, presumably camera exposure time
+        CELL.EXPOSURE   STR     EXPTIME         # Exposure time measured by shutter CZW: Not found in cell extensions/nor GPC1
+        CELL.DARKTIME   STR     DARKTIME        # Exposure time for camera
+#       CELL.TIME       STR     SHUTOUTC	# EAM this should not be set
+        CELL.GAIN       STR     GAIN		# Cell gain (e/ADU) CZW: Not found in cell extensions
+        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     PS2
+        FPA.INSTRUMENT  STR     GPC2
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521
+        FPA.LATITUDE    STR     20:42:26.21 # North Latitude in Degrees 20.7070999146
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+        FPA.DETECTOR    STR     GPC2
+        FPA.TIMESYS     STR     TAI
+#       FPA.TIMESYS     STR     UTC  -- TAI is consisent with GPC1
+	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
+          XY34  S32     19884
+          XY35  S32     19884
+          XY36  S32     19884
+          XY37  S32     19884
+          XY40  S32     20041
+          XY41  S32     20041
+          XY42  S32     20041
+          XY43  S32     20041
+          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
+          XY35  S32     30858
+          XY36  S32     36001
+          XY37  S32     41144
+          XY40  S32     306
+          XY41  S32     5449
+          XY42  S32     10592
+          XY43  S32     15735
+          XY44  S32     20878
+          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.XSIZE	S32	590
+	CELL.YSIZE	S32	598
+	CELL.TIMESYS	STR	TAI
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+	CELL.BINNING	STR	TOGETHER
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/gpc2/format_raw.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/format_raw.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/format_raw.config	(revision 42661)
@@ -0,0 +1,528 @@
+# Refurbished GPC1
+# Change effective from 22 January 2010 (TJD=5219): new CCD temperature keywords
+
+# How to identify this type
+RULE    METADATA
+	ORIGIN		STR	PS2
+        TELESCOP        STR     PS2
+	INSTRUME	STR	gpc2
+        CONTROLR        STR     STARGRASP
+        NAMPS           S32     64
+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
+        CCID71-2-03-1  STR  XY02:GPCChip
+        CCID71-2-07-2  STR  XY03:GPCChip
+        CCID71-3-08-1  STR  XY04:GPCChip
+        CCID71-1-05-1  STR  XY05:GPCChip
+        CCID71-3-11-3  STR  XY11:GPCChip
+        CCID71-1-10-1  STR  XY12:GPCChip
+        CCID71-3-06-3  STR  XY13:GPCChip
+        CCID71-2-03-2  STR  XY14:GPCChip
+        CCID71-2-08-1  STR  XY15:GPCChip
+        CCID71-2-11-1  STR  XY16:GPCChip
+        CCID71-1-08-4  STR  XY21:GPCChip
+        CCID71-3-03-3  STR  XY22:GPCChip
+        CCID71-3-06-1  STR  XY23:GPCChip
+        CCID71-3-06-2  STR  XY24:GPCChip
+        CCID71-3-06-4  STR  XY25:GPCChip
+        CCID71-1-06-1  STR  XY26:GPCChip
+        CCID71-1-08-2  STR  XY30:GPCChip
+        CCID71-1-05-4  STR  XY31:GPCChip
+        CCID71-1-03-3  STR  XY32:GPCChip
+        CCID71-1-03-2  STR  XY33:GPCChip
+        CCID71-1-06-2  STR  XY34:GPCChip
+        CCID71-1-07-4  STR  XY35:GPCChip
+        CCID71-3-11-2  STR  XY36:GPCChip
+        CCID71-2-12-1  STR  XY37:GPCChip
+        CCID71-1-11-3  STR  XY40:GPCChip
+        CCID71-1-11-2  STR  XY41:GPCChip
+        CCID71-1-09-2  STR  XY42:GPCChip
+        CCID71-2-05-4  STR  XY43:GPCChip
+        CCID71-2-06-2  STR  XY44:GPCChip
+        CCID71-3-03-2  STR  XY45:GPCChip
+        CCID71-2-06-1  STR  XY46:GPCChip
+        CCID71-3-02-1  STR  XY47:GPCChip
+        CCID71-2-10-1  STR  XY51:GPCChip
+        CCID71-2-08-2  STR  XY52:GPCChip
+        CCID71-2-10-2  STR  XY53:GPCChip
+        CCID71-2-11-4  STR  XY54:GPCChip
+        CCID71-3-09-2  STR  XY55:GPCChip
+        CCID71-3-09-1  STR  XY56:GPCChip
+        CCID71-2-03-3  STR  XY61:GPCChip
+        CCID71-1-01-2  STR  XY62:GPCChip
+        CCID71-1-10-2  STR  XY63:GPCChip
+        CCID71-1-05-2  STR  XY64:GPCChip
+        CCID71-1-05-3  STR  XY65:GPCChip
+        CCID71-1-01-4  STR  XY66:GPCChip
+        CCID71-1-03-4  STR  XY72:GPCChip
+        CCID71-2-11-2  STR  XY73:GPCChip
+        CCID71-3-08-2  STR  XY74:GPCChip
+        CCID71-3-11-4  STR  XY75:GPCChip
+
+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
+                xy01   STR  xy01:GPCCell
+                xy11   STR  xy11:GPCCell
+                xy21   STR  xy21:GPCCell
+                xy31   STR  xy31:GPCCell
+                xy41   STR  xy41:GPCCell
+                xy51   STR  xy51:GPCCell
+                xy61   STR  xy61:GPCCell
+                xy71   STR  xy71:GPCCell
+                xy02   STR  xy02:GPCCell
+                xy12   STR  xy12:GPCCell
+                xy22   STR  xy22:GPCCell
+                xy32   STR  xy32:GPCCell
+                xy42   STR  xy42:GPCCell
+                xy52   STR  xy52:GPCCell
+                xy62   STR  xy62:GPCCell
+                xy72   STR  xy72:GPCCell
+                xy03   STR  xy03:GPCCell
+                xy13   STR  xy13:GPCCell
+                xy23   STR  xy23:GPCCell
+                xy33   STR  xy33:GPCCell
+                xy43   STR  xy43:GPCCell
+                xy53   STR  xy53:GPCCell
+                xy63   STR  xy63:GPCCell
+                xy73   STR  xy73:GPCCell
+                xy04   STR  xy04:GPCCell
+                xy14   STR  xy14:GPCCell
+                xy24   STR  xy24:GPCCell
+                xy34   STR  xy34:GPCCell
+                xy44   STR  xy44:GPCCell
+                xy54   STR  xy54:GPCCell
+                xy64   STR  xy64:GPCCell
+                xy74   STR  xy74:GPCCell
+                xy05   STR  xy05:GPCCell
+                xy15   STR  xy15:GPCCell
+                xy25   STR  xy25:GPCCell
+                xy35   STR  xy35:GPCCell
+                xy45   STR  xy45:GPCCell
+                xy55   STR  xy55:GPCCell
+                xy65   STR  xy65:GPCCell
+                xy75   STR  xy75:GPCCell
+                xy06   STR  xy06:GPCCell
+                xy16   STR  xy16:GPCCell
+                xy26   STR  xy26:GPCCell
+                xy36   STR  xy36:GPCCell
+                xy46   STR  xy46:GPCCell
+                xy56   STR  xy56:GPCCell
+                xy66   STR  xy66:GPCCell
+                xy76   STR  xy76:GPCCell
+                xy07   STR  xy07:GPCCell
+                xy17   STR  xy17:GPCCell
+                xy27   STR  xy27:GPCCell
+                xy37   STR  xy37:GPCCell
+                xy47   STR  xy47:GPCCell
+                xy57   STR  xy57:GPCCell
+                xy67   STR  xy67:GPCCell
+                xy77   STR  xy77: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     PS2
+        FPA.INSTRUMENT  STR     GPC2
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521
+        FPA.LATITUDE    STR     20:42:26.21 # North Latitude in Degrees 20.7070999146
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+        FPA.DETECTOR    STR     GPC2
+        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
+        CELL.SATURATION F32     60000		# Saturation point (ADU)
+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
+#	XY02	STR     0000000000000000000000000000000000000000000000000000000000000001 # xy77
+#	XY02	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
+#	XY06    STR     0101000000010000000110000100000000000000000000000000000000000000
+# 	XY06	BOOL	FALSE
+# END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/ghost.model.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/ghost.model.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/ghost.model.mdc	(revision 42661)
@@ -0,0 +1,70 @@
+# TdB20200327 ghost model fit for gpc2
+
+GHOST.MIRROR.RAD METADATA
+  NORDER_X S32 1
+  VAL_X00  F64 0.0
+  VAL_X01  F64 2.04954762
+  NELEMENTS  S32 2
+END
+
+GHOST.CENTER.X METADATA
+  NORDER_X S32 3
+  NORDER_Y S32 3
+  VAL_X00_Y00  F64  1.73771576e+02
+  VAL_X01_Y00  F64 -4.00105766e-02
+  VAL_X02_Y00  F64  3.74502484e-08
+  VAL_X03_Y00  F64  1.31400515e-10
+  VAL_X00_Y01  F64  5.26809562e-03
+  VAL_X01_Y01  F64  2.74178281e-07
+  VAL_X02_Y01  F64 -2.73338574e-11
+  VAL_X00_Y02  F64  3.54651182e-07
+  VAL_X01_Y02  F64  1.16252893e-10
+  VAL_X00_Y03  F64 -1.36919712e-11
+  NELEMENTS  S32 10
+END
+
+GHOST.CENTER.Y METADATA
+  NORDER_X S32 3
+  NORDER_Y S32 3
+  VAL_X00_Y00  F64 -3.61683135e+02
+  VAL_X01_Y00  F64 -2.99851392e-03
+  VAL_X02_Y00  F64  6.00825645e-08
+  VAL_X03_Y00  F64  6.71607691e-12
+  VAL_X00_Y01  F64 -3.30959672e-02
+  VAL_X01_Y01  F64  8.11161170e-08
+  VAL_X02_Y01  F64  9.61068235e-11
+  VAL_X00_Y02  F64  2.29885348e-07
+  VAL_X01_Y02  F64  1.87179094e-11
+  VAL_X00_Y03  F64  1.07625466e-10
+  NELEMENTS  S32 10
+END
+
+GHOST.INNER.MAJOR METADATA
+  NORDER_X S32 1
+  VAL_X00  F64 3.926693e+01
+  VAL_X01  F64 5.325759e-03
+  NELEMENTS  S32 2
+END
+
+GHOST.INNER.MINOR METADATA
+  NORDER_X S32 1
+  VAL_X00  F64 5.287548e+01
+  VAL_X01  F64 -2.191669e-03
+  NELEMENTS  S32 2
+END
+
+GHOST.OUTER.MAJOR METADATA
+  NORDER_X S32 2
+  VAL_X00  F64 1.56552979e+02
+  VAL_X01  F64 4.81347080e-04
+  VAL_X02  F64 1.16115995e-06
+  NELEMENTS  S32 3
+END
+
+GHOST.OUTER.MINOR METADATA
+  NORDER_X S32 1
+  VAL_X00  F64 1.72399795e+02
+  VAL_X01  F64 -5.45331919e-03
+  NELEMENTS  S32 2
+END
+
Index: /branches/eam_branches/ippconfig.20240412/gpc2/nightly_science.config.example
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/nightly_science.config.example	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/nightly_science.config.example	(revision 42661)
@@ -0,0 +1,614 @@
+CLEAN_MODES MULTI
+CLEAN_MODES METADATA
+  MODE           STR CHIP
+  COMMAND        STR chiptool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME U16 2
+  RETENTION_TIME U16 -1
+END
+CLEAN_MODES METADATA
+  MODE           STR WARP
+  COMMAND        STR warptool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+  RETENTION_TIME U16 -1 
+END
+CLEAN_MODES METADATA
+  MODE           STR DIFF
+  COMMAND        STR difftool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME S16 3
+  RETENTION_TIME S16 -1
+END
+CLEAN_MODES METADATA
+  MODE           STR DIST
+  COMMAND        STR disttool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -full -set_label goto_cleaned -label @LABEL@ -time_stamp_end @CURRENT_DATE@
+#  RETENTION_TIME S16 10
+  RETENTION_TIME S16 -1
+END
+CLEAN_MODES METADATA
+  MODE           STR MAGICDS
+  COMMAND        STR magicdstool -dbname @DBNAME@ -updaterun -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME S16 2
+  RETENTION_TIME S16 -1
+END
+CLEAN_MODES METADATA
+  MODE           STR BGCHIP
+  COMMAND	 STR bgtool -dbname @DBNAME@ -updatechip -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME S16 7
+  RETENTION_TIME S16 1
+END
+CLEAN_MODES METADATA
+  MODE           STR BGWARP
+  COMMAND	 STR bgtool -dbname @DBNAME@ -updatewarp -set_state goto_cleaned -state full -set_label goto_cleaned -label @LABEL@ -data_group @DATA_GROUP@
+#  RETENTION_TIME S16 7
+  RETENTION_TIME S16 -1
+END
+
+
+END_OF_NIGHT MULTI
+END_OF_NIGHT METADATA
+  NAME           STR MORNING_DARKS
+  OBSMODE        STR ENGINEERING
+  EXPTYPE        STR DARK
+  OBJECT         STR ENGINEERING
+  COMMENT        STR darks_morn%
+END
+
+FILTERS MULTI
+FILTERS STR g.00002
+FILTERS STR r.00002
+FILTERS STR i.00002
+FILTERS STR z.00002
+FILTERS STR y.00002
+FILTERS STR w.00002
+
+UNRECOVERABLE_QUALITY MULTI
+UNRECOVERABLE_QUALITY S16 4007
+
+MACRO_DEFINITIONS MULTI
+MACRO_DEFINITIONS METADATA
+  PROC_MODE STR queue_chips
+  MACRO     STR survey.del.destreak @LABEL@
+END
+MACRO_DEFINITIONS METADATA
+  PROC_MODE STR confirm_stacks
+  MACRO     STR survey.add.destreak @LABEL@ /data/ipp053.0/gpc1_destreak
+END
+
+# 2018-04-30 CZW: Comment out all targets to allow commissioning training and tests to skip processing.
+TARGETS MULTI
+TARGETS METADATA
+  NAME         STR OSS
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR OSS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  ADDITIONAL_STACK_LABEL STR ecliptic.rp
+  DESPERATE_DIFFS BOOL TRUE
+#  REDUCTION STR SSTF_4SIG
+  COMMENT      STR  OSS%
+END
+TARGETS METADATA
+  NAME         STR EU
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR OSS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+  DESPERATE_DIFFS BOOL TRUE
+  COMMENT      STR  EU.%
+END
+TARGETS METADATA
+  NAME         STR ESS
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR ESS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  ADDITIONAL_STACK_LABEL STR ecliptic.rp
+  DESPERATE_DIFFS BOOL TRUE
+#  REDUCTION STR SSTF_4SIG
+  COMMENT      STR  %ESS%
+END
+TARGETS METADATA
+  NAME         STR MSS
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR MSS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  ADDITIONAL_STACK_LABEL STR ecliptic.rp
+  DESPERATE_DIFFS BOOL TRUE
+#  REDUCTION STR SSTF_4SIG
+  COMMENT      STR  %MSS%
+END
+TARGETS METADATA
+  NAME         STR FSS
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR FSS
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  CHIP      S16 5
+#  DIFF      S16 300
+END
+TARGETS METADATA
+  NAME         STR ThreePi
+  DISTRIBUTION STR ThreePi
+  TESS         STR RINGS.V3
+  OBSMODE      STR 3PI
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL TRUE
+  COMMENT      STR  %3PI%
+END
+TARGETS METADATA
+  NAME         STR Bright
+  DISTRIBUTION STR NODIST
+  TESS         STR RINGS.V3
+  OBSMODE      STR BRIGHT
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL TRUE
+  REDUCTION STR EUCLID_DEFAULT 
+  COMMENT      STR  Euclid.r%
+#  DIFF          S16  7
+END
+TARGETS METADATA
+  NAME         STR BrightTwi
+  DISTRIBUTION STR NODIST
+  TESS         STR RINGS.V3
+  OBSMODE      STR BRIGHT
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL FALSE
+  REDUCTION STR EUCLID_DEFAULT 
+  COMMENT      STR  Euclid.twi%
+#  DIFF          S16  7
+END
+TARGETS METADATA
+  NAME         STR Bright3Pi 
+  DISTRIBUTION STR NODIST
+  TESS         STR RINGS.V3
+  OBSMODE      STR BRIGHT
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL FALSE
+  REDUCTION STR EUCLID_DEFAULT 
+  COMMENT      STR  %3PI%
+#  DIFF          S16  7
+END
+TARGETS METADATA
+  NAME      STR CFA
+  DISTRIBUTION STR CFA
+  TESS      STR MD07.V3
+  OBSMODE   STR CFA
+#  OBJECT    STR MD07%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+END
+TARGETS METADATA
+  NAME         STR YSE
+  DISTRIBUTION STR YSE
+  TESS         STR RINGS.V3
+  OBSMODE      STR YSE
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS  BOOL FALSE
+  DESPERATE_DIFFS BOOL FALSE
+  REDUCTION STR YSE
+  ## don't use so can include Trans% for YSE in same config
+  #COMMENT   STR  YSE%
+  ## change days for cleanup at start
+  DIST      S16  30
+  DIFF      S16  10 
+END
+TARGETS METADATA
+  NAME         STR SNIa
+  DISTRIBUTION STR SNIa.test
+  TESS         STR RINGS.V3
+  OBSMODE      STR SNIa
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+#  REDUCTION STR SNIA_DEFAULT
+  COMMENT   STR  Supernova%
+  ## change days till cleanup
+#  DIST      S16 20
+END
+TARGETS METADATA
+  NAME         STR  QUB.ic
+  DISTRIBUTION STR  NODIST
+  TESS         STR  RINGS.V3
+  OBSMODE      STR  QUB
+  STACKABLE      BOOL FALSE
+  DIFFABLE       BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION    STR MD_DEFAULT
+  COMMENT      STR ICECUBE%
+#  DIST           S16  15
+#  DIFF           S16  300
+END
+TARGETS METADATA
+  NAME         STR  QUB.lv
+  DISTRIBUTION STR  NODIST
+  TESS         STR  RINGS.V3
+  OBSMODE      STR  QUB
+  STACKABLE      BOOL FALSE
+  DIFFABLE       BOOL TRUE
+  OFFNIGHT_DIFFS BOOL FALSE
+  DESPERATE_DIFFS BOOL TRUE
+  REDUCTION    STR SWEETSPOT
+  COMMENT      STR G%.R%.P%
+#  DIST           S16  15
+#  DIFF           S16  300
+END
+TARGETS METADATA
+  NAME         STR  K2
+  DISTRIBUTION STR  K2 
+  TESS         STR  RINGS.V3
+  OBSMODE      STR  K2
+  STACKABLE      BOOL FALSE
+  DIFFABLE       BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+#  REDUCTION    STR SWEETSPOT
+  COMMENT      STR  K2%
+#  DIST           S16  30
+#  DIFF           S16  10
+END
+TARGETS  METADATA
+  NAME          STR NCU
+  DISTRIBUTION  STR NCU
+  TESS          STR RINGS.V3
+  OBSMODE       STR NCU
+  STACKABLE     BOOL FALSE
+  DIFFABLE      BOOL FALSE
+  OFFNIGHT_DIFFS BOOL FALSE
+  REDUCTION     STR SWEETSPOT
+  COMMENT      STR  %NCU%
+#  DIST          S16 300
+#  CHIP          S16 300
+#  DIFF          S16 300
+END
+# TARGETS METADATA
+#   NAME         STR  LIGO
+#   DISTRIBUTION STR  LIGO
+#   TESS         STR  RINGS.V3
+#   OBSMODE      STR  LIGO
+#   STACKABLE      BOOL FALSE
+#   DIFFABLE       BOOL FALSE
+#   OFFNIGHT_DIFFS BOOL FALSE
+#   DIST           S16  15
+#   CHIP           S16  5
+#   WARP           S16  5
+#   DIFF           S16  5
+# END
+TARGETS METADATA
+  NAME      STR  M31
+  DISTRIBUTION STR M31
+  TESS      STR  M31.V4
+  OBSMODE   STR  M31
+  OBJECT    STR  M31%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  DIST      S16  30
+  # bump the retention times for the time being
+ # CHIP S16 60
+ # WARP S16 60
+ # DIFF S16 60
+ # CHIPBG S16 60
+ # WARPBG S16 60
+END
+TARGETS METADATA
+  NAME      STR  MD01
+  DISTRIBUTION STR MD01
+  TESS      STR  MD01.V3
+  OBSMODE   STR  MD
+  OBJECT    STR  MD01%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16  30
+END
+TARGETS METADATA
+  NAME      STR  MD02
+  DISTRIBUTION STR MD02
+  TESS      STR MD02.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD02%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD03
+  DISTRIBUTION STR MD03
+  TESS      STR MD03.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD03%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD04
+  DISTRIBUTION STR MD04
+  TESS      STR MD04.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD04%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD05
+  DISTRIBUTION STR MD05
+  TESS      STR MD05.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD05%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+  ## change days till cleanup
+#  #CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR MD06
+  DISTRIBUTION STR MD06
+  TESS      STR MD06.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD06%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+  ## change days till cleanup
+#  #CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR MD07
+  DISTRIBUTION STR MD07
+  TESS      STR MD07.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD07%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+  ## change days till cleanup
+#  #CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR MD08
+  DISTRIBUTION STR MD08
+  TESS      STR MD08.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD08%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+  ## change days till cleanup
+#  #CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR MD09
+  DISTRIBUTION STR MD09
+  TESS      STR MD09.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD09%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD10
+  DISTRIBUTION STR MD10
+  TESS      STR MD10.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD10%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR MD_DEFAULT
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR MD11
+  DISTRIBUTION STR MD11
+  TESS      STR MD11.V3
+  OBSMODE   STR MD
+  OBJECT    STR MD11%
+  STACKABLE BOOL TRUE
+  MIN_STACK U16 8
+  DIFFABLE  BOOL FALSE
+#  DIST      S16 30
+END
+TARGETS METADATA
+  NAME      STR STS
+  DISTRIBUTION STR STS
+  TESS      STR STS.V4
+  OBSMODE   STR STS%
+#  OBJECT    STR STS%
+  STACKABLE BOOL FALSE
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR STS_DATASET
+  # bump the retention times for the time being
+#  CHIP S16 60
+#  WARP S16 60
+#  DIFF S16 60
+END
+TARGETS METADATA
+  NAME      STR SweetSpot
+  DISTRIBUTION STR SweetSpot
+  TESS      STR RINGS.V3
+  OBSMODE   STR SS
+  STACKABLE BOOL FALSE
+  DIFFABLE  BOOL FALSE
+  REDUCTION STR SWEETSPOT
+#  ADDITIONAL_STACK_LABEL STR ecliptic.rp
+#  REDUCTION STR SSTF_4SIG
+#  WARP      S16 60
+END
+TARGETS METADATA
+  NAME         STR PI
+  DISTRIBUTION STR SweetSpot
+  TESS         STR RINGS.V3
+  OBSMODE      STR PI
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+END
+TARGETS METADATA
+  NAME         STR CNP
+  DISTRIBUTION STR CNP
+  TESS         STR CNP.V3
+  OBSMODE      STR CNP
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  REDUCTION   STR  CNP_DATASET
+#  CHIP	      S16  800
+#  WARP	      S16  800
+END
+TARGETS METADATA
+  NAME         STR STD
+  TESS         STR RINGS.V0
+  OBSMODE      STR STD
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  DISTRIBUTION STR NODIST
+END
+TARGETS METADATA
+  NAME         STR microtest
+  TESS         STR RINGS.V3
+  COMMENT      STR Microtest Obs%
+  STACKABLE   BOOL FALSE
+  DIFFABLE    BOOL FALSE
+  DISTRIBUTION STR NODIST
+END
+
+#This is a hack, and I freely admit it.
+#Removed the rest because we do not regularly run microtests.
+# TARGETS METADATA
+#   NAME STR microtestMD01
+#   TESS STR MD01
+#   OBJECT STR MD01%
+#   COMMENT STR Microtest Obs%
+#   STACKABLE BOOL TRUE
+# END
+# TARGETS METADATA
+#   NAME STR microtestMD01.noPattern
+#   TESS STR MD01
+#   OBJECT STR MD01%
+#   COMMENT STR Microtest Obs%
+#   REDUCTION STR MICROTEST_NOPATTERN
+#   STACKABLE BOOL TRUE
+# END
+
+# Detrend verification data
+DETRENDS MULTI
+DETRENDS METADATA
+  NAME     STR DARK
+  DETTYPE  STR DARK
+  EXPTYPE  STR dark
+  REF_ID   S64 585
+  REF_ITER S32 3
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_G
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 278
+  REF_ITER S32 0
+  FILTER   STR g.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_R
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 279
+  REF_ITER S32 0
+  FILTER   STR r.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_I
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 280
+  REF_ITER S32 0
+  FILTER   STR i.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_Z
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 281
+  REF_ITER S32 0
+  FILTER   STR z.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_Y
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 282
+  REF_ITER S32 0
+  FILTER   STR y.00000
+  MAX_EXP  S32 10
+END
+
+DETRENDS METADATA
+  NAME     STR FLAT_W
+  DETTYPE  STR FLAT
+  EXPTYPE  STR skyflat
+  REF_ID   S64 283
+  REF_ITER S32 0
+  FILTER   STR w.00000
+  MAX_EXP  S32 10
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/ppImage.config	(revision 42661)
@@ -0,0 +1,2058 @@
+BACKGROUND		BOOL    FALSE	
+# binned output image options
+BIN1.XBIN               S32      16
+BIN1.YBIN               S32      16
+BIN2.XBIN               S32     150
+BIN2.YBIN               S32     150
+
+OVERSCAN.SINGLE         BOOL    FALSE            # Reduce overscan to a single value?
+OVERSCAN.STAT           STR     MEDIAN
+OVERSCAN.BOXCAR         S32     3
+
+# Normalization class
+NORM.CLASS              STR     CHIP             # How to find the per-class normalizations
+
+NONLIN                  BOOL    FALSE            # apply non-linearity correction 
+OLDDARK                 BOOL    FALSE
+
+PATTERN.DEAD.CELLS      BOOL    FALSE            # mask dead cells based on background patterns
+
+GAIN.OVERRIDE		BOOL	TRUE		# Override a non-finite gain?
+
+# use the deburned image instead of the raw, if it exists
+USE.DEBURNED.IMAGE      BOOL    FALSE          # use burntool-repaired image?
+USE.BEST.BURNTOOL	BOOL	FALSE       # require the best burntooled data
+MASK.BURNTOOL           BOOL    FALSE          # Mask potential burntool trails
+TILTYSTREAK.APPLY       BOOL    FALSE          # apply the 'tiltystreak' tool
+NOISEMAP                BOOL    FALSE          # Apply read noise map
+
+APPLY.BURNTOOL          BOOL    FALSE          # apply burntool correction in ppImage
+
+# Final detrending options 
+HAS.VIDEO       BOOL    FALSE            # Treat this OTA as if it has video data
+# USE.VIDEO.DARK  BOOL    TRUE             # Use a video dark if we have video data?
+USE.VIDEO.MASK  BOOL    FALSE            # Use a video mask if we have video data?
+
+# aditional auxiliary mask applied to corners of all chips in video cells.
+# Is only applied if MASK.AUXMASK and USE.VIDEO.MASK are both true
+# AUX.VIDEO.MASK  STR     neb://any/gpc1/auxmask/mpg.20130930/mask_video_cell_corners.fits
+
+# only valid for GPC1
+TILTYSTREAK.BY.CLASS METADATA              # apply the 'tiltystreak' tool
+END
+
+# crosstalk measurements : only valid for GPC1 for now
+CROSSTALK.MEASURE  BOOL    FALSE          # Subtract model background?
+CROSSTALK.CORRECT  BOOL    FALSE           # Subtract model background?
+
+## XXX use these local variations until we are building real detrend images
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+    EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+  END
+  FLATCORR METADATA
+    FILTER   STR FPA.FILTERID
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTERID
+  END
+  SHUTTER METADATA
+  END
+  MASK METADATA
+  END	
+  ASTROM METADATA
+  END	
+  NOISEMAP METADATA
+  END	
+  LINEARITY METADATA
+  END
+END
+
+# only apply the fringe for these filters
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR y.00000
+
+# Standard chip processing (NOTE: when changing this be sure to check whether changes should be applied to
+# CHIP_PRESERVE_BG CHIP_AUXMASK or CHIP_PRESERVE_BG_AUXMASK
+CHIP 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    FALSE           # Apply noise read map
+  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    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL       BOOL    FALSE           # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE           # Cell pattern correction using edge continuity
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+END
+
+CHIP_NOCOMPRESS 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP	     BOOL    TRUE	     
+  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
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  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    FALSE           # Subtract model background?
+  NO.COMPRESS        BOOL    TRUE            # do not compress images
+END
+
+# test for MOPS request reprocessing without masking
+CHIP_NOMASKTEST 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    FALSE
+  REMNANCE           BOOL    FALSE           # Remnance masking
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD         BOOL    FALSE           # Build internal mask?
+  MASK.BURNTOOL      BOOL    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL       BOOL    FALSE           # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE           # Cell pattern correction using edge continuity
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+END
+
+# Chip processing for testing pattern correction
+CHIP_PATTERNTEST 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           # 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    FALSE            # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # 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    FALSE           # Subtract model background?
+END
+
+# Chip processing with DARKTEST 
+CHIP_DARKTEST 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    FALSE           # Apply noise read map
+  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    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL       BOOL    FALSE           # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE           # Cell pattern correction using edge continuity
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      DETTYPE STR DARKTEST
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      FILTER  STR FPA.FILTERID
+    END
+    FLATCORR METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END 
+    ASTROM METADATA
+    END 
+    NOISEMAP METADATA
+    END
+  END
+END
+
+# Chip processing with DARKTEST and using PATTERN.CONTINUITY
+CHIP_DARKTEST_CONTINUITY 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    FALSE           # Apply noise read map
+  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    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL       BOOL    FALSE           # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    TRUE            # Cell pattern correction using edge continuity
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      DETTYPE STR DARKTEST
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      FILTER  STR FPA.FILTERID
+    END
+    FLATCORR METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END 
+    ASTROM METADATA
+    END 
+    NOISEMAP METADATA
+    END
+  END
+END
+
+CHIP_MASKTEST 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    FALSE           # Bias subtraction
+   DARK               BOOL    TRUE            # Dark subtraction
+   NOISEMAP	      BOOL    FALSE
+   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   FALSE            # Mask potential burntool trails
+   PATTERN.ROW        BOOL   FALSE            # Row pattern correction
+   PATTERN.CELL	     BOOL    FALSE 	      # Cell pattern correction
+   PATTERN.CONTINUITY BOOL   FALSE            # Cell pattern correction using edge continuity
+   FRINGE             BOOL   FALSE            # 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    FALSE           # Subtract model background?
+
+   DETREND.CONSTRAINTS  METADATA
+     MASK METADATA
+       DETTYPE STR MASKTEST
+     END   
+     VIDEOMASK METADATA
+       DETTYPE STR VIDEOMASKTEST
+     END
+     FLAT METADATA
+       FILTER  STR FPA.FILTERID
+     END
+     FLATCORR METADATA
+       FILTER   STR FPA.FILTERID
+     END
+     FRINGE METADATA
+       FILTER   STR FPA.FILTERID
+     END
+  END
+END
+
+CHIP_DARKTEST_MASKTEST 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    FALSE           # Bias subtraction
+   DARK               BOOL    TRUE            # Dark subtraction
+   NOISEMAP       BOOL    FALSE
+   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   FALSE            # Mask potential burntool trails
+   PATTERN.ROW        BOOL   FALSE            # Row pattern correction
+   PATTERN.CELL      BOOL    FALSE        # Cell pattern correction
+   PATTERN.CONTINUITY BOOL   FALSE            # Cell pattern correction using edge continuity
+   FRINGE             BOOL   FALSE            # 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    FALSE           # Subtract model background?
+
+   DETREND.CONSTRAINTS  METADATA
+     DARK METADATA
+       DETTYPE STR DARKTEST
+       EXPTIME STR FPA.EXPOSURE
+     END
+     MASK METADATA
+       DETTYPE STR MASKTEST
+     END   
+     VIDEOMASK METADATA
+       DETTYPE STR VIDEOMASKTEST
+     END
+     FLAT METADATA
+       FILTER  STR FPA.FILTERID
+     END
+     FLATCORR METADATA
+       FILTER   STR FPA.FILTERID
+     END
+     FRINGE METADATA
+       FILTER   STR FPA.FILTERID
+     END
+  END
+END
+
+
+CHIP_TIMEDARK 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    FALSE           # Bias subtraction
+   DARK               BOOL    TRUE            # Dark subtraction
+   NOISEMAP       BOOL    FALSE
+   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   FALSE            # Mask potential burntool trails
+   PATTERN.ROW        BOOL   FALSE            # Row pattern correction
+   PATTERN.CELL      BOOL    FALSE        # Cell pattern correction
+   PATTERN.CONTINUITY BOOL   FALSE            # Cell pattern correction using edge continuity
+   FRINGE             BOOL   FALSE            # 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    FALSE           # Subtract model background?
+
+   DETREND.CONSTRAINTS  METADATA
+     DARK METADATA
+       DETTYPE STR TIMEDARK
+       EXPTIME STR FPA.EXPOSURE
+     END
+     MASK METADATA
+       DETTYPE STR TIMEMASK
+       EXPTIME STR FPA.EXPOSURE
+     END   
+     VIDEOMASK METADATA
+       DETTYPE STR VIDEOMASKTEST
+     END
+     FLAT METADATA
+       FILTER  STR FPA.FILTERID
+     END
+     FLATCORR METADATA
+       FILTER   STR FPA.FILTERID
+     END
+     FRINGE METADATA
+       FILTER   STR FPA.FILTERID
+     END
+  END
+END
+
+# Standard chip processing (NOTE: when changing this be sure to check whether changes should be applied to
+# CHIP_PRESERVE_BG CHIP_AUXMASK or CHIP_PRESERVE_BG_AUXMASK
+PR_NOPATTERN 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    FALSE           # Apply noise read map
+  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    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL       BOOL    FALSE           # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE           # Cell pattern correction using edge continuity
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract background?
+  CROSSTALK.MEASURE  BOOL    FALSE           # Subtract model background?
+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           # 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    FALSE           # Subtract model background?
+END
+
+ 
+# Standard chip processing
+CHIP_ADDNOISE      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           # 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
+  ADDNOISE         BOOL    TRUE            # Add noise to mimic shorter exposure
+  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  FALSE           # Subtract model background?
+END
+
+# Standard chip processing with tiltystreak activated
+TILTY              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    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           # 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
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+  TILTYSTREAK.APPLY  BOOL    TRUE            # apply the 'tiltystreak' tool
+  NOISEMAP           BOOL    TRUE            # Apply read noise map
+END
+
+# Standard chip processing with noisemap activated
+NOISY                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    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           # 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
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+  TILTYSTREAK.APPLY  BOOL    FALSE           # apply the 'tiltystreak' tool
+  NOISEMAP           BOOL    TRUE            # Apply read noise map
+END
+
+# Standard chip processing for areas with high stellar density
+# Turn remnance masking off --- it kills all the detector
+CHIP_DENSE_STARS	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           # 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?
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias
+PPIMAGE_OB           METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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          # apply non-linearity correction (
+  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?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD        METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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           # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark -- search for DARK_PREMASK
+PPIMAGE_DARKMASK_PROCESS METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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           # apply non-linearity correction 
+  BIAS             BOOL    FALSE
+  DARK             BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END   
+END
+
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_FLATPROC_PREMASK       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDSF      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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           # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_FLATMASK_PROCESS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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           # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+
+  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
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_DET_ONLY   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    TRUE            # Overscan subtraction
+  NONLIN           BOOL    FALSE           # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  FPA1.FITS        BOOL    FALSE           # Save 1st binned fpa image? 
+  FPA2.FITS        BOOL    FALSE           # Save 2nd binned fpa image? 
+  PHOTOM           BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      DETTYPE STR FLAT_PREMASK
+      FILTER  STR FPA.FILTERID
+    END
+    MASK METADATA
+      DETTYPE STR FLATMASK
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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           # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM           BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRP    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           # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA    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           # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATCORR    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           # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    TRUE            # Mask bad pixels
+  MASK.BUILD	   BOOL    TRUE		   # Build internal mask?
+  FRINGE           BOOL    FALSE           # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      DETTYPE STR FLAT_PREMASK
+      FILTER  STR FPA.FILTERID
+    END
+    FLATCORR METADATA
+      FILTER  STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END	
+    ASTROM METADATA
+    END	
+  END
+END
+
+# identical to the default CHIP, but with FLATTEST
+PPIMAGE_FLATTEST    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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    FALSE	     
+  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    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE           # Cell pattern correction using edge continuity
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      EXPTIME STR FPA.EXPOSURE
+      DETTYPE STR TIMEDARK
+    END
+    FLAT METADATA
+      DETTYPE STR FLATTEST
+      FILTER  STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END	
+    ASTROM METADATA
+    END	
+  END
+END
+
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_PREMASK_PROCESS    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    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      DETTYPE STR FLAT_PREMASK
+      FILTER  STR FPA.FILTERID
+    END
+  END   
+END
+
+# Photometry and astrometry only (for pre-reduced data)
+PPIMAGE_PA         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    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           # apply non-linearity correction 
+  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
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  PHOTOM           BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# JPEG images for different types of residual images
+# Save JPEG from BIN1 for bias
+PPIMAGE_J1_RESID_B      METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  NONLIN           BOOL    FALSE          # apply non-linearity correction 
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  # GPC1 has significant dark structures: use a wide greyscale range
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     VALUE
+    SCALE.MIN      F32     -50.0
+    SCALE.MAX      F32     +50.0
+  END
+END
+
+# Save JPEG from BIN2 for bias
+PPIMAGE_J2_RESID_B        METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  NONLIN           BOOL    FALSE           # apply non-linearity correction 
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  # GPC1 has significant dark structures: use a wide greyscale range
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     VALUE
+    SCALE.MIN      F32     -50.0
+    SCALE.MAX      F32     +50.0
+  END
+END
+
+# Save JPEG from BIN1 for flat
+PPIMAGE_J1_RESID_F      METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  NONLIN           BOOL    FALSE           # apply non-linearity correction 
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.98
+    SCALE.MAX      F32     1.02
+  END
+END
+
+# Save JPEG from BIN2 for flat
+PPIMAGE_J2_RESID_F        METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  NONLIN           BOOL    FALSE           # apply non-linearity correction 
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+		   
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.98
+    SCALE.MAX      F32     1.02
+  END
+END
+
+# generate CTE map image
+PPIMAGE_CTEMAP     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           # apply non-linearity correction 
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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    TRUE            # measure CTE errors?
+
+  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_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
+
+
+PR_DARKTEST_NOSUB 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           # 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?
+  FRINGE           BOOL    FALSE           # 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    FALSE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL  FALSE           # Subtract model background?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      DETTYPE STR DARKTEST
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      FILTER  STR FPA.FILTERID
+    END
+    FLATCORR METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END	
+    ASTROM METADATA
+    END	
+    NOISEMAP METADATA
+    END
+  END   
+END
+
+
+PR               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           # 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?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PATTERN.ROW      BOOL    TRUE            # Row pattern correction
+  PATTERN.CELL	   BOOL	   TRUE		   # Cell pattern correction
+  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    FALSE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL  FALSE           # Subtract model background?
+END
+
+PR_NOPATTERN       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           # 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?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PATTERN.ROW      BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL        BOOL    FALSE	        # Cell pattern correction
+  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    FALSE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL  FALSE            # Subtract model background?
+END
+
+# Standard chip processing + auxiliary mask
+CHIP_AUXMASK 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP	     BOOL    TRUE	     
+  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
+  MASK.AUXMASK       BOOL    TRUE            # augment mask with more restrictive auxiliary mask
+  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    FALSE           # Subtract model background?
+  NO.COMPRESS        BOOL    TRUE            # turn off image compression
+    DETREND.CONSTRAINTS  METADATA
+      BIAS METADATA
+      END
+      DARK METADATA
+        EXPTIME STR FPA.EXPOSURE
+      END
+      FLAT METADATA
+        FILTER  STR FPA.FILTERID
+      END
+      FLATCORR METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      FRINGE METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      SHUTTER METADATA
+      END
+      MASK METADATA
+      END	
+      AUXMASK METADATA
+        DETTYPE STR AUXMASK_STS
+      END
+      ASTROM METADATA
+      END	
+      NOISEMAP METADATA
+      END	
+      LINEARITY METADATA
+      END
+    END
+END
+
+# Standard chip processing + auxiliary mask with heavy masking
+CHIP_AUXMASK_HEAVY 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP	     BOOL    TRUE	     
+  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
+  MASK.AUXMASK       BOOL    TRUE            # augment mask with more restrictive auxiliary mask
+  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    FALSE           # Subtract model background?
+  NO.COMPRESS        BOOL    TRUE            # turn off image compression
+    DETREND.CONSTRAINTS  METADATA
+      BIAS METADATA
+      END
+      DARK METADATA
+        EXPTIME STR FPA.EXPOSURE
+      END
+      FLAT METADATA
+        FILTER  STR FPA.FILTERID
+      END
+      FLATCORR METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      FRINGE METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      SHUTTER METADATA
+      END
+      MASK METADATA
+      END	
+      AUXMASK METADATA
+        DETTYPE STR AUXMASK_HEAVY
+      END
+      ASTROM METADATA
+      END	
+      NOISEMAP METADATA
+      END	
+      LINEARITY METADATA
+      END
+    END
+END
+
+# Standard chip processing without background subtraction or pattern correction
+CHIP_PRESERVE_BG	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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    FALSE
+  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    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE           # Cell pattern coorection using edge continuity
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract background?
+  CROSSTALK.MEASURE  BOOL    FALSE           # Subtract model background?
+END
+
+
+# Standard chip processing with background removal, but then added back in
+CHIP_RESTORE_BG	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           # 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    FALSE           # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE 	     # 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    FALSE           # Subtract model background?
+END
+
+
+# Standard chip processing without background subtraction, pattern correction, or photometry bug applying auxiliary mask
+CHIP_PRESERVE_BG_AUXMASK	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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    TRUE
+  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
+  MASK.AUXMASK       BOOL    TRUE            # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE	     # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE            # Cell pattern coorection 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    FALSE           # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  BACKGROUND         BOOL    FALSE           # Subtract background?
+  CROSSTALK.MEASURE  BOOL    FALSE           # Subtract model background?
+  NO.COMPRESS        BOOL    TRUE            # turn off image compression
+    DETREND.CONSTRAINTS  METADATA
+      BIAS METADATA
+      END
+      DARK METADATA
+        EXPTIME STR FPA.EXPOSURE
+      END
+      FLAT METADATA
+        FILTER  STR FPA.FILTERID
+      END
+      FLATCORR METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      FRINGE METADATA
+        FILTER   STR FPA.FILTERID
+      END
+      SHUTTER METADATA
+      END
+      MASK METADATA
+      END	
+      AUXMASK METADATA
+        DETTYPE STR AUXMASK_HEAVY
+      END
+      ASTROM METADATA
+      END	
+      NOISEMAP METADATA
+      END	
+      LINEARITY METADATA
+      END
+    END
+END
+
+
+# Standard chip processing
+CHIP_NOPATTERN     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           # 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    FALSE           # Row pattern correction
+  PATTERN.CELL	   BOOL	   FALSE	   # 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  FALSE           # Subtract model background?
+END
+
+# Standard chip processing for old pre-run5 data
+CHIP_PATTERN	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           # 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
+  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    FALSE           # Subtract model background?
+  PATTERN.ROW        BOOL    TRUE           # Subtract pattern noise
+  PATTERN.CELL       BOOL    FALSE           # Subtract pattern noise
+
+  PATTERN.ROW.SUBSET	METADATA	# List of chips and whether to do row pattern correction
+	XY01	BOOL	TRUE
+	XY02	BOOL	TRUE
+	XY03	BOOL	TRUE
+	XY04	BOOL	TRUE
+	XY05	BOOL	TRUE
+	XY06	BOOL	TRUE
+	XY10	BOOL	TRUE
+	XY11	BOOL	TRUE
+	XY12	BOOL	TRUE
+	XY13	BOOL	TRUE
+	XY14	BOOL	TRUE
+	XY15	BOOL	TRUE
+	XY16	BOOL	TRUE
+	XY17	BOOL	TRUE
+	XY20	BOOL	TRUE
+	XY21	BOOL	TRUE
+	XY22	BOOL	TRUE
+	XY23	BOOL	TRUE
+	XY24	BOOL	TRUE
+	XY25	BOOL	TRUE
+	XY26	BOOL	TRUE
+	XY27	BOOL	TRUE
+	XY30	BOOL	TRUE
+	XY31	BOOL	TRUE
+	XY32	BOOL	TRUE
+	XY33	BOOL	TRUE
+	XY34	BOOL	TRUE
+	XY35	BOOL	TRUE
+	XY36	BOOL	TRUE
+	XY37	BOOL	TRUE
+	XY40	BOOL	TRUE
+	XY41	BOOL	TRUE
+	XY42	BOOL	TRUE
+	XY43	BOOL	TRUE
+	XY44	BOOL	TRUE
+	XY45	BOOL	TRUE
+	XY46	BOOL	TRUE
+	XY47	BOOL	TRUE
+	XY50	BOOL	TRUE
+	XY51	BOOL	TRUE
+	XY52	BOOL	TRUE
+	XY53	BOOL	TRUE
+	XY54	BOOL	TRUE
+	XY55	BOOL	TRUE
+	XY56	BOOL	TRUE
+	XY57	BOOL	TRUE
+	XY60	BOOL	TRUE
+	XY61	BOOL	TRUE
+	XY62	BOOL	TRUE
+	XY63	BOOL	TRUE
+	XY64	BOOL	TRUE
+	XY65	BOOL	TRUE
+	XY66	BOOL	TRUE
+	XY67	BOOL	TRUE
+	XY71	BOOL	TRUE
+	XY72	BOOL	TRUE
+	XY73	BOOL	TRUE
+	XY74	BOOL	TRUE
+	XY75	BOOL	TRUE
+	XY76	BOOL	TRUE
+  END
+END
+
+# CZW 2018-02-14
+# The default PPIMAGE_N includes BACKGROUND=T, and that breaks detrend construction
+PPIMAGE_N          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    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?
+  BACKGROUND       BOOL    FALSE           # Subtract background?
+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    FALSE           # 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    FALSE           # Mask potential burntool trails
+#   PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+#   PATTERN.CELL	     BOOL    FALSE           # Cell pattern correction
+#   FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+# 
+#   DETREND.CONSTRAINTS  METADATA
+#     DARK METADATA
+#       DETTYPE STR DARK
+#       EXPTIME STR FPA.EXPOSURE
+#     END
+#     FLAT METADATA
+#       DETTYPE STR FLAT_PREMASK
+#       FILTER  STR FPA.FILTERID
+#     END
+#     MASK METADATA
+#       DETTYPE STR MASK
+#     END
+#   END   
+# 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    FALSE           # 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    FALSE           # 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    FALSE           # 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    FALSE           # Subtract model background?
+# END
+
+PPIMAGE_BKGCONT    METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+  MASK.SATURATED   BOOL    FALSE           # DO NOT Mask the saturated pixels
+  MASK.LOW         BOOL    FALSE           # DO NOT Mask the saturated pixels
+  BACKGROUND.CONTINUITY BOOL FALSE
+  PATTERN.CONTINUITY.WIDTH S32 2
+END
+
+# burntool turned off for manual reprocessing of problematic exposures
+# https://jira.ipp.ifa.hawaii.edu/browse/IPP-1451
+# modified from gpc2 default CHIP recipe
+CHIP_NOBURNTOOL 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    FALSE           # Apply noise read map
+  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    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL       BOOL    FALSE           # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE           # Cell pattern correction using edge continuity
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background?
+  USE.DEBURNED.IMAGE BOOL    FALSE           # use burntool-repaired image?
+  USE.BEST.BURNTOOL  BOOL    FALSE           # require the best burntooled data
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/ppMerge.config	(revision 42661)
@@ -0,0 +1,54 @@
+# Mask generation --- already included in default, above
+PPMERGE_DARKMASK METADATA
+  ITER               S32    1
+  MASK.SUSPECT.SIGMA F32	8.0		# Threshold for suspect pixels (sigma)
+  MASK.BAD	     F32	0.1		# Threshold for bad pixels 
+  MASK.MODE	     STR	FRACTION	# Meaning of threshold : value, sigma
+  SAMPLE             S32    100000          # Sampling factor for measuring the background
+END
+
+PPMERGE_FLATMASK METADATA
+  ITER           S32    1
+  MASK.SUSPECT.SIGMA F32	3.0		# Threshold for suspect pixels (sigma)
+  MASK.BAD	 F32	0.1		# Threshold for bad pixels (sigma)
+  MASK.MODE	 STR	FRACTION	# Threshold for bad pixels (sigma)
+  SAMPLE         S32    100000          # Sampling factor for measuring the background
+END
+
+ROWS		S32	32		# Number of rows to read at once
+
+FRINGE.NUM          S32     1000        # Number of fringe regions per cell
+FRINGE.SIZE         S32     5           # Half-size of fringe regions
+FRINGE.XSMOOTH      S32     3           # Number of smoothing regions per cell in x
+FRINGE.YSMOOTH      S32     3           # Number of smoothing regions per cell in y
+FRINGE.SMOOTH       BOOL    TRUE        # Smooth the output image?
+FRINGE.SMOOTH.SIGMA F32     2.0         # Sigma of smoothing Gaussian
+
+# Ordinates for fitting dark current
+# example for linear in darktime only
+#DARK.ORDINATES	METADATA
+#	CELL.EXPOSURE	S32	1
+#END
+
+DARK.ORDINATES   METADATA
+       CELL.EXPOSURE      S32    1
+       TEMP    METADATA
+               ORDER      S32    1
+               RULE       STR    CHIP.TEMPERATURE * CELL.EXPOSURE
+       END
+END        
+
+## Dark for 2010-07-02 with new temp concept.
+## DARK.ORDINATES	METADATA
+## 	CELL.EXPOSURE	S32	1
+##   	TEMP	METADATA
+##   		ORDER	S32	1
+##  		RULE	STR	CHIP.TEMPERATURE * CELL.EXPOSURE
+##   	END
+##   	TEMP2	METADATA
+##   		ORDER	S32	1
+##  		RULE	STR	CHIP.TEMPERATURE * CHIP.TEMPERATURE * CELL.EXPOSURE
+##   	END
+## END
+
+
Index: /branches/eam_branches/ippconfig.20240412/gpc2/ppStack.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/ppStack.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/ppStack.config	(revision 42661)
@@ -0,0 +1,498 @@
+PSF.MODEL	STR	PS_MODEL_PS1_V1	# Model for PSF generation
+BACKGROUND.MODEL BOOL   F
+
+ZP.AIRMASS      METADATA                # Airmass terms by filter
+	# standard GPC2 photcodes
+        g.00002       F32     0.0
+        r.00002       F32     0.0
+        i.00002       F32     0.0
+        z.00002       F32     0.0
+        y.00002       F32     0.0
+        w.00002       F32     0.0
+	# adding GPC1 photcodes for cross-camera stacks
+        g.00000       F32     0.0
+        r.00000       F32     0.0
+        i.00000       F32     0.0
+        z.00000       F32     0.0
+        y.00000       F32     0.0
+        w.00000       F32     0.0
+	# adding generic photcodes for contingency
+        g             F32     0.0
+        r             F32     0.0
+        i             F32     0.0
+        z             F32     0.0
+        y             F32     0.0
+        w             F32     0.0
+END
+ZP.TARGET       METADATA	        # Target zero point by filter
+	# standard GPC2 photcodes
+        g.00002       F32     25.0
+        r.00002       F32     25.0
+        i.00002       F32     25.0
+        z.00002       F32     25.0
+        y.00002       F32     25.0
+        w.00002       F32     25.0
+	# adding GPC1 photcodes for cross-camera stacks
+        g.00000       F32     25.0
+        r.00000       F32     25.0
+        i.00000       F32     25.0
+        z.00000       F32     25.0
+        y.00000       F32     25.0
+        w.00000       F32     25.0
+	# adding generic photcodes for contingency
+        g             F32     25.0
+        r             F32     25.0
+        i             F32     25.0
+        z             F32     25.0
+        y             F32     25.0
+        w             F32     25.0
+END
+
+PS1_REFERENCE METADATA                  # Refstack for diffims, typically best of best IQ/images and N>20
+    OUTPUT.NOCOMP	    BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    PSF.INPUT.MAX           F32   6.0   # never really want >6 pixels in refstack
+    PSF.INPUT.CLIP.NSIGMA   F32   1.0   # sample typically on rising side of distribution (set even smaller?)
+    PSF.INPUT.THRESH        F32   0.0
+    PSF.INPUT.ASYMMETRY     F32   0.0
+END
+
+STACK_DEEP    METADATA                  # N>>20 inputs, typically MD fields
+    OUTPUT.NOCOMP	    BOOL  TRUE
+    OUTPUT.LOGFLUX  	    BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    PSF.INPUT.MAX           F32   10.0
+    PSF.INPUT.CLIP.NSIGMA   F32   1.5
+    PSF.INPUT.THRESH        F32   5.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+END
+
+QUICKSTACK_DEEP    METADATA             # Unconvolved and deep stacks only
+    CONVOLVE		   BOOL  FALSE    
+    COMBINE.REJ     	   F32   3.5    # Rejection threshold in combination (sigma). tune?
+    COMBINE.DISCARD 	   F32   0.2    # Discard fraction for Olympic weighted mean. tune?
+    OUTPUT.NOCOMP   	   BOOL  TRUE
+    OUTPUT.LOGFLUX  	   BOOL  FALSE
+    PSF.INPUT.MAX          F32   10.0    # since not convolved limit, relax/tune?
+    PSF.INPUT.CLIP.NSIGMA  F32   1.5
+    PSF.INPUT.THRESH        F32   5.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+END
+
+STACK_NIGHTLY  METADATA                 # Typically MD 8 input nightly stacks
+    OUTPUT.NOCOMP   BOOL    FALSE
+    OUTPUT.LOGFLUX  BOOL    FALSE
+END
+
+STACK_THREEPI  METADATA
+    OUTPUT.NOCOMP   	    BOOL  FALSE
+    OUTPUT.LOGFLUX  	    BOOL  TRUE
+    PSF.INPUT.MAX           F32	  10.0	# input cut more restrictive now 12->10 pix, limit target PSF in convolved stacks 
+    PSF.INPUT.CLIP.NSIGMA   F32   1.5	# additional cut if majority of inputs much smaller than INPUT.MAX
+    PSF.INPUT.THRESH        F32   10.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+    PSF.TARGET.AS.MAX	    BOOL  TRUE
+   MATCH.REJ        F32    4.0
+   SAFE		 BOOL	F
+
+END
+
+STACK_THREEPI_ALT  METADATA 
+    OUTPUT.NOCOMP   	    BOOL  TRUE  ## MD test mod
+    OUTPUT.LOGFLUX  	    BOOL  FALSE ## MD test mod
+    STACK.TYPE		    STR	  DEEP_STACK ## MD test mod
+    PSF.INPUT.MAX           F32	  10.0	# input cut more restrictive now 12->10 pix, limit target PSF in convolved stacks 
+    PSF.INPUT.CLIP.NSIGMA   F32   1.5	# additional cut if majority of inputs much smaller than INPUT.MAX
+    PSF.INPUT.THRESH        F32   10.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+   MATCH.REJ        F32    4.0
+   SAFE		 BOOL	F
+
+END
+
+STACK_CNP  METADATA                   ## Based on STACK_THREEPI and STACK_MD_DEEP_1DG 
+    OUTPUT.NOCOMP   	    BOOL  FALSE
+    OUTPUT.LOGFLUX  	    BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+
+   MATCH.REJ        F32    4.0
+   SAFE		 BOOL	F
+
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+
+END
+
+
+STACK_MD_REF       METADATA  ## revised config for MD refstacks vs PS1_REFERENCE above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   6.0   # never really want >6 pixels in refstack
+    PSF.INPUT.CLIP.NSIGMA   F32   1.0   # sample typically on rising side of distribution (set even smaller?)
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0 # need ot tune?
+    SAFE                    BOOL  FALSE
+END
+
+STACK_MD_DEEP     METADATA   ## revised config for MD deepstack above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK 
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0 
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0 # need ot tune?
+    SAFE                    BOOL  FALSE
+END
+
+STACK_ALLDEEP      METADATA     # no cuts, everything in changes after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK 
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   100.0
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0 # need ot tune?
+    SAFE                    BOOL  FALSE
+END
+
+STACK_NIGHTLY_1DG  METADATA                 # Revised MD 8 input nightly stacks and using 1DG convolution
+    OUTPUT.NOCOMP             BOOL  FALSE
+    OUTPUT.LOGFLUX            BOOL  FALSE
+    PSF.INPUT.CLIP.SIMPLE     BOOL  True
+    PSF.INPUT.MAX             F32   12.0    # what FWHM does diffim become mostly useless, if any?
+    PSF.INPUT.CLIP.NSIGMA     F32   1000.0  # want to use up to MAX, but sig could possibly be small?
+    MATCH.REJ                 F32   4.0     # need to tune?
+    SAFE                      BOOL  FALSE
+    PSF.TARGET.AS.MAX         BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32   0.1
+END
+
+STACK_MD_IQ_1DG       METADATA  ## revised config for MD refstacks vs PS1_REFERENCE above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0   # center/edge can vary 1-2 pix, prefer <6 pix but needs to be <10 pix for edges until code improved..
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0  # any change to inputs can greatly impact edge filling factor..
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0   # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     4               # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    TRUE            # HACK for removing bscale offset from input warps because of compression (0.5*BSCALE)
+END
+
+STACK_MD_REF_1DG       METADATA  ## revised config for MD refstacks vs PS1_REFERENCE above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   7.0   # center/edge can vary 1-2 pix, prefer <6 pix but needs to be <7 pix for edges
+    PSF.INPUT.CLIP.NSIGMA   F32   1.0   # sample typically on rising side of distribution (set even smaller?)
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0   # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     4               # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    TRUE            # HACK for removing bscale offset from input warps because of compression (0.5*BSCALE)
+END
+
+STACK_MD_DEEP_1DG     METADATA   ## revised config for MD deepstack above after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     30              # Minimum input per pixel 
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    TRUE            # HACK for removing bscale offset from input warps because of compression (0.5*BSCALE)
+END
+
+STACK_ALLDEEP_1DG      METADATA     # no real cuts, for changes after ppStack mods 5/03/13
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   14.0    # greater than 14 is more often junk
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.5             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.5             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+END
+
+STACK_MDTHREEPI_DEEP_1DG     METADATA   ## revised config for MD+3PI 
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.01             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     2.5             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+END
+
+
+
+
+STACK_CNP_PV3_IQ_1DG  METADATA       ## revised -- based on STACK_THREEPI/STACK_MD_DEEP_1DG
+    OUTPUT.NOCOMP           BOOL  TRUE 
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ        F32    4.0
+    SAFE		 BOOL	F
+    PSF.TARGET.AS.MAX        BOOL  TRUE   # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1     # set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1          # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5          # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0          # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1          # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2          # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1          # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     3            # Minimum input per pixel     
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels 
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+STACK_CNP_PV3_REF_1DG  METADATA  ## revised CNP PV3 REF stack --
+    OUTPUT.NOCOMP            BOOL  TRUE   # pointed field -- no compression, no logflux 
+    OUTPUT.LOGFLUX           BOOL  FALSE  # 
+    OUTPUT.REPLICATE         BOOL  TRUE
+    STACK.TYPE               STR   DEEP_STACK  
+    PSF.INPUT.CLIP.SIMPLE    BOOL  True
+    PSF.INPUT.MAX            F32   10.0   # CNP large FWHM, center/edge vary 1-2 pix? 
+    PSF.INPUT.CLIP.NSIGMA    F32   0.0    # sample typically on rising side of distribution 
+    PSF.INPUT.THRESH         F32   NAN
+    PSF.INPUT.ASYMMETRY      F32   NAN
+    MATCH.REJ                F32   4.0    # need ot tune?
+    SAFE                     BOOL  FALSE
+    PSF.TARGET.AS.MAX        BOOL  TRUE   # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1     # set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1          # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5          # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0          # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1          # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2          # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1          # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     3            # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels 
+    MASK.BLANKBORDER S32    20           # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE        # MUST be FALSE for PV3
+END
+
+STACK_CNP_PV3_DEEP_1DG  METADATA   ## -- 
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   16.0    # large FWHM images up to 20 --  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0   # do not want to clip really
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     3               # Minimum input per pixel -- more and get crazy structures.. 
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels -- many, dont trust SUSPECT
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3 (PV2 bias hack fix)
+END
+
+
+STACK_MD_PV3_NIGHT_1DG  METADATA   ## Revised MD 8 input NIGHT stacks for PV3 -- no time to test, so similar to original but 1DG 
+    OUTPUT.NOCOMP             BOOL  FALSE
+    OUTPUT.LOGFLUX            BOOL  FALSE
+    PSF.INPUT.CLIP.SIMPLE     BOOL  True
+    PSF.INPUT.MAX             F32   12.0    # what FWHM does diffim become mostly useless, if any?
+    PSF.INPUT.CLIP.NSIGMA     F32   1000.0  # want to use up to MAX, but sig could possibly be small?
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0       # need ot tune?
+    SAFE                    BOOL  TRUE      # Play safe when combining small number of values? 
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    ## -- extra masking not tested and likely not want for small Nin stack
+    #THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    #COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    #COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    #COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    #COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    #IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    #MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels 
+    ## -- 
+    NMINPIX         S32     1               # Minimum input per pixel
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+STACK_MD_PV3_IQ_1DG       METADATA  ## revised config for MD PV3 IQ stacks -- not complete
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0   # center/edge can vary 1-2 pix, prefer <6 pix but needs to be <10 pix for edges until code improved..
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0  # any change to inputs can greatly impact edge filling factor..
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0   # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     4               # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+STACK_MD_PV3_REF_1DG       METADATA  ## revised config for MD PV3 refstacks -- not complete
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK  ## needed?
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   7.0   # center/edge can vary 1-2 pix, prefer <6 pix but needs to be <7 pix for edges
+    PSF.INPUT.CLIP.NSIGMA   F32   1.0   # sample typically on rising side of distribution (set even smaller?)
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0   # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX       BOOL  TRUE      # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     4               # Minimum input per pixel
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+STACK_MD_PV3_DEEP_1DG     METADATA   ## revised config for MD PV3 deepstack -- not complete
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+    OUTPUT.REPLICATE        BOOL  TRUE
+    STACK.TYPE              STR   DEEP_STACK
+    PSF.INPUT.CLIP.SIMPLE   BOOL  True
+    PSF.INPUT.MAX           F32   10.0    #  
+    PSF.INPUT.CLIP.NSIGMA   F32   100.0
+    PSF.INPUT.THRESH        F32   NAN
+    PSF.INPUT.ASYMMETRY     F32   NAN
+    MATCH.REJ               F32   4.0     # need ot tune?
+    SAFE                    BOOL  FALSE
+    PSF.TARGET.AS.MAX  BOOL  TRUE
+    PSF.TARGET.AS.MAX.EPSILON F32 0.1
+    THRESHOLD.MASK  F32     0.1             # Threshold for mask deconvolution (0..1)
+    COMBINE.ITER    F32     0.5             # Number of rejection iterations per input
+    COMBINE.REJ     F32     3.0             # Rejection threshold in combination (sigma)
+    COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+    COMBINE.DISCARD F32     0.2             # Discard fraction for Olympic weighted mean
+    IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+    NMINPIX         S32     30              # Minimum input per pixel 
+    MASK.VAL        STR     SUSPECT,MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+    MASK.BLANKBORDER S32    20              # Mask blank border in final stack output
+    BSCALEOFFSET    BOOL    FALSE           # MUST be FALSE for PV3
+END
+
+
+
+# Recipe overrides for STACK
+STACKPHOT METADATA
+  PSF.MODEL	STR	PS_MODEL_QGAUSS	# Model for PSF match
+END
Index: /branches/eam_branches/ippconfig.20240412/gpc2/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/psastro.config	(revision 42661)
@@ -0,0 +1,556 @@
+	
+# save matched stars?
+PSASTRO.SAVE.REFMATCH      BOOL TRUE  # save refstar matches as table in output smf file
+
+# astrometry matching parameters
+
+# nominal plate scale (units / pixel)
+# XXX we are using pixels here because of the limited dynamic range for 
+# NAXIS1,2 when loaded by addstar.  
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32    5000.
+PSASTRO.GRID.SCALE     F32      50
+PSASTRO.GRID.NSTAR.MAX S32     800 # deprecated 
+PSASTRO.GRID.NREF.MAX  S32     800 # max stars accepted for grid search from ref catalog
+PSASTRO.GRID.NRAW.MAX  S32    1200 # max stars accepted for grid search from raw image
+
+PSASTRO.MAX.NRAW      S32      1000   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF      S32      5000   # max stars accepted for fitting (0 for all)
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32     0.25   # pad by this fraction of the full mosaic (may need to be larger for single chips)
+
+# 
+PSASTRO.MIN.INST.MAG.RAW       F32     -15.0   # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32      -8.0   # max instrumental magnitude for stars accepted for fitting
+PSASTRO.GRID.MIN.INST.MAG.RAW  F32     -15.0   # min instrumental magnitude for stars accepted for grid search
+PSASTRO.GRID.MAX.INST.MAG.RAW  F32      -8.0   # max instrumental magnitude for stars accepted for grid search
+
+# PSASTRO.GRID.MIN.ANGLE F32 -1.0 # start angle (degrees)
+# PSASTRO.GRID.MAX.ANGLE F32 +0.5
+PSASTRO.GRID.DEL.ANGLE F32  0.5
+
+# for some period before 2018.07.25, there was a substantial pointing offset
+# PSASTRO.GRID.MIN.ANGLE F32 -10.0 # start angle (degrees)
+# PSASTRO.GRID.MAX.ANGLE F32  -6.0
+
+PSASTRO.GRID.MIN.ANGLE F32 -3.0
+PSASTRO.GRID.MAX.ANGLE F32 +3.0
+
+#
+PSASTRO.GRID.MIN.SCALE F32  1.00
+PSASTRO.GRID.MAX.SCALE F32  1.00
+PSASTRO.GRID.DEL.SCALE F32  0.01
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.RADIUS.N0 F32    90
+PSASTRO.MATCH.RADIUS.N1 F32    60
+PSASTRO.MATCH.RADIUS.N2 F32    30
+PSASTRO.MATCH.RADIUS.N3 F32    20
+PSASTRO.MATCH.RADIUS.N4 F32    20
+PSASTRO.MATCH.RADIUS.N5 F32    10
+PSASTRO.MATCH.RADIUS.N6 F32    10
+PSASTRO.MATCH.RADIUS.N7 F32    5
+PSASTRO.MATCH.FIT.NITER S32    8
+
+# for iterations >= N, require a single match per reference
+PSASTRO.MATCH.UNIQ.ITER S32     4 
+
+# XXX Test for taurus
+PSASTRO.GRID.MIN.SIGMA  F32  1.0
+PSASTRO.IGNORE          STR  SATURATED,CRLIMIT,DEFECT,BLEND,FAIL
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32    150
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+PSASTRO.USE.MODEL             BOOL     TRUE
+
+# PSASTRO.FIX.CHIPS             BOOL     TRUE
+PSASTRO.PIXEL.TOLERANCE       F32      3.0
+PSASTRO.ANGLE.TOLERANCE       F32      1.0
+
+# Mosaic Astrometry options
+PSASTRO.MOSAIC.MODE         BOOL   TRUE
+
+# for iterations >= N, require a single match per reference
+PSASTRO.MOSAIC.CHIP.NITER     S32      5  # fit clipping iterations (NOTE: last iteration is NITER, not NITER - 1)
+PSASTRO.MOSAIC.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+PSASTRO.MOSAIC.UNIQ.ITER      S32      3  # for iterations >= N, require a single match per reference
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N4 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N5 F32    5.00 # max allow error for valid solution (arcsec)
+
+# mosaic radius match in pixels (do these make sense?)
+PSASTRO.MOSAIC.RADIUS.N0    F32    5
+PSASTRO.MOSAIC.RADIUS.N1    F32    10
+PSASTRO.MOSAIC.RADIUS.N2    F32    10
+PSASTRO.MOSAIC.RADIUS.N3    F32    5
+PSASTRO.MOSAIC.RADIUS.N4    F32    3
+PSASTRO.MOSAIC.RADIUS.N5    F32    3
+
+PSASTRO.MOSAIC.CHIP.ORDER     S32      1  # limit chip-fit order to 1
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N5  S32      3 # fit order (-1 means use default)
+
+# we need to allow a loose fit if we are fitting to 2mass (50mas internal error -> 100mas limit?)
+# if we are fitting against quality digital data, we can require tighter constraints
+
+PSASTRO.MODEL.REF.CHIP        STR      XY33
+
+PSASTRO.MODEL.SET.BORESITE    BOOL     FALSE
+PSASTRO.MODEL.BORESITE.X      F32      -62.0
+PSASTRO.MODEL.BORESITE.Y      F32     -139.0
+#PSASTRO.MODEL.BORESITE.X      F32      -200.0
+#PSASTRO.MODEL.BORESITE.Y      F32     -300.0
+
+# maximum accepted fwhm_major (moved from camera.config
+PSASTRO.MAX.ALLOWED.FWHM              F32       100
+
+# *** make sure the choice of CATDIR (dvo database) contains the photcodes desired below
+# PSASTRO.CATDIR              STR      SYNTH.GRIZY 
+# PSASTRO.CATDIR		STR	PS1.REF.20120503
+PSASTRO.CATDIR               STR     PS1.REF.20170919
+
+
+DVO.GETSTAR.PHOTCODE        STR      i
+# EAM 2021.11.11: return to 10k (was 3k on processing tag since July swap)
+DVO.GETSTAR.MAX.RHO         F32      10000.0
+DVO.GETSTAR.MIN.MAG         F32     -10.0
+DVO.GETSTAR.MIN.MAG.INST    F32     -45.0
+
+# rather than mean, use specified EDGE:
+ZERO.POINT.USE.MEAN	      	BOOL     TRUE
+ZERO.POINT.EDGE.FRACTION      	F32      0.9
+ZERO.POINT.EDGE.SAMPLE        	S32      25
+ZERO.POINT.EDGE.SAMPLE.FRACTION F32      0.1
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 25.013
+  PHOTCODE STR g
+  GHOST_MAX_MAG                   F32 -16.5
+  GLINT_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32 24.840
+  PHOTCODE STR r
+  GHOST_MAX_MAG                   F32 -20.0
+  GLINT_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+  ZEROPT   F32 24.711
+  PHOTCODE STR i
+  GHOST_MAX_MAG                   F32 -23.5
+  GLINT_MAX_MAG                   F32 -21.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+  ZEROPT   F32 24.300
+  PHOTCODE STR z
+  GHOST_MAX_MAG                   F32 -25.0
+  GLINT_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR y
+  ZEROPT   F32 23.570
+  PHOTCODE STR y
+  GHOST_MAX_MAG                   F32 -25.0
+  GLINT_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR w
+  ZEROPT   F32 26.000
+  PHOTCODE STR r
+  GHOST_MAX_MAG                   F32 -23.5
+  GLINT_MAX_MAG                   F32 -21.0
+END
+
+REFSTAR_MASK                    BOOL TRUE
+REFSTAR_MASK_MAX_MAG            F32 -16.5
+
+#TdB20200214: Position of gpc2 spikes determined on image
+REFSTAR_MASK_SATSTAR_POS_ZERO   F32  -0.7892
+#TdB20200225: The rotator angle for gpc2 goes the other way around as gpc1
+PSASTRO.MODEL.ROT.PARITY      S32      -1
+
+#TdB20200229: The size of saturated star circles should be an exponential for gpc2
+#rad(mag) = REFSTAR_MASK_SATSTAR_RAD_OFFSET + REFSTAR_MASK_SATSTAR_EXP**(REFSTAR_MASK_SATSTAR_MAG_MAX-mag)
+REFSTAR_MASK_SATSTAR_MAG_MAX    F32 -11.363
+REFSTAR_MASK_SATSTAR_RAD_OFFSET F32  17.631
+REFSTAR_MASK_SATSTAR_EXP        F32   1.493
+
+REFSTAR_MASK_SATSPIKE_MAG_SLOPE F32  0.096
+REFSTAR_MASK_SATSPIKE_MAG_MAX   F32  7.35
+REFSTAR_MASK_SATSPIKE_OFFSET    F32 200.0
+REFSTAR_MASK_SATSPIKE_WIDTH     F32   8.00
+# Width control. if L > L0, W = W0 + (L - L0) * slope
+REFSTAR_MASK_SATSPIKE_L0        F32  200.0
+REFSTAR_MASK_SATSPIKE_WIDTH_SLOPE F32 0.01
+
+# pair 1 (longer)
+# REFSTAR_MASK_SATSPIKE_MAG_MAX1  F32 -16.20
+
+# pair 2 (shorter)
+# REFSTAR_MASK_SATSPIKE_MAG_MAX2  F32 -17.70
+
+
+REFSTAR_MASK_BLEED              BOOL FALSE
+REFSTAR_MASK_BLEED_MAG_MAX      F32 -15.0
+REFSTAR_MASK_BLEED_MAG_SLOPE    F32   5.0
+
+PSASTRO.EXTRACT METADATA
+ EXTRACT_MAX_MAG                F32  -19.0
+ DVO.GETSTAR.MAX.RHO            F32  300.0
+END
+
+# ghost model file is relative to PATH (eg, ippconfig directory)
+GHOST_MODEL                     STR  gpc2/ghost.model.mdc
+# GHOST_MAX_MAG                   F32 -20.0
+
+REFSTAR_COUNT_GHOSTS            BOOL TRUE
+REFSTAR_MASK_GHOST              BOOL TRUE
+PSASTRO.SAVE.GHOSTS             BOOL TRUE  # save ghost positions as table in output smf file
+
+#TdB20200305: The length of glints as function of mag is recomputed for gpc2
+#glint_length(mag) = GLINT_LENGTH_MAG_SLOPE*(GLINT_LENGTH_MAG_ZERO-mag)
+GLINT_LENGTH_MAG_SLOPE          F32 1901.0
+GLINT_LENGTH_MAG_ZERO           F32 -16.8
+#TdB20200308: The length of glints also depends on position off the focal plane (perpendicular to pixel FPA), out to GLINT_LENGTH_POS_CUT
+#glint_length(pos) = GLINT_LENGTH_POS_SLOPE*(GLINT_LENGTH_POS_REF-pos)
+GLINT_LENGTH_POS_SLOPE          F32 0.00019
+GLINT_LENGTH_POS_REF            F32 33821.
+GLINT_LENGTH_POS_CUT            F32 30000.
+GLINT_LENGTH_MIN_FPA            F32 1500.0
+#TdB20200312: The angle that glints have depends on position along the focal plane (parallel to pixel FPA)
+#glint_angle(pos) = GLINT_ANGLE_SLOPE*(GLINT_ANGLE_POS_REF-(pos/1000))
+#GLINT_ANGLE_POS_SLOPE           F32  0.07903  
+GLINT_ANGLE_POS_SLOPE           F32  0.0  
+GLINT_ANGLE_POS_REF             F32 -575.5
+GLINT_WIDTH                     F32  60.0
+
+# save glint positions?
+PSASTRO.SAVE.GLINTS             BOOL TRUE  # save glint positions as table in output smf file
+
+PR_RECIPE METADATA
+  REFSTAR_MASK                    BOOL FALSE
+END
+
+REFSTAR_MASK_GLINTS		BOOL  TRUE
+GLINT_MAX_MAG                   F32 -21.0
+GLINT.REGION			MULTI
+
+GLINT.REGION			METADATA
+  REGION			STR  [-38000:-25000,-20000:+20000]
+  GLINT.TYPE                    STR  LEFT
+END
+
+GLINT.REGION			METADATA
+  REGION			STR  [+25000:+38000,-20000:+20000]
+  GLINT.TYPE                    STR  RIGHT
+END
+
+GLINT.REGION			METADATA
+  REGION			STR  [-20000:+20000,+25000:+38000:]
+  GLINT.TYPE                    STR  TOP
+END
+
+GLINT.REGION			METADATA
+  REGION			STR  [-20000:+20000,-38000:-25000]
+  GLINT.TYPE                    STR  BOTTOM
+END
+
+REFSTAR_MASK_CROSSTALK_MAG_SLOPE F32   3.44
+REFSTAR_MASK_CROSSTALK_MAG_MAX   F32 -14.47
+CROSSTALK_MAX_MAG                F32  20.0
+CROSSTALK_MASK                   BOOL TRUE
+
+# crosstal rules file is relative to PATH (eg, ippconfig directory)
+CROSSTALK_FILE                     STR  gpc2/crosstalk_rules.mdc
+
+PS1_REFERENCE METADATA
+  PSASTRO.CATDIR              STR      PS1.GRIZY
+#   PSASTRO.CATDIR	       STR	PS1.REF.20120325
+  ## PHOTCODE.DATA MULTI UPDATE
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR g
+  ##   ZEROPT   F32 24.541
+  ##   PHOTCODE STR g
+  ##   GHOST_MAX_MAG                   F32 -20.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR r
+  ##   ZEROPT   F32 24.705.1
+  ##   PHOTCODE STR r
+  ##   GHOST_MAX_MAG                   F32 -20.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR i
+  ##   ZEROPT   F32 24.580
+  ##   PHOTCODE STR i
+  ##   GHOST_MAX_MAG                   F32 -25.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR z
+  ##   ZEROPT   F32 24.201
+  ##   PHOTCODE STR z
+  ##   GHOST_MAX_MAG                   F32 -25.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR y
+  ##   ZEROPT   F32 23.260
+  ##   PHOTCODE STR y
+  ##   GHOST_MAX_MAG                   F32 -25.0
+  ## END
+  ## PHOTCODE.DATA METADATA
+  ##   FILTER   STR w
+  ##   ZEROPT   F32 26.0
+  ##   PHOTCODE STR r
+  ##   GHOST_MAX_MAG                   F32 -20.0
+  ## END
+END
+
+### MOPS wants dynamic masking turned off
+MOPS.TEST	METADATA
+	REFSTAR_MASK	BOOL	FALSE
+END
+
+SAS_REFERENCE METADATA
+    PSASTRO.CATDIR              STR      SAS.REF.V1
+END
+
+# these values worked to get solutions for the STS observations from 2009 & 2010
+# these field has damage from excessive persistence and the impact of burntool
+STS_DATASET  METADATA
+
+  # need to boost the total number of stars available for the fit:
+  # allow more stars per chip and boost the density to which we query
+  # from the reference database.
+  PSASTRO.MAX.NRAW               S32      2000   # 
+  PSASTRO.MAX.NREF               S32      8000   # max stars accepted for fitting (0 for all)
+  # use wider range of magnitudes for grid search
+  PSASTRO.GRID.MIN.INST.MAG.RAW  F32     -15.0   # min instrumental magnitude for stars accepted for fitting
+  PSASTRO.GRID.MAX.INST.MAG.RAW  F32     -11.0   # max instrumental magnitude for stars accepted for fitting
+
+  # reduce the magnitude range to avoid the bright stars have bad astrometry problem
+  PSASTRO.MIN.INST.MAG.RAW       F32     -12.0   # min instrumental magnitude for stars accepted for fitting
+  PSASTRO.MAX.INST.MAG.RAW       F32     -11.0   # min instrumental magnitude for stars accepted for fitting
+
+  DVO.GETSTAR.MIN.MAG.INST   F32     -15.0
+  DVO.GETSTAR.MAX.RHO        F32      60000.0
+  
+  # the crowding is high, so unless we restrict somewhat tightly early
+  # on, we get very noisy (and wrong) fits.  These values are probably
+  # too restrictive for the general observation: we would risk missing
+  # matches.
+
+  # single-chip radius match in pixels
+  PSASTRO.MATCH.RADIUS.N0 F32   10
+  PSASTRO.MATCH.RADIUS.N1 F32    5
+  PSASTRO.MATCH.RADIUS.N2 F32    5
+  PSASTRO.MATCH.RADIUS.N3 F32    5
+  PSASTRO.MATCH.RADIUS.N4 F32    3
+  PSASTRO.MATCH.RADIUS.N5 F32    3
+  PSASTRO.MATCH.RADIUS.N6 F32    5
+  PSASTRO.MATCH.RADIUS.N7 F32    5
+  PSASTRO.MATCH.FIT.NITER S32    5
+
+  # 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.20170919
+   ZERO.POINT.USE.MEAN		BOOL	TRUE  
+END
+
+CNP_DATASET METADATA
+    ZERO.POINT.USE.MEAN         BOOL    TRUE
+    PSASTRO.MAX.ALLOWED.FWHM    F32     25
+END
+
+LAP_ASTRO METADATA
+#  PSASTRO.CATDIR                STR      3PI.20110505.REFCAT
+#   PSASTRO.CATDIR		 STR	  SYNTH.GRIZY
+#   PSASTRO.CATDIR		 STR     PS1.REF.20120503
+   PSASTRO.CATDIR               STR     PS1.REF.20120524
+   ZERO.POINT.USE.MEAN		BOOL	TRUE  
+END
+
+QUB_ASTRO METADATA
+   ZERO.POINT.USE.MEAN         BOOL  TRUE
+   PSASTRO.MAX.ALLOWED.FWHM    F32   24
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+END
+
+YSE_ASTRO METADATA
+   ZERO.POINT.USE.MEAN         BOOL  TRUE
+   PSASTRO.MAX.ALLOWED.FWHM    F32   24 
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+END
+
+#Recipe for processing engineering exposures
+ENGI_ASTRO METADATA
+   ZERO.POINT.USE.MEAN         BOOL  TRUE
+   PSASTRO.MAX.ALLOWED.FWHM    F32   30
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+END
+
+SYNTH_CAT METADATA
+   PSASTRO.CATDIR		STR SYNTH.GRIZY
+END
+
+POLE_REFCAT METADATA
+   PSASTRO.CATDIR		STR  SYNTH.GRIZY
+   ZERO.POINT.USE.MEAN		     BOOL TRUE  
+   PSASTRO.GRID.MIN.ANGLE       F32  -20
+   PSASTRO.GRID.MAX.ANGLE       F32  +20
+   PSASTRO.GRID.DEL.ANGLE       F32   0.5
+   PSASTRO.FIELD.PADDING        F32   0.5
+END
+
+TEST_REFCAT METADATA
+   PSASTRO.CATDIR		STR /data/ipp064.0/ipp/ippRefs/catdir.refcat.20120524.v0
+END
+
+STATICSKY_TESTCAL   METADATA
+   REFSTAR_MASK                BOOL FALSE
+   PSASTRO.SAVE.REFMATCH       BOOL FALSE
+   PSASTRO.FIX.CHIPS           BOOL FALSE
+   PSASTRO.USE.MODEL           BOOL FALSE
+   PSASTRO.MOSAIC.MODE         BOOL FALSE
+   DVO.GETSTAR.FIXED.ZEROPT    F32   25.0
+
+   PSASTRO.CATDIR               	STR     PS1.REF.20120524
+   ZERO.POINT.USE.MEAN          	BOOL    TRUE
+   PSASTRO.MAX.NRAW 			S32	0 
+   PSASTRO.GRID.NRAW.MAX 		S32	50000 
+   PSASTRO.MIN.INST.MAG.RAW 		F32	-21.0
+   PSASTRO.MAX.INST.MAG.RAW 		F32	-15.0 
+   PSASTRO.GRID.MIN.INST.MAG.RAW 	F32	-21.0 
+   PSASTRO.GRID.MAX.INST.MAG.RAW 	F32	-15.0  
+   DVO.GETSTAR.MIN.MAG.INST 		F32	-14.0
+END
+
+STATICSKY_CAL   METADATA
+    REFSTAR_MASK                BOOL FALSE
+    PSASTRO.SAVE.REFMATCH       BOOL FALSE
+    PSASTRO.FIX.CHIPS           BOOL FALSE
+    PSASTRO.USE.MODEL           BOOL FALSE
+    PSASTRO.MOSAIC.MODE         BOOL FALSE
+    DVO.GETSTAR.FIXED.ZEROPT    F32   25.0
+    DVO.GETSTAR.MIN.MAG.INST	F32   -15.0
+    PSASTRO.CATDIR                       STR     PS1.REF.20120524
+    ZERO.POINT.USE.MEAN                  BOOL    TRUE
+
+    ## for skycell, radius shouldn't need to be as large as 90 pixel default. deeper stacks, crowded fields can be problems
+    PSASTRO.MATCH.RADIUS.N0 F32    15
+    PSASTRO.MATCH.RADIUS.N1 F32    10
+    PSASTRO.MATCH.RADIUS.N2 F32    5
+    PSASTRO.MATCH.RADIUS.N3 F32    1
+    PSASTRO.MATCH.RADIUS.N4 F32    0.5
+    PSASTRO.MATCH.FIT.NITER S32    5
+
+    PSASTRO.MAX.ERROR      F32      0.2  # in arcsec units, if larger than 0.2" on skycell then a problem..
+
+END
+
+
+# revised setup for MD nightly stack inputs, should work for case of N~2-30
+# - similar to DEEPCAL except for MIN.NSTAR 5 to attemp more edge skycells if poorer
+STATICSKY_NIGHTCAL   METADATA
+   PSASTRO.CATDIR                  STR   PS1.REF.20120524  # reset here to ensure same catalog is used when reprocessing set uniformly
+   REFSTAR_MASK                    BOOL  FALSE
+   PSASTRO.SAVE.REFMATCH           BOOL  FALSE
+   PSASTRO.FIX.CHIPS               BOOL  FALSE
+   PSASTRO.USE.MODEL               BOOL  FALSE
+   PSASTRO.MOSAIC.MODE             BOOL  FALSE
+   ZERO.POINT.USE.MEAN             BOOL  TRUE
+   PSASTRO.FIELD.PADDING           F32   0.01   # skycells are well defined, don't need large padding. 1% of 6400 is 64 pixels
+   PSASTRO.MAX.NRAW                S32   1000   # include more than MAX.NREF to account for extras like false-positives
+   PSASTRO.MAX.NREF            	   S32   500   # if edge skycell ~5% then want >50 to match (hit ~40% in normal field matches)
+   PSASTRO.MIN.INST.MAG.RAW        F32   -25.0  # 
+   PSASTRO.MAX.INST.MAG.RAW        F32   -5.0
+   PSASTRO.GRID.SEARCH 		   BOOL  FALSE  # skycell/stack and astrom well known, when used could cause problems and not help
+   #PSASTRO.GRID.NRAW.MAX           S32   2000
+   #PSASTRO.GRID.NREF.MAX 	    S32   2000
+   #PSASTRO.GRID.MIN.INST.MAG.RAW   F32   -21.0
+   #PSASTRO.GRID.MAX.INST.MAG.RAW   F32   -14.0
+   DVO.GETSTAR.MAX.RHO		   F32	 6000.0  # slightly larger than MAX.NREF 
+   DVO.GETSTAR.MIN.MAG.INST        F32   -25.0   # set absurd range to cover large range of exptime, then clamp...
+   DVO.GETSTAR.MIN.MAG		   F32	 15.0    # only used if keyword problem
+   REFSTAR_CLAMP_MAG_MIN 	   F32	 15.0    # saturation in MD ~14 even in y-band, so toss out brighter in the list
+   DVO.GETSTAR.FIXED.ZEROPT        F32   0.0     # not really needed, exptime overly dominates
+  
+   ## for skycell/stack astrom well known, radius shouldn't need to be as large as 90 pixel default. in deeper stacks can be problems
+   PSASTRO.MATCH.RADIUS.N0         F32   5 
+   PSASTRO.MATCH.RADIUS.N1 	   F32   3 
+   PSASTRO.MATCH.RADIUS.N2 	   F32   1
+   PSASTRO.MATCH.RADIUS.N3 	   F32   0.5
+   PSASTRO.MATCH.FIT.NITER 	   S32   4 
+   PSASTRO.MAX.ERROR       	   F32   0.2  # in arcsec units, still liberal limit for well known astrometry for skycells
+   PSASTRO.MIN.NSTAR       	   S32   5    # edges may not have many and require special treatment 
+END
+
+
+# revised setup for DEEP/MDS stacks with range of inputs, should work for N~2(edges)--500 inputs with large MIN/MAX.INST.MAG.RAW
+STATICSKY_DEEPCAL   METADATA
+   PSASTRO.CATDIR                  STR   PS1.REF.20120524  # reset here to ensure same catalog is used when reprocessing set uniformly
+   REFSTAR_MASK                    BOOL  FALSE
+   PSASTRO.SAVE.REFMATCH           BOOL  FALSE
+   PSASTRO.FIX.CHIPS               BOOL  FALSE
+   PSASTRO.USE.MODEL               BOOL  FALSE
+   PSASTRO.MOSAIC.MODE             BOOL  FALSE
+   ZERO.POINT.USE.MEAN             BOOL  TRUE
+   PSASTRO.FIELD.PADDING           F32   0.01   # skycells are well defined, don't need large padding. 1% of 6400 is 64 pixels
+   PSASTRO.MAX.NRAW                S32   1000   # include more than MAX.NREF to account for extras like false-positives
+   PSASTRO.MAX.NREF            	   S32    500   # if edge skycell ~10% then try ~50 to match 
+   PSASTRO.MIN.INST.MAG.RAW        F32   -25.0  # 
+   PSASTRO.MAX.INST.MAG.RAW        F32   -5.0
+   PSASTRO.GRID.SEARCH 		   BOOL  FALSE  # skycell/stack and astrom well known, when used could cause problems and not help
+   #PSASTRO.GRID.NRAW.MAX           S32   2000
+   #PSASTRO.GRID.NREF.MAX 	    S32   2000
+   #PSASTRO.GRID.MIN.INST.MAG.RAW   F32   -21.0
+   #PSASTRO.GRID.MAX.INST.MAG.RAW   F32   -14.0
+   DVO.GETSTAR.MAX.RHO		   F32	 6000.0  # N/sqdeg, slightly larger than MAX.NREF 
+   DVO.GETSTAR.MIN.MAG.INST        F32   -25.0   # set absurd range to cover large range of exptime, then clamp...
+   DVO.GETSTAR.MIN.MAG		   F32	 15.0    # only used if keyword problem so also using CLAMP_MAG_MIN
+   REFSTAR_CLAMP_MAG_MIN 	   F32	 15.0    # saturation in MD ~14 even in y-band, so toss out brighter in the list
+   DVO.GETSTAR.FIXED.ZEROPT        F32   0.0     # not really needed, exptime overly dominates
+  
+   ## for skycell/stack astrom well known, radius shouldn't need to be as large as 90 pixel default. in deeper stacks can be problems
+   PSASTRO.MATCH.RADIUS.N0         F32   5 
+   PSASTRO.MATCH.RADIUS.N1 	   F32   3 
+   PSASTRO.MATCH.RADIUS.N2 	   F32   1
+   PSASTRO.MATCH.RADIUS.N3 	   F32   0.5
+   PSASTRO.MATCH.FIT.NITER 	   S32   4 
+   PSASTRO.MAX.ERROR       	   F32   0.2  # in arcsec units, still liberal limit for well known astrometry for skycells
+   PSASTRO.MIN.NSTAR       	   S32   10   # edges may not have many and require special treatment 
+END
+
+SWEETSPOT_TEST METADATA
+   PSASTRO.CATDIR               STR     PS1.REF.20170919
+   ZERO.POINT.USE.MEAN          BOOL    TRUE
+   PSASTRO.GRID.MIN.ANGLE F32 -6.0 
+   PSASTRO.GRID.MAX.ANGLE F32 -3.0 
+   PSASTRO.GRID.OFFSET F32 3000.0
+END
+
Index: /branches/eam_branches/ippconfig.20240412/gpc2/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/gpc2/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/gpc2/psphot.config	(revision 42661)
@@ -0,0 +1,141 @@
+
+BACKGROUND.XBIN                     S32   400             # size of background superpixels
+BACKGROUND.YBIN                     S32   400             # size of background superpixels
+BACKGROUND.XSAMPLE                  F32   2.0             # size of background superpixels
+BACKGROUND.YSAMPLE                  F32   2.0             # size of background superpixels
+
+SOFTEN.VARIANCE                     BOOL  FALSE          # XXX drop? soften the errors for bright pixels
+SOFTEN.VARIANCE.FRACTION            F32   0.000		 # CZW 2013-06-20 I've disabled this, as I don't think it's needed.
+
+PEAKS_SMOOTH_SIGMA                  F32   2.5           # smoothing kernel sigma in pixels
+
+PSF_CLUMP_NX                        S32   3             # subdivide image in to NX x NY regions for 
+PSF_CLUMP_NY                        S32   3             # selecting PSF stars
+PSF_CLUMP_GRID_SCALE                F32   2.5		# XXX too large? size of Sx,Sy image pixel
+
+PSF.RESIDUALS.RADIUS   		    F32   9.0           # keep this pixel if residual is more significant than this
+PSF.RESIDUALS.SPATIAL_ORDER 	    S32   1             # fit spatial variations of the residuals at this order (0,1)
+
+# PSF model parameters : choose the PSF model desired
+PSF_MODEL              	 	    STR   PS_MODEL_PS1_V1
+# vector of simga values to use in when setting the moments window (this is shorter for gpc1 than
+# the psphot default)
+@PSF.SIGMA.VALUES                   F32   1.0  2.0  3.0  4.5  6.0  9.0 # comment due to ticket #1476
+
+PSPHOT.CR.NSIGMA.SOFTEN             F32   0.0025        # Softening parameter for weights in CR stat
+PSPHOT.CR.MAX.SIZE                  F32   0.8             # guess for limit on M_minor in pix^2
+PSPHOT.CR.MAX.MAG                   F32  -8.0             # guess for limit on Kron Mag
+PSPHOT.CR.AUTOSCALE                 BOOL  FALSE
+
+PSF.TREND.NX                        S32   6
+PSF.TREND.NY                        S32   6
+
+PSF_MAX_NSTARS                      S32   2000          # limit number of stars used for PSF model
+
+# rename NONLINEAR_FIT_SN_LIM?
+FULL_FIT_SN_LIM      		    F32   25.0
+
+APTREND.ORDER.MAX    		    S32   6
+
+PSPHOT.CRMASK.APPLY		    BOOL  TRUE		  # TEST THIS before enabling.
+
+# Extended source fit parameters
+APTEST_V1                     METADATA
+  BREAK_POINT                         STR   ENSEMBLE     
+END
+
+DIAGNOSTIC.PLOTS METADATA
+  IMAGE.BACKGROUND.CELL.HISTOGRAM   BOOL  FALSE
+  IMAGE.BACKGROUND.CELL.HISTOGRAM.X S32   8
+  IMAGE.BACKGROUND.CELL.HISTOGRAM.Y S32   8
+END
+
+DIFF METADATA
+  BACKGROUND.XBIN		    S32  128            # size of background superpixels
+  BACKGROUND.YBIN	    	    S32  128            # size of background superpixels
+  DIFF_STATS			    BOOL TRUE	       # Calculate diff-specific stats
+  OUTPUT.FORMAT		            STR  PS1_DV3       # Format of output file
+
+  PSPHOT.EXT.NSIGMA.LIMIT	    F32	 0.0
+  PSPHOT.EXT.DIFF.ALTERNATE	    BOOL TRUE
+  PSPHOT.EXT.DIFF.ALTERNATE.THRESH  F32	 1.25
+
+  # XXX enable these when MOPS is ready
+  # LMM_FIT_CHISQ_CONVERGENCE         BOOL FALSE
+  # LMM_FIT_GAIN_FACTOR_MODE          S32  2
+  # PSF_FIT_MIN_TOL                   F32  0.2
+  # EXT_FIT_MIN_TOL                   F32  0.2 
+  # PSF_FIT_ITER                      S32  20
+  # EXT_FIT_ITER                      S32  20
+  # FOOTPRINT_CULL_NSIGMA_DELTA       F32  10
+  # FOOTPRINT_CULL_NSIGMA_MIN         F32   2  
+
+  PSPHOT.EXT.FIT.ALL.SOURCES	    BOOL TRUE
+  PSPHOT.EXT.FIT.ALL.THRESH	    F32	 1000
+# Lower threshold as requested by MOPS
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL   4.75    FALSE
+  END
+END
+
+SSTF_DIFF METADATA
+  PSPHOT.EXT.NSIGMA.LIMIT	    F32	 0.0
+  PSPHOT.EXT.DIFF.ALTERNATE	    BOOL TRUE
+  PSPHOT.EXT.DIFF.ALTERNATE.THRESH  F32	 1.25
+
+  PSPHOT.EXT.FIT.ALL.SOURCES	    BOOL TRUE
+  PSPHOT.EXT.FIT.ALL.THRESH	    F32	 1000
+# Lower threshold as requested by MOPS
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL   4.75    FALSE
+  END
+END
+
+SSTF_WS_DIFF METADATA
+  PSPHOT.EXT.NSIGMA.LIMIT	    F32	 0.0
+  PSPHOT.EXT.DIFF.ALTERNATE	    BOOL TRUE
+  PSPHOT.EXT.DIFF.ALTERNATE.THRESH  F32	 1.25
+
+  PSPHOT.EXT.FIT.ALL.SOURCES	    BOOL TRUE
+  PSPHOT.EXT.FIT.ALL.THRESH	    F32	 1000
+# Lower threshold as requested by MOPS
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL   4.75    FALSE
+  END
+END
+
+# Recipe overrides for PR reduction
+PR	METADATA
+	BACKGROUND.XBIN	      S32   128             # size    	    of background superpixels
+	BACKGROUND.YBIN	         S32   128             # size of background superpixels
+	SKY_STAT         STR   FITTED_MEAN_V4  # statistic used to measure background
+END
+
+CHIP_CONSTANT_WEIGHTPHOT METADATA
+        CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE
+END
+
+UNIONS_DR3 METADATA
+  PEAKS_NSIGMA_LIMIT                  F32   100.0            # peak significance threshold
+  PSF.TREND.NX                        S32   1
+  PSF.TREND.NY                        S32   1
+  PEAKS_USE_SIGNAL_IMAGE	      BOOL  TRUE             # significance peaks have a central divot
+  LMM_FIT_USE_REWEIGHTING             BOOL  TRUE             # use IRLS-style reweighting (TRUE) or ordinary LMM
+  EXT_MODEL                           STR   PS_MODEL_RGAUSS
+
+# EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform any of the aperture-like measurements?
+# EXTENDED_SOURCE_ANNULI              BOOL  TRUE
+# EXTENDED_SOURCE_SN_LIM              F32   5.0
+
+  # radii in pixels. UNIONS_DR3 uses TESS RINGS.V3 with 0.25 arcsec pixels
+  # these correspond to 1, 2, 4, 8, 12, 16 arcsecond radii
+  @RADIAL.ANNULAR.BINS.LOWER          F32      0.00 4.00  8.00 16.00 32.00 48.00 # perl parser fails without a comment ticket #1476 still?
+  @RADIAL.ANNULAR.BINS.UPPER          F32      4.00 8.00 16.00 32.00 48.00 64.00 # perl parser fails without a comment ticket #1476 still?
+  RADIAL.ANNULAR.BINS.MIN             S32      3 # always measure apertures to this entry
+
+  RADIAL_APERTURES		      BOOL  TRUE # measure the radial apertures listed above
+  RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+END
Index: /branches/eam_branches/ippconfig.20240412/hsc/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/Makefile.am	(revision 42661)
@@ -0,0 +1,25 @@
+
+installdir = $(datadir)/ippconfig/hsc
+
+install_files = \
+	camera.config \
+	dvo.config \
+	format_raw.config \
+	format_mef.config \
+	format_cmf.config \
+	ghost.model.mdc \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	ppStats.config \
+	ppStack.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/hsc/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/camera.config	(revision 42661)
@@ -0,0 +1,232 @@
+# Camera configuration file for MegaCam: describes the camera
+
+# File formats that we know about
+FORMATS         METADATA
+        MEF     STR     hsc/format_mef.config  # for output cmfs from, e.g., camera
+        RAW     STR     hsc/format_raw.config
+        CMF     STR     hsc/format_cmf.config  # chip output cmfs
+#       SPLIT   STR     hsc/format_split.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        x000   STR     CH1 CH2 CH3 CH4
+        x001   STR     CH1 CH2 CH3 CH4
+        x002   STR     CH1 CH2 CH3 CH4
+        x003   STR     CH1 CH2 CH3 CH4
+        x004   STR     CH1 CH2 CH3 CH4
+        x005   STR     CH1 CH2 CH3 CH4
+        x006   STR     CH1 CH2 CH3 CH4
+        x007   STR     CH1 CH2 CH3 CH4
+        x008   STR     CH1 CH2 CH3 CH4
+        x009   STR     CH1 CH2 CH3 CH4
+        x010   STR     CH1 CH2 CH3 CH4
+        x011   STR     CH1 CH2 CH3 CH4
+        x012   STR     CH1 CH2 CH3 CH4
+        x013   STR     CH1 CH2 CH3 CH4
+        x014   STR     CH1 CH2 CH3 CH4
+        x015   STR     CH1 CH2 CH3 CH4
+        x016   STR     CH1 CH2 CH3 CH4
+        x017   STR     CH1 CH2 CH3 CH4
+        x018   STR     CH1 CH2 CH3 CH4
+        x019   STR     CH1 CH2 CH3 CH4
+        x020   STR     CH1 CH2 CH3 CH4
+        x021   STR     CH1 CH2 CH3 CH4
+        x022   STR     CH1 CH2 CH3 CH4
+        x023   STR     CH1 CH2 CH3 CH4
+        x024   STR     CH1 CH2 CH3 CH4
+        x025   STR     CH1 CH2 CH3 CH4
+        x026   STR     CH1 CH2 CH3 CH4
+        x027   STR     CH1 CH2 CH3 CH4
+        x028   STR     CH1 CH2 CH3 CH4
+        x029   STR     CH1 CH2 CH3 CH4
+        x030   STR     CH1 CH2 CH3 CH4
+        x031   STR     CH1 CH2 CH3 CH4
+        x032   STR     CH1 CH2 CH3 CH4
+        x033   STR     CH1 CH2 CH3 CH4
+        x034   STR     CH1 CH2 CH3 CH4
+        x035   STR     CH1 CH2 CH3 CH4
+        x036   STR     CH1 CH2 CH3 CH4
+        x037   STR     CH1 CH2 CH3 CH4
+        x038   STR     CH1 CH2 CH3 CH4
+        x039   STR     CH1 CH2 CH3 CH4
+        x040   STR     CH1 CH2 CH3 CH4
+        x041   STR     CH1 CH2 CH3 CH4
+        x042   STR     CH1 CH2 CH3 CH4
+        x043   STR     CH1 CH2 CH3 CH4
+        x044   STR     CH1 CH2 CH3 CH4
+        x045   STR     CH1 CH2 CH3 CH4
+        x046   STR     CH1 CH2 CH3 CH4
+        x047   STR     CH1 CH2 CH3 CH4
+        x048   STR     CH1 CH2 CH3 CH4
+        x049   STR     CH1 CH2 CH3 CH4
+        x050   STR     CH1 CH2 CH3 CH4
+        x051   STR     CH1 CH2 CH3 CH4
+        x052   STR     CH1 CH2 CH3 CH4
+        x053   STR     CH1 CH2 CH3 CH4
+        x054   STR     CH1 CH2 CH3 CH4
+        x055   STR     CH1 CH2 CH3 CH4
+        x056   STR     CH1 CH2 CH3 CH4
+        x057   STR     CH1 CH2 CH3 CH4
+        x058   STR     CH1 CH2 CH3 CH4
+        x059   STR     CH1 CH2 CH3 CH4
+        x060   STR     CH1 CH2 CH3 CH4
+        x061   STR     CH1 CH2 CH3 CH4
+        x062   STR     CH1 CH2 CH3 CH4
+        x063   STR     CH1 CH2 CH3 CH4
+        x064   STR     CH1 CH2 CH3 CH4
+        x065   STR     CH1 CH2 CH3 CH4
+        x066   STR     CH1 CH2 CH3 CH4
+        x067   STR     CH1 CH2 CH3 CH4
+        x068   STR     CH1 CH2 CH3 CH4
+        x069   STR     CH1 CH2 CH3 CH4
+        x070   STR     CH1 CH2 CH3 CH4
+        x071   STR     CH1 CH2 CH3 CH4
+        x072   STR     CH1 CH2 CH3 CH4
+        x073   STR     CH1 CH2 CH3 CH4
+        x074   STR     CH1 CH2 CH3 CH4
+        x075   STR     CH1 CH2 CH3 CH4
+        x076   STR     CH1 CH2 CH3 CH4
+        x077   STR     CH1 CH2 CH3 CH4
+        x078   STR     CH1 CH2 CH3 CH4
+        x079   STR     CH1 CH2 CH3 CH4
+        x080   STR     CH1 CH2 CH3 CH4
+        x081   STR     CH1 CH2 CH3 CH4
+        x082   STR     CH1 CH2 CH3 CH4
+        x083   STR     CH1 CH2 CH3 CH4
+        x084   STR     CH1 CH2 CH3 CH4
+        x085   STR     CH1 CH2 CH3 CH4
+        x086   STR     CH1 CH2 CH3 CH4
+        x087   STR     CH1 CH2 CH3 CH4
+        x088   STR     CH1 CH2 CH3 CH4
+        x089   STR     CH1 CH2 CH3 CH4
+        x090   STR     CH1 CH2 CH3 CH4
+        x091   STR     CH1 CH2 CH3 CH4
+        x092   STR     CH1 CH2 CH3 CH4
+        x093   STR     CH1 CH2 CH3 CH4
+        x094   STR     CH1 CH2 CH3 CH4
+        x095   STR     CH1 CH2 CH3 CH4
+        x096   STR     CH1 CH2 CH3 CH4
+        x097   STR     CH1 CH2 CH3 CH4
+        x098   STR     CH1 CH2 CH3 CH4
+        x099   STR     CH1 CH2 CH3 CH4
+        x100   STR     CH1 CH2 CH3 CH4
+        x101   STR     CH1 CH2 CH3 CH4
+        x102   STR     CH1 CH2 CH3 CH4
+        x103   STR     CH1 CH2 CH3 CH4
+        x104   STR     CH1 CH2 CH3 CH4
+        x105   STR     CH1 CH2 CH3 CH4
+        x106   STR     CH1 CH2 CH3 CH4
+        x107   STR     CH1 CH2 CH3 CH4
+        x108   STR     CH1 CH2 CH3 CH4
+        x109   STR     CH1 CH2 CH3 CH4
+        x110   STR     CH1 CH2 CH3 CH4
+        x111   STR     CH1 CH2 CH3 CH4
+#       ccd112   STR     LeftAmp RightAmp # guide ccds are not saved
+#       ccd113   STR     LeftAmp RightAmp # guide ccds are not saved
+#       ccd114   STR     LeftAmp RightAmp # guide ccds are not saved
+#       ccd115   STR     LeftAmp RightAmp # guide ccds are not saved
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+   g        STR   HSC-g
+   r	    MULTI
+   r        STR   HSC-r
+   r        STR   HSC-r2
+   i        MULTI
+   i        STR   HSC-i
+   i        STR   HSC-i2
+   z        STR   HSC-z
+   y	    STR   HSC-Y
+   NB816    STR   NB0816
+   NB921    MULTI
+   NB921    STR   NB0921
+   NB921    STR   NB0926
+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	hsc		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias     STR BIAS
+  zero     STR BIAS
+  dark     STR DARK
+  flat     STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        # Other recipes
+        PSPHOT          STR     hsc/psphot.config           # psphot details
+        PSASTRO         STR     hsc/psastro.config          # psastro details
+#	PSWARP		STR	hsc/pswarp.config		# pswarp details
+        PPIMAGE         STR     hsc/ppImage.config          # ppImage recipe
+#	REJECTIONS      STR     hsc/rejections.config       # rejection recipe
+	PPMERGE		STR	hsc/ppMerge.config		# ppMerge recipe
+#	PPSTACK		STR	hsc/ppStack.config          # ppStack recipe
+        PPSTATS         STR     hsc/ppStats.config
+	PPSTACK         STR     hsc/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		# File rules appropriate for MEF format
+
+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.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
+
+  PSF.HEAD   STR {CHIP.NAME}.hdr
+  PSF.TABLE  STR {CHIP.NAME}.psf_model
+  PSF.RESID  STR {CHIP.NAME}.psf_resid
+
+  REF.ASTROM STR {CHIP.NAME}.ref_astrom
+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.N}		# Rule for generating photcode
+
+BURNTOOL.STATE.GOOD        S16  0  # Value for burntool_state with the most recent bt version.
+BURNTOOL.STATE.GOOD.UPDATE S16  0  # for upddate processing accept earlier version
+
+FOV_REF                     F32     0   # Field of view of unvignetted region in FPA pixels.
+FOV_MAX			    F32	    0
+NPIX_REF 		    S32	    0
+NPIX_MAX		    S32	    0
+NPIX_INTERCHIP              S32     0
+
+# 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         25
+
+# don't censor any masked pixels
+MASK.NO.CENSOR          U32 4294967295
+
+METADATA.COMPRESSION         STR      7f # compression mode (nM): n = 1-9, M = f (filtered), h (Huffman), R (run-length)
Index: /branches/eam_branches/ippconfig.20240412/hsc/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/dvo.config	(revision 42661)
@@ -0,0 +1,72 @@
+
+MOSAICNAME              HSC
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+#DATE-KEYWORD		DATE-OBS
+#DATE-MODE		yyyy-mm-dd
+#UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-STR
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	19.825391
+OBSERVATORY-LONGITUDE	10.3650651
+
+SUBPIX_DATAFILE		NONE
+
+IMAGE-ID-KEYWORD        IMAGEID
+SOURCE-ID-KEYWORD       SOURCEID
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              2     # mark star FEW if N(good) < STAR_TOOFEW
+GRID_TOOFEW             10     # keep grid FROZEN if N(good) < GRID_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 4
+RELPHOT_GRID_Y 4
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+RELASTRO_SIGMA_LIM      0.01  # select measurements with dM < SIGMA_LIM for relphot analysis
+PAR_FACTOR_MIN          0.2
Index: /branches/eam_branches/ippconfig.20240412/hsc/format_cmf.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/format_cmf.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/format_cmf.config	(revision 42661)
@@ -0,0 +1,741 @@
+# The split MecaCam data is stored as single files for each chip, each a simple fits image
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	Subaru
+	INSTRUME	STR	Hyper Suprime-Cam
+ 	NAXIS           S32     0 # with 2 this is an image (with 0, this is an output smf)
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# The extensions represent chips
+	FPA.OBS		STR	EXP-ID	# A PHU keyword for unique identifier
+	CONTENT		STR	DET-ID	# Key to the CONTENTS menu (use DET-ID or T_CCDSN?)
+	CONTENT.RULE	STR	{CHIP.ID} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+    # Content name, chipType
+      0 STR      x000:S10892
+      1 STR      x001:S10892
+      2 STR      x002:S10892
+      3 STR      x003:S10892
+      4 STR      x004:S10892
+      5 STR      x005:S10892
+      6 STR      x006:S10892
+      7 STR      x007:S10892
+      8 STR      x008:S10892
+      9 STR      x009:S10892
+     10 STR      x010:S10892
+     11 STR      x011:S10892
+     12 STR      x012:S10892
+     13 STR      x013:S10892
+     14 STR      x014:S10892
+     15 STR      x015:S10892
+     16 STR      x016:S10892
+     17 STR      x017:S10892
+     18 STR      x018:S10892
+     19 STR      x019:S10892
+     20 STR      x020:S10892
+     21 STR      x021:S10892
+     22 STR      x022:S10892
+     23 STR      x023:S10892
+     24 STR      x024:S10892
+     25 STR      x025:S10892
+     26 STR      x026:S10892
+     27 STR      x027:S10892
+     28 STR      x028:S10892
+     29 STR      x029:S10892
+     30 STR      x030:S10892
+     31 STR      x031:S10892
+     32 STR      x032:S10892
+     33 STR      x033:S10892
+     34 STR      x034:S10892
+     35 STR      x035:S10892
+     36 STR      x036:S10892
+     37 STR      x037:S10892
+     38 STR      x038:S10892
+     39 STR      x039:S10892
+     40 STR      x040:S10892
+     41 STR      x041:S10892
+     42 STR      x042:S10892
+     43 STR      x043:S10892
+     44 STR      x044:S10892
+     45 STR      x045:S10892
+     46 STR      x046:S10892
+     47 STR      x047:S10892
+     48 STR      x048:S10892
+     49 STR      x049:S10892
+     50 STR      x050:S10892
+     51 STR      x051:S10892
+     52 STR      x052:S10892
+     53 STR      x053:S10892
+     54 STR      x054:S10892
+     55 STR      x055:S10892
+     56 STR      x056:S10892
+     57 STR      x057:S10892
+     58 STR      x058:S10892
+     59 STR      x059:S10892
+     60 STR      x060:S10892
+     61 STR      x061:S10892
+     62 STR      x062:S10892
+     63 STR      x063:S10892
+     64 STR      x064:S10892
+     65 STR      x065:S10892
+     66 STR      x066:S10892
+     67 STR      x067:S10892
+     68 STR      x068:S10892
+     69 STR      x069:S10892
+     70 STR      x070:S10892
+     71 STR      x071:S10892
+     72 STR      x072:S10892
+     73 STR      x073:S10892
+     74 STR      x074:S10892
+     75 STR      x075:S10892
+     76 STR      x076:S10892
+     77 STR      x077:S10892
+     78 STR      x078:S10892
+     79 STR      x079:S10892
+     80 STR      x080:S10892
+     81 STR      x081:S10892
+     82 STR      x082:S10892
+     83 STR      x083:S10892
+     84 STR      x084:S10892
+     85 STR      x085:S10892
+     86 STR      x086:S10892
+     87 STR      x087:S10892
+     88 STR      x088:S10892
+     89 STR      x089:S10892
+     90 STR      x090:S10892
+     91 STR      x091:S10892
+     92 STR      x092:S10892
+     93 STR      x093:S10892
+     94 STR      x094:S10892
+     95 STR      x095:S10892
+     96 STR      x096:S10892
+     97 STR      x097:S10892
+     98 STR      x098:S10892
+     99 STR      x099:S10892
+    100 STR      x100:S10892
+    101 STR      x101:S10892
+    102 STR      x102:S10892
+    103 STR      x103:S10892
+    104 STR      x104:S10892
+    105 STR      x105:S10892
+    106 STR      x106:S10892
+    107 STR      x107:S10892
+    108 STR      x108:S10892
+    109 STR      x109:S10892
+    110 STR      x110:S10892
+    111 STR      x111:S10892
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	S10892	STR	CH1:channel_1 CH2:channel_2 CH3:channel_3 CH4:channel_4
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts for this type
+	channel_1	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[521:536,50:4225]
+		CELL.TRIMSEC		STR	[9:520,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN1
+		CELL.X0			S32	0
+		CELL.Y0			S32	0
+	END
+	channel_2	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[537:552,50:4225]
+		CELL.TRIMSEC		STR	[553:1064,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN2
+		CELL.X0			S32	512
+		CELL.Y0			S32	0
+	END
+	channel_3	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1593:1608,50:4225]
+		CELL.TRIMSEC		STR	[1081:1592,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN3
+		CELL.X0			S32	1024
+		CELL.Y0			S32	0
+	END
+	channel_4	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1609:1624,50:4225]
+		CELL.TRIMSEC		STR	[1625:2136,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN4
+		CELL.X0			S32	1536
+		CELL.Y0			S32	0
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.OBS         STR     EXP-ID
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTER      STR     FILTER01
+        FPA.FILTERID    STR     FILTER01
+#       FPA.POSANGLE    STR     INR-STR
+        FPA.POSANGLE    STR     INST-PA
+        FPA.ROTANGLE    STR     INST-PA
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADESYS
+	FPA.OBSTYPE	STR	DATA-TYP
+	FPA.OBJECT	STR	OBJECT
+        FPA.OBS.MODE    STR     OBS-MOD
+#       FPA.COMMENT     STR     CMMTOBS
+	FPA.FOCUS	STR	FOC-VAL
+	FPA.TIME	STR	MJD-STR
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALTITUDE
+	FPA.AZ		STR	AZIMUTH
+	FPA.TEMP	STR	DET-TMP
+	FPA.EXPOSURE	STR	EXPTIME
+        FPA.M2X         STR     M2-POS1
+        FPA.M2Y         STR     M2-POS2
+        FPA.M2Z         STR     M2-POS3
+        FPA.M2TIP       STR     M2-ANG1
+        FPA.M2TILT      STR     M2-ANG2
+        FPA.ENV.TEMP    STR     OUT-TMP
+        FPA.ENV.HUMID   STR     OUT-HUM
+        FPA.ENV.WIND    STR     OUT-WND
+#       FPA.ENV.DIR     STR     OUT-TMP
+        FPA.TELTEMP.TRUSS  STR  DOM-TMP # Mid truss temperatures (C
+
+	CHIP.TEMP	STR	DET-TMP
+	CHIP.ID		STR	DET-ID
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     EXPTIME
+	CELL.TIME	STR	MJD-STR
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     BIN-FCT1
+        CELL.YBIN       STR     BIN-FCT2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	SUBARU
+	FPA.INSTRUMENT		STR	HYPERSUPRIME
+	FPA.DETECTOR	        STR	HSC
+        FPA.LONGITUDE   	STR     10:25:01.417 # XXX haleakla
+        FPA.LATITUDE    	STR     20:42:25.558 # XXX haleakla
+        FPA.ELEVATION   	F32     3048.0       # altitude in meters
+#	FPA.TIMESYS	        STR	TAI
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4096
+	CELL.XSIZE		S32	512
+	CELL.YSIZE		S32	4176		# XXX: or 4096?
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+        CELL.SATURATION         S32     60000
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.READNOISE          F32     1.0		# XXX: set based on bias stats
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1		# XXX may need to flip some of the cells
+	CELL.YPARITY		S32	1
+#	CELL.X0			S32	0
+#	CELL.Y0			S32	0
+#	CELL.TIMESYS	        STR	TAI
+	CHIP.XPARITY		S32	1		# XXX may need to flip some of the cells
+	CHIP.YPARITY		S32	1
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+          x000 S32  4165
+          x001 S32  4165
+          x002 S32  4165
+          x003 S32  4165
+          x004 S32  6288
+          x005 S32  6288
+          x006 S32  6288
+          x007 S32  6288
+          x008 S32  6288
+          x009 S32  6288
+          x010 S32  8411
+          x011 S32  8411
+          x012 S32  8411
+          x013 S32  8411
+          x014 S32  8411
+          x015 S32  8411
+          x016 S32  8484
+          x017 S32  8484
+          x018 S32  8484
+          x019 S32 10533
+          x020 S32 10533
+          x021 S32 10533
+          x022 S32 10607
+          x023 S32 10607
+          x024 S32 10607
+          x025 S32 10607
+          x026 S32 12656
+          x027 S32 12656
+          x028 S32 12656
+          x029 S32 12656
+          x030 S32 12730
+          x031 S32 12730
+          x032 S32 12730
+          x033 S32 12730
+          x034 S32 14779
+          x035 S32 14779
+          x036 S32 14779
+          x037 S32 14779
+          x038 S32 14852
+          x039 S32 14852
+          x040 S32 14852
+          x041 S32 14852
+          x042 S32 16901
+          x043 S32 16901
+          x044 S32 16901
+          x045 S32 16901
+          x046 S32 16975
+          x047 S32 16975
+          x048 S32 16975
+          x049 S32 16975
+          x050 S32 19024
+          x051 S32 19024
+          x052 S32 19024
+          x053 S32 19024
+          x054 S32 19098
+          x055 S32 19098
+          x056 S32 19098
+          x057 S32 19098
+          x058 S32 21147
+          x059 S32 21147
+          x060 S32 21147
+          x061 S32 21147
+          x062 S32 21220
+          x063 S32 21220
+          x064 S32 21220
+          x065 S32 21220
+          x066 S32 23269
+          x067 S32 23269
+          x068 S32 23269
+          x069 S32 23269
+          x070 S32 23343
+          x071 S32 23343
+          x072 S32 23343
+          x073 S32 23343
+          x074 S32 25392
+          x075 S32 25392
+          x076 S32 25392
+          x077 S32 25392
+          x078 S32 25466
+          x079 S32 25466
+          x080 S32 25466
+          x081 S32 27515
+          x082 S32 27515
+          x083 S32 27515
+          x084 S32 27588
+          x085 S32 27588
+          x086 S32 27588
+          x087 S32 27588
+          x088 S32 27588
+          x089 S32 27588
+          x090 S32 29711
+          x091 S32 29711
+          x092 S32 29711
+          x093 S32 29711
+          x094 S32 29711
+          x095 S32 29711
+          x096 S32 31834
+          x097 S32 31834
+          x098 S32 31834
+          x099 S32 31834
+          x100 S32  8484
+          x101 S32 10533
+          x102 S32 25466 # was 33357
+          x103 S32 27515 # was 4424
+          x104 S32  2043
+          x105 S32  2043
+          x106 S32  4165
+          x107 S32  4165
+          x108 S32 31834
+          x109 S32 31834
+          x110 S32 33956
+          x111 S32 33956
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+          x000 S32 13457
+          x001 S32 17926
+          x002 S32 22395
+          x003 S32 26863
+          x004 S32  8989
+          x005 S32 13457
+          x006 S32 17926
+          x007 S32 22395
+          x008 S32 26863
+          x009 S32 31332
+          x010 S32  8989
+          x011 S32 13457
+          x012 S32 17926
+          x013 S32 22395
+          x014 S32 26863
+          x015 S32 31332
+          x016 S32  4934
+          x017 S32  9402
+          x018 S32 13871
+          x019 S32 22395
+          x020 S32 26863
+          x021 S32 31332
+          x022 S32   465
+          x023 S32  4934
+          x024 S32  9402
+          x025 S32 13871
+          x026 S32 22395
+          x027 S32 26863
+          x028 S32 31332
+          x029 S32 35801
+          x030 S32   465
+          x031 S32  4934
+          x032 S32  9402
+          x033 S32 13871
+          x034 S32 22395
+          x035 S32 26863
+          x036 S32 31332
+          x037 S32 35801
+          x038 S32   465
+          x039 S32  4934
+          x040 S32  9402
+          x041 S32 13871
+          x042 S32 22395
+          x043 S32 26863
+          x044 S32 31332
+          x045 S32 35801
+          x046 S32   465
+          x047 S32  4934
+          x048 S32  9402
+          x049 S32 13871
+          x050 S32 22395
+          x051 S32 26863
+          x052 S32 31332
+          x053 S32 35801
+          x054 S32   465
+          x055 S32  4934
+          x056 S32  9402
+          x057 S32 13871
+          x058 S32 22395
+          x059 S32 26863
+          x060 S32 31332
+          x061 S32 35801
+          x062 S32   465
+          x063 S32  4934
+          x064 S32  9402
+          x065 S32 13871
+          x066 S32 22395
+          x067 S32 26863
+          x068 S32 31332
+          x069 S32 35801
+          x070 S32   465
+          x071 S32  4934
+          x072 S32  9402
+          x073 S32 13871
+          x074 S32 22395
+          x075 S32 26863
+          x076 S32 31332
+          x077 S32 35801
+          x078 S32  4934
+          x079 S32  9402
+          x080 S32 13871
+          x081 S32 22395
+          x082 S32 26863
+          x083 S32 31332
+          x084 S32  4934
+          x085 S32  9402
+          x086 S32 13871
+          x087 S32 18340
+          x088 S32 22808
+          x089 S32 27277
+          x090 S32  4934
+          x091 S32  9402
+          x092 S32 13871
+          x093 S32 18340
+          x094 S32 22808
+          x095 S32 27277
+          x096 S32  9402
+          x097 S32 13871
+          x098 S32 18340
+          x099 S32 22808
+          x100 S32   465 # was 4934 (rotated, false location)
+          x101 S32 35801 # was 31332
+          x102 S32   465 # was 29691 (rotated, false location)
+          x103 S32 35801 # was 29691
+          x104 S32 13457
+          x105 S32 26863
+          x106 S32  8989
+          x107 S32 31332
+          x108 S32  4934
+          x109 S32 27277
+          x110 S32  9402
+          x111 S32 22808
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+          x000 S32 -1
+          x001 S32 -1
+          x002 S32 -1
+          x003 S32 -1
+          x004 S32 -1
+          x005 S32 -1
+          x006 S32 -1
+          x007 S32 -1
+          x008 S32 -1
+          x009 S32 -1
+          x010 S32 -1
+          x011 S32 -1
+          x012 S32 -1
+          x013 S32 -1
+          x014 S32 -1
+          x015 S32 -1
+          x016 S32 +1
+          x017 S32 +1
+          x018 S32 +1
+          x019 S32 -1
+          x020 S32 -1
+          x021 S32 -1
+          x022 S32 +1
+          x023 S32 +1
+          x024 S32 +1
+          x025 S32 +1
+          x026 S32 -1
+          x027 S32 -1
+          x028 S32 -1
+          x029 S32 -1
+          x030 S32 +1
+          x031 S32 +1
+          x032 S32 +1
+          x033 S32 +1
+          x034 S32 -1
+          x035 S32 -1
+          x036 S32 -1
+          x037 S32 -1
+          x038 S32 +1
+          x039 S32 +1
+          x040 S32 +1
+          x041 S32 +1
+          x042 S32 -1
+          x043 S32 -1
+          x044 S32 -1
+          x045 S32 -1
+          x046 S32 +1
+          x047 S32 +1
+          x048 S32 +1
+          x049 S32 +1
+          x050 S32 -1
+          x051 S32 -1
+          x052 S32 -1
+          x053 S32 -1
+          x054 S32 +1
+          x055 S32 +1
+          x056 S32 +1
+          x057 S32 +1
+          x058 S32 -1
+          x059 S32 -1
+          x060 S32 -1
+          x061 S32 -1
+          x062 S32 +1
+          x063 S32 +1
+          x064 S32 +1
+          x065 S32 +1
+          x066 S32 -1
+          x067 S32 -1
+          x068 S32 -1
+          x069 S32 -1
+          x070 S32 +1
+          x071 S32 +1
+          x072 S32 +1
+          x073 S32 +1
+          x074 S32 -1
+          x075 S32 -1
+          x076 S32 -1
+          x077 S32 -1
+          x078 S32 +1
+          x079 S32 +1
+          x080 S32 +1
+          x081 S32 -1
+          x082 S32 -1
+          x083 S32 -1
+          x084 S32 +1
+          x085 S32 +1
+          x086 S32 +1
+          x087 S32 +1
+          x088 S32 +1
+          x089 S32 +1
+          x090 S32 +1
+          x091 S32 +1
+          x092 S32 +1
+          x093 S32 +1
+          x094 S32 +1
+          x095 S32 +1
+          x096 S32 +1
+          x097 S32 +1
+          x098 S32 +1
+          x099 S32 +1
+          x100 S32 +1
+          x101 S32 -1
+          x102 S32 +1
+          x103 S32 -1
+          x104 S32 -1
+          x105 S32 -1
+          x106 S32 -1
+          x107 S32 -1
+          x108 S32 +1
+          x109 S32 +1
+          x110 S32 +1
+          x111 S32 +1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+          x000 S32 -1
+          x001 S32 -1
+          x002 S32 -1
+          x003 S32 -1
+          x004 S32 -1
+          x005 S32 -1
+          x006 S32 -1
+          x007 S32 -1
+          x008 S32 -1
+          x009 S32 -1
+          x010 S32 -1
+          x011 S32 -1
+          x012 S32 -1
+          x013 S32 -1
+          x014 S32 -1
+          x015 S32 -1
+          x016 S32 +1
+          x017 S32 +1
+          x018 S32 +1
+          x019 S32 -1
+          x020 S32 -1
+          x021 S32 -1
+          x022 S32 +1
+          x023 S32 +1
+          x024 S32 +1
+          x025 S32 +1
+          x026 S32 -1
+          x027 S32 -1
+          x028 S32 -1
+          x029 S32 -1
+          x030 S32 +1
+          x031 S32 +1
+          x032 S32 +1
+          x033 S32 +1
+          x034 S32 -1
+          x035 S32 -1
+          x036 S32 -1
+          x037 S32 -1
+          x038 S32 +1
+          x039 S32 +1
+          x040 S32 +1
+          x041 S32 +1
+          x042 S32 -1
+          x043 S32 -1
+          x044 S32 -1
+          x045 S32 -1
+          x046 S32 +1
+          x047 S32 +1
+          x048 S32 +1
+          x049 S32 +1
+          x050 S32 -1
+          x051 S32 -1
+          x052 S32 -1
+          x053 S32 -1
+          x054 S32 +1
+          x055 S32 +1
+          x056 S32 +1
+          x057 S32 +1
+          x058 S32 -1
+          x059 S32 -1
+          x060 S32 -1
+          x061 S32 -1
+          x062 S32 +1
+          x063 S32 +1
+          x064 S32 +1
+          x065 S32 +1
+          x066 S32 -1
+          x067 S32 -1
+          x068 S32 -1
+          x069 S32 -1
+          x070 S32 +1
+          x071 S32 +1
+          x072 S32 +1
+          x073 S32 +1
+          x074 S32 -1
+          x075 S32 -1
+          x076 S32 -1
+          x077 S32 -1
+          x078 S32 +1
+          x079 S32 +1
+          x080 S32 +1
+          x081 S32 -1
+          x082 S32 -1
+          x083 S32 -1
+          x084 S32 +1
+          x085 S32 +1
+          x086 S32 +1
+          x087 S32 +1
+          x088 S32 +1
+          x089 S32 +1
+          x090 S32 +1
+          x091 S32 +1
+          x092 S32 +1
+          x093 S32 +1
+          x094 S32 +1
+          x095 S32 +1
+          x096 S32 +1
+          x097 S32 +1
+          x098 S32 +1
+          x099 S32 +1
+          x100 S32 +1
+          x101 S32 -1
+          x102 S32 +1
+          x103 S32 -1
+          x104 S32 -1
+          x105 S32 -1
+          x106 S32 -1
+          x107 S32 -1
+          x108 S32 +1
+          x109 S32 +1
+          x110 S32 +1
+          x111 S32 +1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+	FPA.LONGITUDE	STR	HOURS
+	FPA.LATITUDE	STR	DEGREES
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/hsc/format_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/format_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/format_mef.config	(revision 42661)
@@ -0,0 +1,744 @@
+# The split MecaCam data is stored as single files for each chip, each a simple fits image
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	Subaru
+	INSTRUME	STR	Hyper Suprime-Cam
+	PSFORMAT        STR     MEF
+#	NAXIS           S32     2 # with 2 this is an image (with 0, this is an output smf)
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# The extensions represent chips
+	FPA.OBS		STR	EXP-ID	# A PHU keyword for unique identifier
+#	CONTENT		STR	DET-ID	# Key to the CONTENTS menu (use DET-ID or T_CCDSN?)
+#	CONTENT.RULE	STR	{CHIP.ID} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+    # Content name, chipType
+      0 STR      x000:S10892
+      1 STR      x001:S10892
+      2 STR      x002:S10892
+      3 STR      x003:S10892
+      4 STR      x004:S10892
+      5 STR      x005:S10892
+      6 STR      x006:S10892
+      7 STR      x007:S10892
+      8 STR      x008:S10892
+      9 STR      x009:S10892
+     10 STR      x010:S10892
+     11 STR      x011:S10892
+     12 STR      x012:S10892
+     13 STR      x013:S10892
+     14 STR      x014:S10892
+     15 STR      x015:S10892
+     16 STR      x016:S10892
+     17 STR      x017:S10892
+     18 STR      x018:S10892
+     19 STR      x019:S10892
+     20 STR      x020:S10892
+     21 STR      x021:S10892
+     22 STR      x022:S10892
+     23 STR      x023:S10892
+     24 STR      x024:S10892
+     25 STR      x025:S10892
+     26 STR      x026:S10892
+     27 STR      x027:S10892
+     28 STR      x028:S10892
+     29 STR      x029:S10892
+     30 STR      x030:S10892
+     31 STR      x031:S10892
+     32 STR      x032:S10892
+     33 STR      x033:S10892
+     34 STR      x034:S10892
+     35 STR      x035:S10892
+     36 STR      x036:S10892
+     37 STR      x037:S10892
+     38 STR      x038:S10892
+     39 STR      x039:S10892
+     40 STR      x040:S10892
+     41 STR      x041:S10892
+     42 STR      x042:S10892
+     43 STR      x043:S10892
+     44 STR      x044:S10892
+     45 STR      x045:S10892
+     46 STR      x046:S10892
+     47 STR      x047:S10892
+     48 STR      x048:S10892
+     49 STR      x049:S10892
+     50 STR      x050:S10892
+     51 STR      x051:S10892
+     52 STR      x052:S10892
+     53 STR      x053:S10892
+     54 STR      x054:S10892
+     55 STR      x055:S10892
+     56 STR      x056:S10892
+     57 STR      x057:S10892
+     58 STR      x058:S10892
+     59 STR      x059:S10892
+     60 STR      x060:S10892
+     61 STR      x061:S10892
+     62 STR      x062:S10892
+     63 STR      x063:S10892
+     64 STR      x064:S10892
+     65 STR      x065:S10892
+     66 STR      x066:S10892
+     67 STR      x067:S10892
+     68 STR      x068:S10892
+     69 STR      x069:S10892
+     70 STR      x070:S10892
+     71 STR      x071:S10892
+     72 STR      x072:S10892
+     73 STR      x073:S10892
+     74 STR      x074:S10892
+     75 STR      x075:S10892
+     76 STR      x076:S10892
+     77 STR      x077:S10892
+     78 STR      x078:S10892
+     79 STR      x079:S10892
+     80 STR      x080:S10892
+     81 STR      x081:S10892
+     82 STR      x082:S10892
+     83 STR      x083:S10892
+     84 STR      x084:S10892
+     85 STR      x085:S10892
+     86 STR      x086:S10892
+     87 STR      x087:S10892
+     88 STR      x088:S10892
+     89 STR      x089:S10892
+     90 STR      x090:S10892
+     91 STR      x091:S10892
+     92 STR      x092:S10892
+     93 STR      x093:S10892
+     94 STR      x094:S10892
+     95 STR      x095:S10892
+     96 STR      x096:S10892
+     97 STR      x097:S10892
+     98 STR      x098:S10892
+     99 STR      x099:S10892
+    100 STR      x100:S10892
+    101 STR      x101:S10892
+    102 STR      x102:S10892
+    103 STR      x103:S10892
+    104 STR      x104:S10892
+    105 STR      x105:S10892
+    106 STR      x106:S10892
+    107 STR      x107:S10892
+    108 STR      x108:S10892
+    109 STR      x109:S10892
+    110 STR      x110:S10892
+    111 STR      x111:S10892
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	S10892	STR	CH1:channel_1 CH2:channel_2 CH3:channel_3 CH4:channel_4
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts for this type
+	channel_1	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[521:536,50:4225]
+		CELL.TRIMSEC		STR	[9:520,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN1
+		CELL.X0			S32	0
+		CELL.Y0			S32	0
+	END
+	channel_2	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[537:552,50:4225]
+		CELL.TRIMSEC		STR	[553:1064,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN2
+		CELL.X0			S32	512
+		CELL.Y0			S32	0
+	END
+	channel_3	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1593:1608,50:4225]
+		CELL.TRIMSEC		STR	[1081:1592,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN3
+		CELL.X0			S32	1024
+		CELL.Y0			S32	0
+	END
+	channel_4	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1609:1624,50:4225]
+		CELL.TRIMSEC		STR	[1625:2136,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN4
+		CELL.X0			S32	1536
+		CELL.Y0			S32	0
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.OBS         STR     EXP-ID
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTER      STR     FILTER01
+        FPA.FILTERID    STR     FILTER01
+#       FPA.POSANGLE    STR     INR-STR -- this is equivalent to the GPC1 ROT, not POS
+        FPA.POSANGLE    STR     INST-PA
+	FPA.ROTANGLE	STR	INST-PA
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADESYS
+	FPA.OBSTYPE	STR	DATA-TYP
+	FPA.OBJECT	STR	OBJECT
+        FPA.OBS.MODE    STR     OBS-MOD
+#       FPA.COMMENT     STR     CMMTOBS
+	FPA.FOCUS	STR	FOC-VAL
+	FPA.TIME	STR	MJD-STR
+#	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALTITUDE
+	FPA.AZ		STR	AZIMUTH
+	FPA.TEMP	STR	DET-TMP
+	FPA.EXPOSURE	STR	EXPTIME
+        FPA.M2X         STR     M2-POS1
+        FPA.M2Y         STR     M2-POS2
+        FPA.M2Z         STR     M2-POS3
+        FPA.M2TIP       STR     M2-ANG1
+        FPA.M2TILT      STR     M2-ANG2
+        FPA.ENV.TEMP    STR     OUT-TMP
+        FPA.ENV.HUMID   STR     OUT-HUM
+        FPA.ENV.WIND    STR     OUT-WND
+#       FPA.ENV.DIR     STR     OUT-TMP
+        FPA.TELTEMP.TRUSS  STR  DOM-TMP # Mid truss temperatures (C
+	FPA.ZP          STR     ZPT_OBS
+
+
+	CHIP.TEMP	STR	DET-TMP
+	CHIP.ID		STR	DET-ID
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     EXPTIME
+	CELL.TIME	STR	MJD-STR
+#	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     BIN-FCT1
+        CELL.YBIN       STR     BIN-FCT2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	SUBARU
+	FPA.INSTRUMENT		STR	HYPERSUPRIME
+	FPA.DETECTOR	        STR	HSC
+        FPA.LONGITUDE   	STR     10:25:01.417 # XXX haleakla
+        FPA.LATITUDE    	STR     20:42:25.558 # XXX haleakla
+        FPA.ELEVATION   	F32     3048.0       # altitude in meters
+	FPA.TIMESYS	        STR	TAI
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4096
+	CELL.XSIZE		S32	512
+	CELL.YSIZE		S32	4176		# XXX: or 4096?
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+        CELL.SATURATION         S32     60000
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.READNOISE          F32     1.0		# XXX: set based on bias stats
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1		# XXX may need to flip some of the cells
+	CELL.YPARITY		S32	1
+	CELL.TIMESYS	STR	TAI
+#	CELL.X0			S32	0
+#	CELL.Y0			S32	0
+	CHIP.XPARITY		S32	1		# XXX may need to flip some of the cells
+	CHIP.YPARITY		S32	1
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+          x000 S32  4165
+          x001 S32  4165
+          x002 S32  4165
+          x003 S32  4165
+          x004 S32  6288
+          x005 S32  6288
+          x006 S32  6288
+          x007 S32  6288
+          x008 S32  6288
+          x009 S32  6288
+          x010 S32  8411
+          x011 S32  8411
+          x012 S32  8411
+          x013 S32  8411
+          x014 S32  8411
+          x015 S32  8411
+          x016 S32  8484
+          x017 S32  8484
+          x018 S32  8484
+          x019 S32 10533
+          x020 S32 10533
+          x021 S32 10533
+          x022 S32 10607
+          x023 S32 10607
+          x024 S32 10607
+          x025 S32 10607
+          x026 S32 12656
+          x027 S32 12656
+          x028 S32 12656
+          x029 S32 12656
+          x030 S32 12730
+          x031 S32 12730
+          x032 S32 12730
+          x033 S32 12730
+          x034 S32 14779
+          x035 S32 14779
+          x036 S32 14779
+          x037 S32 14779
+          x038 S32 14852
+          x039 S32 14852
+          x040 S32 14852
+          x041 S32 14852
+          x042 S32 16901
+          x043 S32 16901
+          x044 S32 16901
+          x045 S32 16901
+          x046 S32 16975
+          x047 S32 16975
+          x048 S32 16975
+          x049 S32 16975
+          x050 S32 19024
+          x051 S32 19024
+          x052 S32 19024
+          x053 S32 19024
+          x054 S32 19098
+          x055 S32 19098
+          x056 S32 19098
+          x057 S32 19098
+          x058 S32 21147
+          x059 S32 21147
+          x060 S32 21147
+          x061 S32 21147
+          x062 S32 21220
+          x063 S32 21220
+          x064 S32 21220
+          x065 S32 21220
+          x066 S32 23269
+          x067 S32 23269
+          x068 S32 23269
+          x069 S32 23269
+          x070 S32 23343
+          x071 S32 23343
+          x072 S32 23343
+          x073 S32 23343
+          x074 S32 25392
+          x075 S32 25392
+          x076 S32 25392
+          x077 S32 25392
+          x078 S32 25466
+          x079 S32 25466
+          x080 S32 25466
+          x081 S32 27515
+          x082 S32 27515
+          x083 S32 27515
+          x084 S32 27588
+          x085 S32 27588
+          x086 S32 27588
+          x087 S32 27588
+          x088 S32 27588
+          x089 S32 27588
+          x090 S32 29711
+          x091 S32 29711
+          x092 S32 29711
+          x093 S32 29711
+          x094 S32 29711
+          x095 S32 29711
+          x096 S32 31834
+          x097 S32 31834
+          x098 S32 31834
+          x099 S32 31834
+          x100 S32  8484
+          x101 S32 10533
+          x102 S32 25466 # was 33357
+          x103 S32 27515 # was 4424
+          x104 S32  2043
+          x105 S32  2043
+          x106 S32  4165
+          x107 S32  4165
+          x108 S32 31834
+          x109 S32 31834
+          x110 S32 33956
+          x111 S32 33956
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+          x000 S32 13457
+          x001 S32 17926
+          x002 S32 22395
+          x003 S32 26863
+          x004 S32  8989
+          x005 S32 13457
+          x006 S32 17926
+          x007 S32 22395
+          x008 S32 26863
+          x009 S32 31332
+          x010 S32  8989
+          x011 S32 13457
+          x012 S32 17926
+          x013 S32 22395
+          x014 S32 26863
+          x015 S32 31332
+          x016 S32  4934
+          x017 S32  9402
+          x018 S32 13871
+          x019 S32 22395
+          x020 S32 26863
+          x021 S32 31332
+          x022 S32   465
+          x023 S32  4934
+          x024 S32  9402
+          x025 S32 13871
+          x026 S32 22395
+          x027 S32 26863
+          x028 S32 31332
+          x029 S32 35801
+          x030 S32   465
+          x031 S32  4934
+          x032 S32  9402
+          x033 S32 13871
+          x034 S32 22395
+          x035 S32 26863
+          x036 S32 31332
+          x037 S32 35801
+          x038 S32   465
+          x039 S32  4934
+          x040 S32  9402
+          x041 S32 13871
+          x042 S32 22395
+          x043 S32 26863
+          x044 S32 31332
+          x045 S32 35801
+          x046 S32   465
+          x047 S32  4934
+          x048 S32  9402
+          x049 S32 13871
+          x050 S32 22395
+          x051 S32 26863
+          x052 S32 31332
+          x053 S32 35801
+          x054 S32   465
+          x055 S32  4934
+          x056 S32  9402
+          x057 S32 13871
+          x058 S32 22395
+          x059 S32 26863
+          x060 S32 31332
+          x061 S32 35801
+          x062 S32   465
+          x063 S32  4934
+          x064 S32  9402
+          x065 S32 13871
+          x066 S32 22395
+          x067 S32 26863
+          x068 S32 31332
+          x069 S32 35801
+          x070 S32   465
+          x071 S32  4934
+          x072 S32  9402
+          x073 S32 13871
+          x074 S32 22395
+          x075 S32 26863
+          x076 S32 31332
+          x077 S32 35801
+          x078 S32  4934
+          x079 S32  9402
+          x080 S32 13871
+          x081 S32 22395
+          x082 S32 26863
+          x083 S32 31332
+          x084 S32  4934
+          x085 S32  9402
+          x086 S32 13871
+          x087 S32 18340
+          x088 S32 22808
+          x089 S32 27277
+          x090 S32  4934
+          x091 S32  9402
+          x092 S32 13871
+          x093 S32 18340
+          x094 S32 22808
+          x095 S32 27277
+          x096 S32  9402
+          x097 S32 13871
+          x098 S32 18340
+          x099 S32 22808
+          x100 S32   465 # was 4934 (rotated, false location)
+          x101 S32 35801 # was 31332
+          x102 S32   465 # was 29691 (rotated, false location)
+          x103 S32 35801 # was 29691
+          x104 S32 13457
+          x105 S32 26863
+          x106 S32  8989
+          x107 S32 31332
+          x108 S32  4934
+          x109 S32 27277
+          x110 S32  9402
+          x111 S32 22808
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+          x000 S32 -1
+          x001 S32 -1
+          x002 S32 -1
+          x003 S32 -1
+          x004 S32 -1
+          x005 S32 -1
+          x006 S32 -1
+          x007 S32 -1
+          x008 S32 -1
+          x009 S32 -1
+          x010 S32 -1
+          x011 S32 -1
+          x012 S32 -1
+          x013 S32 -1
+          x014 S32 -1
+          x015 S32 -1
+          x016 S32 +1
+          x017 S32 +1
+          x018 S32 +1
+          x019 S32 -1
+          x020 S32 -1
+          x021 S32 -1
+          x022 S32 +1
+          x023 S32 +1
+          x024 S32 +1
+          x025 S32 +1
+          x026 S32 -1
+          x027 S32 -1
+          x028 S32 -1
+          x029 S32 -1
+          x030 S32 +1
+          x031 S32 +1
+          x032 S32 +1
+          x033 S32 +1
+          x034 S32 -1
+          x035 S32 -1
+          x036 S32 -1
+          x037 S32 -1
+          x038 S32 +1
+          x039 S32 +1
+          x040 S32 +1
+          x041 S32 +1
+          x042 S32 -1
+          x043 S32 -1
+          x044 S32 -1
+          x045 S32 -1
+          x046 S32 +1
+          x047 S32 +1
+          x048 S32 +1
+          x049 S32 +1
+          x050 S32 -1
+          x051 S32 -1
+          x052 S32 -1
+          x053 S32 -1
+          x054 S32 +1
+          x055 S32 +1
+          x056 S32 +1
+          x057 S32 +1
+          x058 S32 -1
+          x059 S32 -1
+          x060 S32 -1
+          x061 S32 -1
+          x062 S32 +1
+          x063 S32 +1
+          x064 S32 +1
+          x065 S32 +1
+          x066 S32 -1
+          x067 S32 -1
+          x068 S32 -1
+          x069 S32 -1
+          x070 S32 +1
+          x071 S32 +1
+          x072 S32 +1
+          x073 S32 +1
+          x074 S32 -1
+          x075 S32 -1
+          x076 S32 -1
+          x077 S32 -1
+          x078 S32 +1
+          x079 S32 +1
+          x080 S32 +1
+          x081 S32 -1
+          x082 S32 -1
+          x083 S32 -1
+          x084 S32 +1
+          x085 S32 +1
+          x086 S32 +1
+          x087 S32 +1
+          x088 S32 +1
+          x089 S32 +1
+          x090 S32 +1
+          x091 S32 +1
+          x092 S32 +1
+          x093 S32 +1
+          x094 S32 +1
+          x095 S32 +1
+          x096 S32 +1
+          x097 S32 +1
+          x098 S32 +1
+          x099 S32 +1
+          x100 S32 +1
+          x101 S32 -1
+          x102 S32 +1
+          x103 S32 -1
+          x104 S32 -1
+          x105 S32 -1
+          x106 S32 -1
+          x107 S32 -1
+          x108 S32 +1
+          x109 S32 +1
+          x110 S32 +1
+          x111 S32 +1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+          x000 S32 -1
+          x001 S32 -1
+          x002 S32 -1
+          x003 S32 -1
+          x004 S32 -1
+          x005 S32 -1
+          x006 S32 -1
+          x007 S32 -1
+          x008 S32 -1
+          x009 S32 -1
+          x010 S32 -1
+          x011 S32 -1
+          x012 S32 -1
+          x013 S32 -1
+          x014 S32 -1
+          x015 S32 -1
+          x016 S32 +1
+          x017 S32 +1
+          x018 S32 +1
+          x019 S32 -1
+          x020 S32 -1
+          x021 S32 -1
+          x022 S32 +1
+          x023 S32 +1
+          x024 S32 +1
+          x025 S32 +1
+          x026 S32 -1
+          x027 S32 -1
+          x028 S32 -1
+          x029 S32 -1
+          x030 S32 +1
+          x031 S32 +1
+          x032 S32 +1
+          x033 S32 +1
+          x034 S32 -1
+          x035 S32 -1
+          x036 S32 -1
+          x037 S32 -1
+          x038 S32 +1
+          x039 S32 +1
+          x040 S32 +1
+          x041 S32 +1
+          x042 S32 -1
+          x043 S32 -1
+          x044 S32 -1
+          x045 S32 -1
+          x046 S32 +1
+          x047 S32 +1
+          x048 S32 +1
+          x049 S32 +1
+          x050 S32 -1
+          x051 S32 -1
+          x052 S32 -1
+          x053 S32 -1
+          x054 S32 +1
+          x055 S32 +1
+          x056 S32 +1
+          x057 S32 +1
+          x058 S32 -1
+          x059 S32 -1
+          x060 S32 -1
+          x061 S32 -1
+          x062 S32 +1
+          x063 S32 +1
+          x064 S32 +1
+          x065 S32 +1
+          x066 S32 -1
+          x067 S32 -1
+          x068 S32 -1
+          x069 S32 -1
+          x070 S32 +1
+          x071 S32 +1
+          x072 S32 +1
+          x073 S32 +1
+          x074 S32 -1
+          x075 S32 -1
+          x076 S32 -1
+          x077 S32 -1
+          x078 S32 +1
+          x079 S32 +1
+          x080 S32 +1
+          x081 S32 -1
+          x082 S32 -1
+          x083 S32 -1
+          x084 S32 +1
+          x085 S32 +1
+          x086 S32 +1
+          x087 S32 +1
+          x088 S32 +1
+          x089 S32 +1
+          x090 S32 +1
+          x091 S32 +1
+          x092 S32 +1
+          x093 S32 +1
+          x094 S32 +1
+          x095 S32 +1
+          x096 S32 +1
+          x097 S32 +1
+          x098 S32 +1
+          x099 S32 +1
+          x100 S32 +1
+          x101 S32 -1
+          x102 S32 +1
+          x103 S32 -1
+          x104 S32 -1
+          x105 S32 -1
+          x106 S32 -1
+          x107 S32 -1
+          x108 S32 +1
+          x109 S32 +1
+          x110 S32 +1
+          x111 S32 +1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+	FPA.LONGITUDE	STR	HOURS
+	FPA.LATITUDE	STR	DEGREES
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/hsc/format_raw.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/format_raw.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/format_raw.config	(revision 42661)
@@ -0,0 +1,741 @@
+# The split MecaCam data is stored as single files for each chip, each a simple fits image
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	Subaru
+	INSTRUME	STR	Hyper Suprime-Cam
+	NAXIS           S32     2 # with 2 this is an image (with 0, this is an output smf)
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# The extensions represent chips
+	FPA.OBS		STR	EXP-ID	# A PHU keyword for unique identifier
+	CONTENT		STR	DET-ID	# Key to the CONTENTS menu (use DET-ID or T_CCDSN?)
+	CONTENT.RULE	STR	{CHIP.ID} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+    # Content name, chipType
+      0 STR      x000:S10892
+      1 STR      x001:S10892
+      2 STR      x002:S10892
+      3 STR      x003:S10892
+      4 STR      x004:S10892
+      5 STR      x005:S10892
+      6 STR      x006:S10892
+      7 STR      x007:S10892
+      8 STR      x008:S10892
+      9 STR      x009:S10892
+     10 STR      x010:S10892
+     11 STR      x011:S10892
+     12 STR      x012:S10892
+     13 STR      x013:S10892
+     14 STR      x014:S10892
+     15 STR      x015:S10892
+     16 STR      x016:S10892
+     17 STR      x017:S10892
+     18 STR      x018:S10892
+     19 STR      x019:S10892
+     20 STR      x020:S10892
+     21 STR      x021:S10892
+     22 STR      x022:S10892
+     23 STR      x023:S10892
+     24 STR      x024:S10892
+     25 STR      x025:S10892
+     26 STR      x026:S10892
+     27 STR      x027:S10892
+     28 STR      x028:S10892
+     29 STR      x029:S10892
+     30 STR      x030:S10892
+     31 STR      x031:S10892
+     32 STR      x032:S10892
+     33 STR      x033:S10892
+     34 STR      x034:S10892
+     35 STR      x035:S10892
+     36 STR      x036:S10892
+     37 STR      x037:S10892
+     38 STR      x038:S10892
+     39 STR      x039:S10892
+     40 STR      x040:S10892
+     41 STR      x041:S10892
+     42 STR      x042:S10892
+     43 STR      x043:S10892
+     44 STR      x044:S10892
+     45 STR      x045:S10892
+     46 STR      x046:S10892
+     47 STR      x047:S10892
+     48 STR      x048:S10892
+     49 STR      x049:S10892
+     50 STR      x050:S10892
+     51 STR      x051:S10892
+     52 STR      x052:S10892
+     53 STR      x053:S10892
+     54 STR      x054:S10892
+     55 STR      x055:S10892
+     56 STR      x056:S10892
+     57 STR      x057:S10892
+     58 STR      x058:S10892
+     59 STR      x059:S10892
+     60 STR      x060:S10892
+     61 STR      x061:S10892
+     62 STR      x062:S10892
+     63 STR      x063:S10892
+     64 STR      x064:S10892
+     65 STR      x065:S10892
+     66 STR      x066:S10892
+     67 STR      x067:S10892
+     68 STR      x068:S10892
+     69 STR      x069:S10892
+     70 STR      x070:S10892
+     71 STR      x071:S10892
+     72 STR      x072:S10892
+     73 STR      x073:S10892
+     74 STR      x074:S10892
+     75 STR      x075:S10892
+     76 STR      x076:S10892
+     77 STR      x077:S10892
+     78 STR      x078:S10892
+     79 STR      x079:S10892
+     80 STR      x080:S10892
+     81 STR      x081:S10892
+     82 STR      x082:S10892
+     83 STR      x083:S10892
+     84 STR      x084:S10892
+     85 STR      x085:S10892
+     86 STR      x086:S10892
+     87 STR      x087:S10892
+     88 STR      x088:S10892
+     89 STR      x089:S10892
+     90 STR      x090:S10892
+     91 STR      x091:S10892
+     92 STR      x092:S10892
+     93 STR      x093:S10892
+     94 STR      x094:S10892
+     95 STR      x095:S10892
+     96 STR      x096:S10892
+     97 STR      x097:S10892
+     98 STR      x098:S10892
+     99 STR      x099:S10892
+    100 STR      x100:S10892
+    101 STR      x101:S10892
+    102 STR      x102:S10892
+    103 STR      x103:S10892
+    104 STR      x104:S10892
+    105 STR      x105:S10892
+    106 STR      x106:S10892
+    107 STR      x107:S10892
+    108 STR      x108:S10892
+    109 STR      x109:S10892
+    110 STR      x110:S10892
+    111 STR      x111:S10892
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	S10892	STR	CH1:channel_1 CH2:channel_2 CH3:channel_3 CH4:channel_4
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts for this type
+	channel_1	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[521:536,50:4225]
+		CELL.TRIMSEC		STR	[9:520,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN1
+		CELL.X0			S32	0
+		CELL.Y0			S32	0
+	END
+	channel_2	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[537:552,50:4225]
+		CELL.TRIMSEC		STR	[553:1064,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN2
+		CELL.X0			S32	512
+		CELL.Y0			S32	0
+	END
+	channel_3	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1593:1608,50:4225]
+		CELL.TRIMSEC		STR	[1081:1592,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN3
+		CELL.X0			S32	1024
+		CELL.Y0			S32	0
+	END
+	channel_4	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1609:1624,50:4225]
+		CELL.TRIMSEC		STR	[1625:2136,50:4225]
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	T_GAIN4
+		CELL.X0			S32	1536
+		CELL.Y0			S32	0
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.OBS         STR     EXP-ID
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTER      STR     FILTER01
+        FPA.FILTERID    STR     FILTER01
+#       FPA.POSANGLE    STR     INR-STR
+        FPA.POSANGLE    STR     INST-PA
+        FPA.ROTANGLE    STR     INST-PA
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADESYS
+	FPA.OBSTYPE	STR	DATA-TYP
+	FPA.OBJECT	STR	OBJECT
+        FPA.OBS.MODE    STR     OBS-MOD
+#       FPA.COMMENT     STR     CMMTOBS
+	FPA.FOCUS	STR	FOC-VAL
+	FPA.TIME	STR	MJD-STR
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALTITUDE
+	FPA.AZ		STR	AZIMUTH
+	FPA.TEMP	STR	DET-TMP
+	FPA.EXPOSURE	STR	EXPTIME
+        FPA.M2X         STR     M2-POS1
+        FPA.M2Y         STR     M2-POS2
+        FPA.M2Z         STR     M2-POS3
+        FPA.M2TIP       STR     M2-ANG1
+        FPA.M2TILT      STR     M2-ANG2
+        FPA.ENV.TEMP    STR     OUT-TMP
+        FPA.ENV.HUMID   STR     OUT-HUM
+        FPA.ENV.WIND    STR     OUT-WND
+#       FPA.ENV.DIR     STR     OUT-TMP
+        FPA.TELTEMP.TRUSS  STR  DOM-TMP # Mid truss temperatures (C
+
+	CHIP.TEMP	STR	DET-TMP
+	CHIP.ID		STR	DET-ID
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     EXPTIME
+	CELL.TIME	STR	MJD-STR
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     BIN-FCT1
+        CELL.YBIN       STR     BIN-FCT2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	SUBARU
+	FPA.INSTRUMENT		STR	HYPERSUPRIME
+	FPA.DETECTOR	        STR	HSC
+        FPA.LONGITUDE   	STR     10:25:01.417 # XXX haleakla
+        FPA.LATITUDE    	STR     20:42:25.558 # XXX haleakla
+        FPA.ELEVATION   	F32     3048.0       # altitude in meters
+#	FPA.TIMESYS	        STR	TAI
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4096
+	CELL.XSIZE		S32	512
+	CELL.YSIZE		S32	4176		# XXX: or 4096?
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+        CELL.SATURATION         S32     60000
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.READNOISE          F32     1.0		# XXX: set based on bias stats
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1		# XXX may need to flip some of the cells
+	CELL.YPARITY		S32	1
+#	CELL.X0			S32	0
+#	CELL.Y0			S32	0
+#	CELL.TIMESYS	        STR	TAI
+	CHIP.XPARITY		S32	1		# XXX may need to flip some of the cells
+	CHIP.YPARITY		S32	1
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+          x000 S32  4165
+          x001 S32  4165
+          x002 S32  4165
+          x003 S32  4165
+          x004 S32  6288
+          x005 S32  6288
+          x006 S32  6288
+          x007 S32  6288
+          x008 S32  6288
+          x009 S32  6288
+          x010 S32  8411
+          x011 S32  8411
+          x012 S32  8411
+          x013 S32  8411
+          x014 S32  8411
+          x015 S32  8411
+          x016 S32  8484
+          x017 S32  8484
+          x018 S32  8484
+          x019 S32 10533
+          x020 S32 10533
+          x021 S32 10533
+          x022 S32 10607
+          x023 S32 10607
+          x024 S32 10607
+          x025 S32 10607
+          x026 S32 12656
+          x027 S32 12656
+          x028 S32 12656
+          x029 S32 12656
+          x030 S32 12730
+          x031 S32 12730
+          x032 S32 12730
+          x033 S32 12730
+          x034 S32 14779
+          x035 S32 14779
+          x036 S32 14779
+          x037 S32 14779
+          x038 S32 14852
+          x039 S32 14852
+          x040 S32 14852
+          x041 S32 14852
+          x042 S32 16901
+          x043 S32 16901
+          x044 S32 16901
+          x045 S32 16901
+          x046 S32 16975
+          x047 S32 16975
+          x048 S32 16975
+          x049 S32 16975
+          x050 S32 19024
+          x051 S32 19024
+          x052 S32 19024
+          x053 S32 19024
+          x054 S32 19098
+          x055 S32 19098
+          x056 S32 19098
+          x057 S32 19098
+          x058 S32 21147
+          x059 S32 21147
+          x060 S32 21147
+          x061 S32 21147
+          x062 S32 21220
+          x063 S32 21220
+          x064 S32 21220
+          x065 S32 21220
+          x066 S32 23269
+          x067 S32 23269
+          x068 S32 23269
+          x069 S32 23269
+          x070 S32 23343
+          x071 S32 23343
+          x072 S32 23343
+          x073 S32 23343
+          x074 S32 25392
+          x075 S32 25392
+          x076 S32 25392
+          x077 S32 25392
+          x078 S32 25466
+          x079 S32 25466
+          x080 S32 25466
+          x081 S32 27515
+          x082 S32 27515
+          x083 S32 27515
+          x084 S32 27588
+          x085 S32 27588
+          x086 S32 27588
+          x087 S32 27588
+          x088 S32 27588
+          x089 S32 27588
+          x090 S32 29711
+          x091 S32 29711
+          x092 S32 29711
+          x093 S32 29711
+          x094 S32 29711
+          x095 S32 29711
+          x096 S32 31834
+          x097 S32 31834
+          x098 S32 31834
+          x099 S32 31834
+          x100 S32  8484
+          x101 S32 10533
+          x102 S32 25466 # was 33357
+          x103 S32 27515 # was 4424
+          x104 S32  2043
+          x105 S32  2043
+          x106 S32  4165
+          x107 S32  4165
+          x108 S32 31834
+          x109 S32 31834
+          x110 S32 33956
+          x111 S32 33956
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+          x000 S32 13457
+          x001 S32 17926
+          x002 S32 22395
+          x003 S32 26863
+          x004 S32  8989
+          x005 S32 13457
+          x006 S32 17926
+          x007 S32 22395
+          x008 S32 26863
+          x009 S32 31332
+          x010 S32  8989
+          x011 S32 13457
+          x012 S32 17926
+          x013 S32 22395
+          x014 S32 26863
+          x015 S32 31332
+          x016 S32  4934
+          x017 S32  9402
+          x018 S32 13871
+          x019 S32 22395
+          x020 S32 26863
+          x021 S32 31332
+          x022 S32   465
+          x023 S32  4934
+          x024 S32  9402
+          x025 S32 13871
+          x026 S32 22395
+          x027 S32 26863
+          x028 S32 31332
+          x029 S32 35801
+          x030 S32   465
+          x031 S32  4934
+          x032 S32  9402
+          x033 S32 13871
+          x034 S32 22395
+          x035 S32 26863
+          x036 S32 31332
+          x037 S32 35801
+          x038 S32   465
+          x039 S32  4934
+          x040 S32  9402
+          x041 S32 13871
+          x042 S32 22395
+          x043 S32 26863
+          x044 S32 31332
+          x045 S32 35801
+          x046 S32   465
+          x047 S32  4934
+          x048 S32  9402
+          x049 S32 13871
+          x050 S32 22395
+          x051 S32 26863
+          x052 S32 31332
+          x053 S32 35801
+          x054 S32   465
+          x055 S32  4934
+          x056 S32  9402
+          x057 S32 13871
+          x058 S32 22395
+          x059 S32 26863
+          x060 S32 31332
+          x061 S32 35801
+          x062 S32   465
+          x063 S32  4934
+          x064 S32  9402
+          x065 S32 13871
+          x066 S32 22395
+          x067 S32 26863
+          x068 S32 31332
+          x069 S32 35801
+          x070 S32   465
+          x071 S32  4934
+          x072 S32  9402
+          x073 S32 13871
+          x074 S32 22395
+          x075 S32 26863
+          x076 S32 31332
+          x077 S32 35801
+          x078 S32  4934
+          x079 S32  9402
+          x080 S32 13871
+          x081 S32 22395
+          x082 S32 26863
+          x083 S32 31332
+          x084 S32  4934
+          x085 S32  9402
+          x086 S32 13871
+          x087 S32 18340
+          x088 S32 22808
+          x089 S32 27277
+          x090 S32  4934
+          x091 S32  9402
+          x092 S32 13871
+          x093 S32 18340
+          x094 S32 22808
+          x095 S32 27277
+          x096 S32  9402
+          x097 S32 13871
+          x098 S32 18340
+          x099 S32 22808
+          x100 S32   465 # was 4934 (rotated, false location)
+          x101 S32 35801 # was 31332
+          x102 S32   465 # was 29691 (rotated, false location)
+          x103 S32 35801 # was 29691
+          x104 S32 13457
+          x105 S32 26863
+          x106 S32  8989
+          x107 S32 31332
+          x108 S32  4934
+          x109 S32 27277
+          x110 S32  9402
+          x111 S32 22808
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+          x000 S32 -1
+          x001 S32 -1
+          x002 S32 -1
+          x003 S32 -1
+          x004 S32 -1
+          x005 S32 -1
+          x006 S32 -1
+          x007 S32 -1
+          x008 S32 -1
+          x009 S32 -1
+          x010 S32 -1
+          x011 S32 -1
+          x012 S32 -1
+          x013 S32 -1
+          x014 S32 -1
+          x015 S32 -1
+          x016 S32 +1
+          x017 S32 +1
+          x018 S32 +1
+          x019 S32 -1
+          x020 S32 -1
+          x021 S32 -1
+          x022 S32 +1
+          x023 S32 +1
+          x024 S32 +1
+          x025 S32 +1
+          x026 S32 -1
+          x027 S32 -1
+          x028 S32 -1
+          x029 S32 -1
+          x030 S32 +1
+          x031 S32 +1
+          x032 S32 +1
+          x033 S32 +1
+          x034 S32 -1
+          x035 S32 -1
+          x036 S32 -1
+          x037 S32 -1
+          x038 S32 +1
+          x039 S32 +1
+          x040 S32 +1
+          x041 S32 +1
+          x042 S32 -1
+          x043 S32 -1
+          x044 S32 -1
+          x045 S32 -1
+          x046 S32 +1
+          x047 S32 +1
+          x048 S32 +1
+          x049 S32 +1
+          x050 S32 -1
+          x051 S32 -1
+          x052 S32 -1
+          x053 S32 -1
+          x054 S32 +1
+          x055 S32 +1
+          x056 S32 +1
+          x057 S32 +1
+          x058 S32 -1
+          x059 S32 -1
+          x060 S32 -1
+          x061 S32 -1
+          x062 S32 +1
+          x063 S32 +1
+          x064 S32 +1
+          x065 S32 +1
+          x066 S32 -1
+          x067 S32 -1
+          x068 S32 -1
+          x069 S32 -1
+          x070 S32 +1
+          x071 S32 +1
+          x072 S32 +1
+          x073 S32 +1
+          x074 S32 -1
+          x075 S32 -1
+          x076 S32 -1
+          x077 S32 -1
+          x078 S32 +1
+          x079 S32 +1
+          x080 S32 +1
+          x081 S32 -1
+          x082 S32 -1
+          x083 S32 -1
+          x084 S32 +1
+          x085 S32 +1
+          x086 S32 +1
+          x087 S32 +1
+          x088 S32 +1
+          x089 S32 +1
+          x090 S32 +1
+          x091 S32 +1
+          x092 S32 +1
+          x093 S32 +1
+          x094 S32 +1
+          x095 S32 +1
+          x096 S32 +1
+          x097 S32 +1
+          x098 S32 +1
+          x099 S32 +1
+          x100 S32 +1
+          x101 S32 -1
+          x102 S32 +1
+          x103 S32 -1
+          x104 S32 -1
+          x105 S32 -1
+          x106 S32 -1
+          x107 S32 -1
+          x108 S32 +1
+          x109 S32 +1
+          x110 S32 +1
+          x111 S32 +1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+          x000 S32 -1
+          x001 S32 -1
+          x002 S32 -1
+          x003 S32 -1
+          x004 S32 -1
+          x005 S32 -1
+          x006 S32 -1
+          x007 S32 -1
+          x008 S32 -1
+          x009 S32 -1
+          x010 S32 -1
+          x011 S32 -1
+          x012 S32 -1
+          x013 S32 -1
+          x014 S32 -1
+          x015 S32 -1
+          x016 S32 +1
+          x017 S32 +1
+          x018 S32 +1
+          x019 S32 -1
+          x020 S32 -1
+          x021 S32 -1
+          x022 S32 +1
+          x023 S32 +1
+          x024 S32 +1
+          x025 S32 +1
+          x026 S32 -1
+          x027 S32 -1
+          x028 S32 -1
+          x029 S32 -1
+          x030 S32 +1
+          x031 S32 +1
+          x032 S32 +1
+          x033 S32 +1
+          x034 S32 -1
+          x035 S32 -1
+          x036 S32 -1
+          x037 S32 -1
+          x038 S32 +1
+          x039 S32 +1
+          x040 S32 +1
+          x041 S32 +1
+          x042 S32 -1
+          x043 S32 -1
+          x044 S32 -1
+          x045 S32 -1
+          x046 S32 +1
+          x047 S32 +1
+          x048 S32 +1
+          x049 S32 +1
+          x050 S32 -1
+          x051 S32 -1
+          x052 S32 -1
+          x053 S32 -1
+          x054 S32 +1
+          x055 S32 +1
+          x056 S32 +1
+          x057 S32 +1
+          x058 S32 -1
+          x059 S32 -1
+          x060 S32 -1
+          x061 S32 -1
+          x062 S32 +1
+          x063 S32 +1
+          x064 S32 +1
+          x065 S32 +1
+          x066 S32 -1
+          x067 S32 -1
+          x068 S32 -1
+          x069 S32 -1
+          x070 S32 +1
+          x071 S32 +1
+          x072 S32 +1
+          x073 S32 +1
+          x074 S32 -1
+          x075 S32 -1
+          x076 S32 -1
+          x077 S32 -1
+          x078 S32 +1
+          x079 S32 +1
+          x080 S32 +1
+          x081 S32 -1
+          x082 S32 -1
+          x083 S32 -1
+          x084 S32 +1
+          x085 S32 +1
+          x086 S32 +1
+          x087 S32 +1
+          x088 S32 +1
+          x089 S32 +1
+          x090 S32 +1
+          x091 S32 +1
+          x092 S32 +1
+          x093 S32 +1
+          x094 S32 +1
+          x095 S32 +1
+          x096 S32 +1
+          x097 S32 +1
+          x098 S32 +1
+          x099 S32 +1
+          x100 S32 +1
+          x101 S32 -1
+          x102 S32 +1
+          x103 S32 -1
+          x104 S32 -1
+          x105 S32 -1
+          x106 S32 -1
+          x107 S32 -1
+          x108 S32 +1
+          x109 S32 +1
+          x110 S32 +1
+          x111 S32 +1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+	FPA.LONGITUDE	STR	HOURS
+	FPA.LATITUDE	STR	DEGREES
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/hsc/ghost.model.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/ghost.model.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/ghost.model.mdc	(revision 42661)
@@ -0,0 +1,78 @@
+# The R_TERMS polynomials have been converted from um units to mm units to be consistent with C_TERMS polynomials.
+
+GHOST.MODEL.HSC	MULTI
+  GHOST.MODEL.HSC	METADATA
+    FILTER 	STR	g
+    @C_TERMS	F32	3.86129097e-04  -4.56480396e+02  5.94514717e+02  -8.20984903e+03  4.35455723e+04  -1.19834803e+05  1.60789252e+05  -8.66581086e+04    # a comment
+    @R_TERMS	F32	2.80257250e+00  -1.14163334e+01  6.25378363e+02  -6.59305008e+03  3.21678893e+04  -7.68658356e+04  8.71449290e+04  -3.66203193e+04  # a comment
+    LIMIT	F32	12.0
+    SCALE       F32     3.49794238e-06
+# WRONG ORDER
+#    @C_TERMS	F32	-8.66581086e+04  1.60789252e+05  -1.19834803e+05  4.35455723e+04  -8.20984903e+03  5.94514717e+02  -4.56480396e+02  3.86129097e-04
+#    @R_TERMS	F32	-3.66203193e+04  8.71449290e+04  -7.68658356e+04  3.21678893e+04  -6.59305008e+03  6.25378363e+02  -1.14163334e+01  2.80257250e+00
+  END
+  GHOST.MODEL.HSC	METADATA
+    FILTER 	STR	r
+    @C_TERMS	F32	1.10217740e-03  -4.13994264e+02  -1.08162329e+02  -1.75333116e+02  -1.44358813e+03  7.03878935e+03  -1.55470840e+04  1.05167578e+04  # a comment
+    @R_TERMS	F32	7.84632263e+00  -1.34007061e-02  9.57272709e+01   -9.45421731e+02   5.64254906e+03  -1.97396910e+04  3.55382290e+04  -2.46004825e+04 # a comment
+    LIMIT	F32	11.5
+    SCALE       F32     3.49794238e-06
+    # @C_TERMS for original r 8.14947896e+03  -1.24163720e+04  5.41143508e+03  -1.02024286e+03  -2.39667209e+02  -1.00805716e+02  -4.16757016e+02  -1.48799186e-03
+    # @R_TERMS for original r -2.34342573e+07  3.47643396e+07  -1.98155551e+07  5.75428423e+06  -9.54233470e+05  9.14792638e+04  1.45742667e+03  6.96530721e+03
+# WRONG ORDER
+#    @C_TERMS	F32	1.05167578e+04  -1.55470840e+04  7.03878935e+03  -1.44358813e+03  -1.75333116e+02  -1.08162329e+02  -4.13994264e+02  1.10217740e-03
+#    @R_TERMS	F32	-2.46004825e+04  3.55382290e+04  -1.97396910e+04  5.64254906e+03  -9.45421731e+02   9.57272709e+01  -1.34007061e-02  7.84632263e+00
+  END
+  GHOST.MODEL.HSC	METADATA
+    FILTER 	STR	i
+    @C_TERMS	F32	-3.95203567e-03  -4.55641159e+02  5.73358984e+02  -8.75512267e+03  5.43205903e+04  -1.74052246e+05  2.70933733e+05  -1.66554502e+05  # a comment
+    @R_TERMS	F32	2.24351724e+00   -1.59383063e+01  8.56547254e+02  -1.09461298e+04  6.86646484e+04  -2.19342516e+05  3.46712176e+05  -2.15706075e+05  # a comment
+    LIMIT	F32	11.0
+    SCALE       F32     3.49794238e-06
+    # @C_TERMS for original i 7.09135701e+03  -1.08899009e+04  4.53311864e+03  -7.45070274e+02  -2.86196488e+02  -9.58537252e+01  -4.15997892e+02  -2.10038501e-03
+    # @R_TERMS for original i -2.65938293e+07  3.98815563e+07  -2.30650423e+07  6.77205238e+06  -1.11878753e+06  1.03127466e+05  1.44010771e+03  6.83384243e+03
+# WRONG ORDER
+#    @C_TERMS	F32	-1.66554502e+05  2.70933733e+05  -1.74052246e+05  5.43205903e+04  -8.75512267e+03  5.73358984e+02  -4.55641159e+02  -3.95203567e-03
+#    @R_TERMS	F32	-2.15706075e+05  3.46712176e+05  -2.19342516e+05  6.86646484e+04  -1.09461298e+04  8.56547254e+02  -1.59383063e+01   2.24351724e+00
+  END
+  GHOST.MODEL.HSC	METADATA
+    FILTER 	STR	z
+    @C_TERMS	F32	-1.79546522e-03  -4.13201008e+02  -1.08898155e+02  -1.51535018e+02  -1.51139264e+03   6.94362981e+03  -1.47396976e+04   9.59579373e+03  # a comment
+    @R_TERMS	F32	7.39449641e+00    7.28959803e-01   1.06569049e+02  -1.18036333e+03   7.42160510e+03  -2.62797780e+04   4.70124953e+04  -3.23514338e+04  # a comment
+    LIMIT	F32	11.0
+    SCALE       F32     3.49794238e-06
+# WRONG ORDER
+#    @C_TERMS	F32	9.59579373e+03  -1.47396976e+04  6.94362981e+03  -1.51139264e+03  -1.51535018e+02  -1.08898155e+02  -4.13201008e+02  -1.79546522e-03
+#    @R_TERMS	F32	-3.23514338e+04  4.70124953e+04  -2.62797780e+04  7.42160510e+03  -1.18036333e+03  1.06569049e+02  7.28959803e-01  7.39449641e+00
+  END
+  GHOST.MODEL.HSC	METADATA
+    FILTER 	STR	y
+    @C_TERMS	F32	-2.04774887e-03  -4.50571358e+02  3.73884700e+02  -6.38727141e+03  4.28067607e+04  -1.47306815e+05  2.42465240e+05  -1.56137979e+05  # a comment
+    @R_TERMS	F32	2.04967838e+00   -8.92675213e+00  6.03954493e+02  -7.97354793e+03  5.32635002e+04  -1.79071587e+05  2.94475198e+05  -1.88924528e+05  # a comment
+    LIMIT	F32	11.0
+    SCALE       F32     3.49794238e-06
+# WRONG ORDER
+#    @C_TERMS	F32	-1.56137979e+05  2.42465240e+05  -1.47306815e+05  4.28067607e+04  -6.38727141e+03  3.73884700e+02  -4.50571358e+02  -2.04774887e-03
+#    @R_TERMS	F32	-1.88924528e+05  2.94475198e+05  -1.79071587e+05  5.32635002e+04  -7.97354793e+03  6.03954493e+02  -8.92675213e+00  2.04967838e+00
+  END
+  GHOST.MODEL.HSC	METADATA
+    FILTER 	STR	NB816
+    @C_TERMS	F32	-3.52735759e-03  -4.54174618e+02  5.11013724e+02  -8.05597593e+03  5.11417991e+04  -1.67422366e+05  2.65225596e+05  -1.65501517e+05  # a comment
+    @R_TERMS	F32	2.17954931e+00   -1.39611991e+01  7.88077371e+02  -1.01750660e+04  6.49121728e+04  -2.10323885e+05  3.36261570e+05  -2.11111649e+05  # a comment
+    LIMIT	F32	11.0
+    SCALE       F32     3.49794238e-06
+# WRONG ORDER
+#    @C_TERMS	F32	-1.65501517e+05  2.65225596e+05  -1.67422366e+05  5.11417991e+04  -8.05597593e+03  5.11013724e+02  -4.54174618e+02  -3.52735759e-03
+#    @R_TERMS	F32	-2.11111649e+05  3.36261570e+05  -2.10323885e+05  6.49121728e+04  -1.01750660e+04  7.88077371e+02  -1.39611991e+01  2.17954931e+00
+  END
+  GHOST.MODEL.HSC	METADATA
+    FILTER 	STR	NB921
+    @C_TERMS	F32	-2.99761113e-03  -4.52301392e+02  4.49346634e+02  -7.38661211e+03  4.83455130e+04  -1.62550708e+05  2.63017929e+05  -1.66995347e+05  # a comment
+    @R_TERMS	F32	2.11290612e+00   -1.15228777e+01  7.02729746e+02  -9.20923423e+03  6.01493518e+04  -1.98625679e+05  3.22255104e+05  -2.04640222e+05  # a comment
+    LIMIT	F32	11.0
+    SCALE       F32     3.49794238e-06
+# WRONG ORDER
+#    @C_TERMS	F32	-1.66995347e+05  2.63017929e+05  -1.62550708e+05  4.83455130e+04  -7.38661211e+03  4.49346634e+02  -4.52301392e+02  -2.99761113e-03
+#    @R_TERMS	F32	-2.04640222e+05  3.22255104e+05  -1.98625679e+05  6.01493518e+04  -9.20923423e+03  7.02729746e+02  -1.15228777e+01  2.11290612e+00
+  END
+END
Index: /branches/eam_branches/ippconfig.20240412/hsc/mkchips
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/mkchips	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/mkchips	(revision 42661)
@@ -0,0 +1,4 @@
+kukui: ls biases/HSCA90264[01]??.fits | fields DET-ID CRVAL1 CRVAL2 CRPIX1 CRPIX2 CD1_1 CD1_2 CD2_1 CD2_2 | awk '($8 < 0.0){dx = 1}($8 > 0.0){dx = -1}{printf "x%03d S32 %+2d\n", $2, dx}' | sort -k 1 > chip.dx
+kukui: ls biases/HSCA90264[01]??.fits | fields DET-ID CRVAL1 CRVAL2 CRPIX1 CRPIX2 CD1_1 CD1_2 CD2_1 CD2_2 | awk '($8 < 0.0){dx = 1}($8 > 0.0){dx = -1}{printf "x%03d S32 %+2d\n", $2, dx}' | sort -k 1 > chip.dy
+kukui: ls biases/HSCA90264[01]??.fits | fields DET-ID CRVAL1 CRVAL2 CRPIX1 CRPIX2 CD1_1 CD1_2 CD2_1 CD2_2 | awk '($8 < 0.0){y0 = 18000-$6}($8 > 0.0){y0 = 18000+$6}{printf "x%03d S32 %5d\n", $2, y0}' | sort -k 1 > chip.y0
+kukui: ls biases/HSCA90264[01]??.fits | fields DET-ID CRVAL1 CRVAL2 CRPIX1 CRPIX2 CD1_1 CD1_2 CD2_1 CD2_2 | awk '($8 < 0.0){x0 = 18000-$5}($8 > 0.0){x0 = 18000+$5}{printf "x%03d S32 %5d\n", $2, x0}' | sort -k 1 > chip.x0
Index: /branches/eam_branches/ippconfig.20240412/hsc/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/ppImage.config	(revision 42661)
@@ -0,0 +1,154 @@
+
+# binned output image options
+BIN1.XBIN               S32      16
+BIN1.YBIN               S32      16
+BIN2.XBIN               S32     256
+BIN2.YBIN               S32     256
+
+# Normalization class
+NORM.CLASS              STR     CHIP             # How to find the per-class normalizations
+
+DETREND.CONSTRAINTS  METADATA
+  FLAT METADATA
+    DETTYPE STR FLAT
+    FILTER  STR FPA.FILTERID
+  END
+
+  FRINGE METADATA
+    FILTER  STR FPA.FILTERID
+  END
+END   
+
+FRINGE.FILTERS MULTI
+FRINGE.FILTERS STR HSC-Y
+
+# Standard chip processing
+CHIP	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    FALSE           # 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
+
+# No operation except rebinning and potential normalisation
+# used by the detrend normalization stage, the background should not be subtracted
+PPIMAGE_N          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    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?
+  BACKGROUND         BOOL    FALSE           # Subtract background?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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    TRUE            # 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?
+END
+
+# This is the processing recipe for fringes
+PPIMAGE_OBDSF       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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    TRUE            # Bias subtraction
+  DARK               BOOL    FALSE           # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # 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?
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_FLATMASK_PROCESS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    FLAT METADATA
+      DETTYPE STR FLAT
+      FILTER  STR FPA.FILTERID
+    END
+  END   
+END
+
Index: /branches/eam_branches/ippconfig.20240412/hsc/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/ppMerge.config	(revision 42661)
@@ -0,0 +1,23 @@
+
+FRINGE.NUM              S32     6250     # number of fringe regions per cell
+FRINGE.SIZE             S32     5        # Half-size of fringe regions
+FRINGE.XSMOOTH          S32     3        # Number of smoothing regions per cell in x
+FRINGE.YSMOOTH          S32     3        # Number of smoothing regions per cell in y
+FRINGE.SMOOTH           BOOL    T        # Smooth the output image?
+FRINGE.SMOOTH.SIGMA     F32     2.0      # Sigma of smoothing Gaussian
+
+
+# Bias combination --- don't want min/max rejection
+PPMERGE_BIAS    METADATA
+        REJ             F32     3.0             # Rejection threshold (sigma)
+        ITER            S32     2               # Number of rejection iterations
+        FRACHIGH        F32     0.0             # Fraction of high pixels to reject immediately
+        FRACLOW         F32     0.0             # Fraction of low pixels to reject immediately
+        VARIANCES       BOOL    FALSE           # Use image variances?
+#       COMBINE         STR     CLIPPED         # Statistic to use for combination: 
+        COMBINE         STR     SAMPLE_MEDIAN   # Statistic to use for combination
+        MEAN            STR     SAMPLE_MEDIAN   # Statistic to use to measure the mean
+        STDEV           STR     ROBUST_STDEV    # Statistic to use to measure the stdev
+END
+
+
Index: /branches/eam_branches/ippconfig.20240412/hsc/ppStack.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/ppStack.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/ppStack.config	(revision 42661)
@@ -0,0 +1,48 @@
+PSF.MODEL       STR     PS_MODEL_QGAUSS # Model for PSF generation
+BACKGROUND.MODEL BOOL   F
+
+ZP.AIRMASS      METADATA                # Airmass terms by filter
+        HSC-g       F32     0.0
+        HSC-r       F32     0.0
+	HSC-r2	    F32	    0.0
+	HSC-i	    F32	    0.0
+	HSC-i2	    F32	    0.0
+	HSC-z	    F32	    0.0
+	HSC-Y	    F32	    0.0
+	NB0921	    F32	    0.0
+	NB0816	    F32	    0.0
+END
+
+ZP.TARGET       METADATA                # Target zero point by filter
+        HSC-g       F32     30.0
+        HSC-r       F32     30.0
+	HSC-r2	    F32	    30.0
+	HSC-i	    F32	    30.0
+	HSC-i2	    F32	    30.0
+	HSC-z	    F32	    30.0
+	HSC-Y	    F32	    30.0
+	NB0921	    F32	    30.0
+	NB0816	    F32	    30.0
+END
+
+STACK_DEEP    METADATA                  # N>>20 inputs, typically MD fields
+    OUTPUT.NOCOMP           BOOL  TRUE
+    OUTPUT.LOGFLUX          BOOL  FALSE
+#    OUTPUT.REPLICATE        BOOL  TRUE
+    PSF.INPUT.MAX           F32   10.0
+    PSF.INPUT.CLIP.NSIGMA   F32   1.5
+    PSF.INPUT.THRESH        F32   5.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+END
+
+STACK_THREEPI  METADATA
+    OUTPUT.NOCOMP           BOOL  FALSE
+    OUTPUT.LOGFLUX          BOOL  TRUE
+    PSF.INPUT.MAX           F32   10.0  # input cut more restrictive now 12->10 pix, limit target PSF in convolved stacks 
+    PSF.INPUT.CLIP.NSIGMA   F32   1.5   # additional cut if majority of inputs much smaller than INPUT.MAX
+    PSF.INPUT.THRESH        F32   10.0
+    PSF.INPUT.ASYMMETRY     F32   0.2
+    PSF.TARGET.AS.MAX       BOOL  TRUE
+   MATCH.REJ        F32    4.0
+   SAFE          BOOL   F
+END
Index: /branches/eam_branches/ippconfig.20240412/hsc/ppStats.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/ppStats.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/ppStats.config	(revision 42661)
@@ -0,0 +1,1 @@
+
Index: /branches/eam_branches/ippconfig.20240412/hsc/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/psastro.config	(revision 42661)
@@ -0,0 +1,437 @@
+
+# with the external model, this has no effect (it is ignored)
+# XXX not quite true: this is used by the ghost & glint model
+PSASTRO.PIXEL.SCALE    F32     1.0
+
+# these values are in FP coordinates
+# these are appropriate for hsc.20200221.asm (1 FP pixel = 1 chip pixel)
+PSASTRO.GRID.OFFSET         F32 100.
+PSASTRO.GRID.SCALE          F32 5.
+PSASTRO.TWEAK.RANGE         F32 5.
+PSASTRO.REFSTAR.CLUMP.SCALE S32 10
+
+# these are appropriate for hsc.20161020.asm (13.4 FP pixel = 1 chip pixels)
+# PSASTRO.GRID.OFFSET         F32 1000.
+# PSASTRO.GRID.SCALE          F32 50.
+# PSASTRO.TWEAK.RANGE         F32 10
+# PSASTRO.REFSTAR.CLUMP.SCALE S32 150
+
+PSASTRO.SAVE.REFMATCH         BOOL     T  # save refstars in a separate FITS table
+PSASTRO.SAVE.REFSTARS         BOOL     F  # save refstars in a separate FITS file (broken!)
+
+#PSASTRO.CATDIR                STR      PS1.REF.20140713
+PSASTRO.CATDIR 		       STR     PS1.REF.20170919
+DVO.GETSTAR                   STR      getstar
+DVO.GETSTAR.OUTFORMAT         STR      PS1_DEV_0
+DVO.GETSTAR.PHOTCODE          STR      i
+
+## these were allowing much too dense of a reference catalog
+DVO.GETSTAR.MAX.RHO           F32      30000.0
+DVO.GETSTAR.MIN.MAG           F32      15.0
+DVO.GETSTAR.MIN.MAG.INST      F32     -15.0
+
+PSASTRO.IGNORE         STR    CRLIMIT,SATURATED,DEFECT,SATSTAR,BLEND,FAIL
+
+PSASTRO.USE.MODEL            BOOL TRUE
+
+# extra field for ref stars:
+PSASTRO.PHOTOM.WINDOW.SIGMA  F32 0.0
+
+PSASTRO.GRID.MIN.ANGLE F32 -2.0 # start angle (degrees)
+PSASTRO.GRID.MAX.ANGLE F32 +2.0
+PSASTRO.GRID.DEL.ANGLE F32  1.0
+
+PSASTRO.GRID.NREF.MAX  S32   5000 # max stars accepted for fitting
+PSASTRO.GRID.NRAW.MAX  S32   5000 # max stars accepted for fitting
+
+PSASTRO.MIN.INST.MAG.RAW            F32      -15   # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW            F32      -11   # max instrumental magnitude for stars accepted for fitting
+PSASTRO.GRID.MIN.INST.MAG.RAW       F32      -15
+PSASTRO.GRID.MAX.INST.MAG.RAW       F32      -11
+
+## PSASTRO.GRID.MAX.INST.MAG.RAW -11 is OK for the 30 sec exp but may be too many for 300 sec.
+
+# pmAstromMatchFit
+PSASTRO.CHIP.ORDER     S32      1  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
+# single-chip radius match in FP pixels
+# These are appropriate for hsc.20161020.asm (13.4 FP pixel = 1 chip pixels)
+# PSASTRO.MATCH.RADIUS.N0 F32    30
+# PSASTRO.MATCH.RADIUS.N1 F32    30
+# PSASTRO.MATCH.RADIUS.N2 F32    20
+# PSASTRO.MATCH.RADIUS.N3 F32    20
+# PSASTRO.MATCH.RADIUS.N4 F32    10
+# PSASTRO.MATCH.RADIUS.N5 F32    10 # was 5
+# PSASTRO.MATCH.RADIUS.N6 F32     8
+# PSASTRO.MATCH.RADIUS.N7 F32     8
+# PSASTRO.MATCH.FIT.NITER S32     7 # was 7
+
+# these are appropriate for hsc.20200221.asm (1 FP pixel = 1 chip pixel)
+# EAM NOTE: test this recipe for field images (non-M31)
+PSASTRO.MATCH.RADIUS.N0 F32    6.0
+PSASTRO.MATCH.RADIUS.N1 F32    6.0
+PSASTRO.MATCH.RADIUS.N2 F32    4.0
+PSASTRO.MATCH.RADIUS.N3 F32    4.0
+PSASTRO.MATCH.RADIUS.N4 F32    2.0
+PSASTRO.MATCH.RADIUS.N5 F32    2.0
+PSASTRO.MATCH.RADIUS.N6 F32    1.5
+PSASTRO.MATCH.RADIUS.N7 F32    1.5
+PSASTRO.MATCH.FIT.NITER S32     7 # was 7
+
+# single-chip radius match in pixels
+PSASTRO.ONE.CHIP.ORDER.N0 F32    1
+PSASTRO.ONE.CHIP.ORDER.N1 F32    1 
+PSASTRO.ONE.CHIP.ORDER.N2 F32    2
+PSASTRO.ONE.CHIP.ORDER.N3 F32    2
+PSASTRO.ONE.CHIP.ORDER.N4 F32    3
+PSASTRO.ONE.CHIP.ORDER.N5 F32    3
+PSASTRO.ONE.CHIP.ORDER.N6 F32    3
+PSASTRO.ONE.CHIP.ORDER.N7 F32    3
+
+# Mosaic Astrometry options
+PSASTRO.MOSAIC.MODE         BOOL   TRUE
+
+# for iterations >= N, require a single match per reference
+PSASTRO.MOSAIC.CHIP.NITER     S32      5  # fit clipping iterations (NOTE: last iteration is NITER, not NITER - 1)
+PSASTRO.MOSAIC.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+PSASTRO.MOSAIC.UNIQ.ITER      S32      3  # for iterations >= N, require a single match per reference
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N4 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N5 F32    0.30 # max allow error for valid solution (arcsec)
+
+# mosaic radius match in Chip pixels (do these make sense?)
+# the smallest one-chip radius (8) should roughly match the 
+# largest mosaic radius x plate scale
+PSASTRO.MOSAIC.RADIUS.N0    F32    3
+PSASTRO.MOSAIC.RADIUS.N1    F32    3
+PSASTRO.MOSAIC.RADIUS.N2    F32    2
+PSASTRO.MOSAIC.RADIUS.N3    F32    2
+PSASTRO.MOSAIC.RADIUS.N4    F32    2
+PSASTRO.MOSAIC.RADIUS.N5    F32    2
+
+# use 3rd order all the way.
+PSASTRO.MOSAIC.CHIP.ORDER     S32      3  # limit chip-fit order to 1
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      3 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      3 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      3 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      3 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      3 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N5  S32      3 # fit order (-1 means use default)
+
+# mosaic radius match in Chip pixels (do these make sense?)
+# EAM : values pre 2020.02.09
+# PSASTRO.MOSAIC.RADIUS.N0    F32    15
+# PSASTRO.MOSAIC.RADIUS.N1    F32    10
+# PSASTRO.MOSAIC.RADIUS.N2    F32    10
+# PSASTRO.MOSAIC.RADIUS.N3    F32    5
+# PSASTRO.MOSAIC.RADIUS.N4    F32    5
+# PSASTRO.MOSAIC.RADIUS.N5    F32    3
+
+# EAM : values pre 2020.02.09
+# PSASTRO.MOSAIC.CHIP.ORDER     S32      1  # limit chip-fit order to 1
+# PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+# PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      0 # fit order (-1 means use default)
+# PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+# PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+# PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      3 # fit order (-1 means use default)
+# PSASTRO.MOSAIC.CHIP.ORDER.N5  S32      3 # fit order (-1 means use default)
+
+PSASTRO.MODEL.REF.CHIP        STR      x050
+PSASTRO.MODEL.REF.CHIP.ANGLE  F32      90.0
+PSASTRO.MODEL.ROT.PARITY      S32      -1
+
+# Masking parameters
+REFSTAR_MASK			BOOL TRUE
+REFSTAR_MASK_MAX_MAG		F32  -15.0
+REFSTAR_MASK_SATSTAR_MAG_MAX    F32  -15.0
+REFSTAR_MASK_SATSTAR_MAG_SLOPE  F32   4.45 # Was 10.15
+REFSTAR_MASK_SATSTAR_POS_ZERO   F32   -15.0
+
+REFSTAR_MASK_SATSPIKE_MAG_SLOPE F32 0.35
+REFSTAR_MASK_SATSPIKE_MAG_MAX   F32 -14.5
+REFSTAR_MASK_SATSPIKE_OFFSET    F32 0.0
+REFSTAR_MASK_SATSPIKE_WIDTH     F32 6.0
+REFSTAR_MASK_SATSPIKE_L0        F32 0
+REFSTAR_MASK_SATSPIKE_WIDTH_SLOPE  F32 0.0106
+
+REFSTAR_MASK_BLEED		BOOL TRUE
+
+REFSTAR_MASK_BLEED_MAG_MAX      F32 -14.5
+REFSTAR_MASK_BLEED_MAG_SLOPE    F32   2.0
+
+REFSTAR_MASK_BLEED_ORIENTATION_X BOOL FALSE
+REFSTAR_MASK_BLEED_MAG_MAX_X    F32 -15.0
+REFSTAR_MASK_BLEED_MAG_SLOPE_X  F32   5.0
+
+REFSTAR_MASK_BLEED_ORIENTATION_Y BOOL TRUE
+REFSTAR_MASK_BLEED_MAG_MAX_Y    F32 -14.5
+REFSTAR_MASK_BLEED_MAG_SLOPE_Y  F32   0.425
+
+REFSTAR_COUNT_GHOSTS            BOOL TRUE
+#REFSTAR_MASK_GHOST              BOOL TRUE
+REFSTAR_MASK_GHOST		 BOOL FALSE
+GHOST_MODEL                     STR  hsc/ghost.model.mdc
+
+#REFSTAR_MASK_GLINTS		BOOL TRUE
+REFSTAR_MASK_GLINTS		BOOL FALSE
+GLINT_MAX_MAG			F32  -19
+GLINT_LENGTH_MAG_SLOPE		F32  0.0
+GLINT_LENGTH_MAG_ZERO		F32  0.0
+GLINT_WIDTH			F32  80.0
+
+# HSC glint model terms:
+# FILTER : allows model to have different terms for different filters
+# FACTOR : scaling factor for glint model in mm for each filter
+# LIMIT  : instrumental magnitude limit (only brighter stars are used)
+#          example, for g-band 30 sec exposures, limit of -23 -> 7.5 mag
+#
+# to find the glint:
+#  R_FPA = hypot(TP_x, TP_y) --> note calculation is done in TPA units, not FPA units
+#  theta0 = datan2 (TP_y, TP_x)
+#  R (star_radius_deg) = GLINT.PIXEL.SCALE * R_FPA
+#  C_star = C_terms[0] + C_terms[1] * R + C_terms[2] * R^2
+#  R_star = R_terms[0] + R_terms[1] * R + R_terms[2] * R^2
+
+# C_star and R_star are in millimeter units; R is in degrees.
+
+# The slopes and radii and region below are all in FPA units, 1/13.5 of a regular pixel.
+# these need to be adjusted to use 1 FPA pix = 1 CHIP pix (hsc.20200221.asm)
+
+# recipe values which need to be adjusted for 1 FPA pix = 1 CHIP pix:
+# GLINT.PIXEL.SCALE (multiply by 13.4)
+# REGION (divide by 13.4)
+# GLINT.RADIUS.INNER (divide by 13.4)
+# GLINT.RADIUS.OUTER (divide by 13.4)
+
+# NOTE: The code contains the 13.5 factor hard-wired in the HSC model
+
+GLINT.REGION			MULTI
+GLINT.REGION			METADATA
+  GLINT.TYPE                    STR  HSC
+  GLINT.PIXEL.SCALE		F32  3.49794238e-06
+  REGION			STR  [-350000:350000,-350000:350000]
+  GLINT.RADIUS.INNER            F32  252435  # 0.883 degrees
+  GLINT.RADIUS.OUTER		F32  283025  # 0.990 degrees
+  
+  GLINT.FILTER.TERM		MULTI
+  GLINT.FILTER.TERM		METADATA
+    FILTER			STR	g
+    @C_TERMS			F32	-4467.9759580157  10022.1277915657  -5156.3556611527 # a comment
+    @R_TERMS			F32	-4375.9715493905  9717.6993803237   -5203.2424778605 # a comment
+    FACTOR			F32	1.002
+    LIMIT			F32	-23.0
+  END
+  GLINT.FILTER.TERM		METADATA
+    FILTER			STR      r
+    @C_TERMS			F32	 -4354.2575893763  9762.9766653532  -5011.1243975288 # a comment
+    @R_TERMS			F32	 -4263.2230039887  9457.4516871365  -5057.2762518308 # a comment
+    FACTOR			F32	 1.0015
+    LIMIT			F32	 -23.5
+  END
+  GLINT.FILTER.TERM		METADATA
+    FILTER			STR      i
+    @C_TERMS			F32	 -4243.1837126908  9517.3512135240  -4876.3237965836 # a comment
+    @R_TERMS			F32	 -4154.5095389959  9215.4140278639  -4924.2923196315 # a comment
+    FACTOR			F32	1.001
+    LIMIT			F32	-23.5
+  END
+  GLINT.FILTER.TERM		METADATA
+    FILTER			STR      z
+    @C_TERMS			F32	 -3966.2315539829  8920.7199277389  -4555.9567436784 # a comment
+    @R_TERMS			F32	 -3878.4529585585  8619.7241050446  -4604.3603386145 # a comment
+    FACTOR			F32	0.9995
+    LIMIT			F32	13.0
+  END
+  GLINT.FILTER.TERM		METADATA
+    FILTER			STR      y
+    @C_TERMS			F32	 -3723.5919271089  8403.7641770854  -4281.0159171765 # a comment
+    @R_TERMS			F32	 -3637.0352789862  8104.8245491120  -4330.4583627761 # a comment
+    FACTOR			F32	1.000
+    LIMIT			F32	-23.0
+  END
+  GLINT.FILTER.TERM		METADATA
+    FILTER			STR      NB816
+    @C_TERMS			F32	 -4243.1837126908  9517.3512135240  -4876.3237965836 # a comment
+    @R_TERMS			F32	 -4154.5095389959  9215.4140278639  -4924.2923196315 # a comment
+    FACTOR			F32	1.001
+    LIMIT			F32	-24.0
+  END
+  GLINT.FILTER.TERM		METADATA
+    FILTER			STR      NB921
+    @C_TERMS			F32	 -3966.2315539829  8920.7199277389  -4555.9567436784 # a comment
+    @R_TERMS			F32	 -3878.4529585585  8619.7241050446  -4604.3603386145 # a comment
+    FACTOR			F32	1.0005
+    LIMIT			F32	-24.0
+  END
+
+END
+
+#  GLINT.RADIUS.INNER		F32  245000
+#  GLINT.RADIUS.OUTER		F32  260000
+
+#  GLINT.ANGLE.INNER_SLOPE       F32  -0.0059259
+#  GLINT.ANGLE.INNER_ZERO	F32  72
+
+#  GLINT.ANGLE.OUTER_SLOPE	F32 0.0088889 
+#  GLINT.ANGLE.OUTER_ZERO	F32 -41
+
+#  GLINT.ANGLE.INNER_SLOPE      F32  0.0
+#  GLINT.ANGLE.INNER_ZERO       F32  1.5
+#  GLINT.ANGLE.OUTER_SLOPE      F32  0.0
+#  GLINT.ANGLE.OUTER_ZERO       F32 22.0
+
+# REFSTAR_MASK_GLINTS             BOOL  TRUE
+# GLINT_MAX_MAG                   F32   xxxx
+
+# GLINT.REGION                    MULTI
+# GLINT.REGION                    METADATA
+#   REGIONS                       STR [-:,-:]
+#   GLINT.TYPE                    STR HSC
+# END
+
+GLINT_TEST METADATA
+   REFSTAR_MASK_GLINTS   BOOL TRUE
+   REFSTAR_MASK_GHOST    BOOL TRUE
+END
+
+STATICSKY_CAL   METADATA
+    REFSTAR_MASK                BOOL FALSE
+    PSASTRO.SAVE.REFMATCH       BOOL FALSE
+    PSASTRO.FIX.CHIPS           BOOL FALSE
+    PSASTRO.USE.MODEL           BOOL FALSE
+    PSASTRO.MOSAIC.MODE         BOOL FALSE
+    DVO.GETSTAR.FIXED.ZEROPT    F32   30.0
+    DVO.GETSTAR.MIN.MAG.INST    F32   -27.0
+     PSASTRO.CATDIR 		       STR     PS1.REF.20170919
+    ZERO.POINT.USE.MEAN                  BOOL    TRUE
+    PSASTRO.MATCH.RADIUS.N0 F32    30
+    PSASTRO.MATCH.RADIUS.N1 F32    20
+    PSASTRO.MATCH.RADIUS.N2 F32    20
+    PSASTRO.MATCH.RADIUS.N3 F32    10
+    PSASTRO.MATCH.RADIUS.N4 F32    5
+    PSASTRO.MATCH.FIT.NITER S32    5
+
+    PSASTRO.MAX.ERROR      F32      0.2  # in arcsec units, if larger than 0.2" on skycell then a problem..
+
+    TRANSFORM.GALAXY.SHAPE.ERRORS  BOOL T
+
+    PSASTRO.FIELD.PADDING   F32 0.1
+    PSASTRO.GRID.SEARCH    BOOL  FALSE
+
+END
+
+M31_SHALLOW METADATA 
+  PSASTRO.MOSAIC.MODE         BOOL   FALSE
+
+  PSASTRO.MAX.INST.MAG.RAW            F32      -10
+  PSASTRO.GRID.MAX.INST.MAG.RAW       F32      -10
+
+  # single-chip radius match in pixels
+  PSASTRO.MATCH.RADIUS.N0 F32    6.0
+  PSASTRO.MATCH.RADIUS.N1 F32    6.0
+  PSASTRO.MATCH.RADIUS.N2 F32    4.0
+  PSASTRO.MATCH.RADIUS.N3 F32    4.0
+  PSASTRO.MATCH.RADIUS.N4 F32    2.0
+  PSASTRO.MATCH.RADIUS.N5 F32    2.0
+  PSASTRO.MATCH.RADIUS.N6 F32    1.5
+  PSASTRO.MATCH.RADIUS.N7 F32    1.5
+  PSASTRO.MATCH.FIT.NITER S32     7 # was 7
+
+  # single-chip radius match in pixels
+  PSASTRO.ONE.CHIP.ORDER.N0 F32    1
+  PSASTRO.ONE.CHIP.ORDER.N1 F32    1 
+  PSASTRO.ONE.CHIP.ORDER.N2 F32    2
+  PSASTRO.ONE.CHIP.ORDER.N3 F32    2
+  PSASTRO.ONE.CHIP.ORDER.N4 F32    3
+  PSASTRO.ONE.CHIP.ORDER.N5 F32    3
+  PSASTRO.ONE.CHIP.ORDER.N6 F32    3
+  PSASTRO.ONE.CHIP.ORDER.N7 F32    3
+END
+
+M31_DEEP METADATA 
+  PSASTRO.CATDIR STR M31.DEEP
+
+  PSASTRO.MOSAIC.MODE         BOOL   FALSE
+
+  PSASTRO.MAX.INST.MAG.RAW            F32      -10.5
+  PSASTRO.GRID.MAX.INST.MAG.RAW       F32      -10.5
+  
+  # single-chip radius match in pixels
+  PSASTRO.MATCH.RADIUS.N0 F32    6.0
+  PSASTRO.MATCH.RADIUS.N1 F32    6.0
+  PSASTRO.MATCH.RADIUS.N2 F32    4.0
+  PSASTRO.MATCH.RADIUS.N3 F32    4.0
+  PSASTRO.MATCH.RADIUS.N4 F32    2.0
+  PSASTRO.MATCH.RADIUS.N5 F32    2.0
+  PSASTRO.MATCH.RADIUS.N6 F32    1.5
+  PSASTRO.MATCH.RADIUS.N7 F32    1.5
+  PSASTRO.MATCH.FIT.NITER S32     7 # was 7
+
+  # single-chip radius match in pixels
+  PSASTRO.ONE.CHIP.ORDER.N0 F32    1
+  PSASTRO.ONE.CHIP.ORDER.N1 F32    1 
+  PSASTRO.ONE.CHIP.ORDER.N2 F32    2
+  PSASTRO.ONE.CHIP.ORDER.N3 F32    2
+  PSASTRO.ONE.CHIP.ORDER.N4 F32    3
+  PSASTRO.ONE.CHIP.ORDER.N5 F32    3
+  PSASTRO.ONE.CHIP.ORDER.N6 F32    3
+  PSASTRO.ONE.CHIP.ORDER.N7 F32    3
+END
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+#  ZEROPT   F32 26.75
+  ZEROPT   F32 26.70
+  PHOTCODE STR g
+  GHOST_MAX_MAG                   F32 -22.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+#  ZEROPT   F32 27.1
+  ZEROPT   F32 27.05
+  PHOTCODE STR r
+  GHOST_MAX_MAG                   F32 -22.5
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+#  ZEROPT   F32 27.0
+  ZEROPT   F32 26.8
+  PHOTCODE STR i
+  GHOST_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+#  ZEROPT   F32 26.2
+  ZEROPT   F32 26.0
+  PHOTCODE STR z
+  GHOST_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR y
+#  ZEROPT   F32 25.1
+  ZEROPT   F32 25.55
+  PHOTCODE STR y
+  GHOST_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR NB816
+#  ZEROPT   F32 26.0
+  ZEROPT   F32 23.75
+  PHOTCODE STR i
+  GHOST_MAX_MAG                   F32 -23.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR NB921
+#  ZEROPT   F32 25.4
+  ZEROPT   F32 23.95
+  PHOTCODE STR z
+  GHOST_MAX_MAG                   F32 -23.0
+END
+
Index: /branches/eam_branches/ippconfig.20240412/hsc/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/hsc/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/hsc/psphot.config	(revision 42661)
@@ -0,0 +1,105 @@
+
+BACKGROUND.XBIN                     S32   600             # size of background superpixels
+BACKGROUND.YBIN                     S32   600             # size of background superpixels
+BACKGROUND.XSAMPLE                  F32   2.0             # size of background superpixels
+BACKGROUND.YSAMPLE                  F32   2.0             # size of background superpixels
+
+PSF_MODEL	STR	  PS_MODEL_HSC_V1
+
+STACKPHOT	METADATA
+ SAVE.RESID     BOOL      TRUE
+
+ PSF_MODEL	STR	  PS_MODEL_HSC_V1
+  EXTENDED_SOURCE_FITS                BOOL  FALSE  # perform any of the aperture-like measurements?
+  EXTENDED_SOURCE_GALAXY_PARAMS       BOOL  FALSE  # measure additional paramters for "galaxies"
+  EXTENDED_SOURCE_SN_LIM              F32   10.0
+  EXTENDED_SOURCE_PETROSIAN           BOOL  FALSE
+  EXTENDED_SOURCE_ANNULI              BOOL  TRUE
+  EXT.NSIGMA.LIMIT.USE                BOOL  FALSE
+  EXT.FIT.MIN.GAL.LIMIT.USE           BOOL  TRUE  # limit extended source fits by galactic coordinates
+
+  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?
+  # 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?
+  RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+  OUTPUT.FORMAT                       STR   PS1_SV4
+
+  # subtract radial profiles for extremely bright stars?
+  SUBTRACT_SATSTAR_PROFILE            BOOL  T
+  
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE 
+  POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+
+  LMM_FIT_CHISQ_CONVERGENCE           BOOL  FALSE           # use the (old) chisq convergence or the new parameter one 
+  LMM_FIT_GAIN_FACTOR_MODE            S32   2               # there are 3 options to determine the gain factor (0,1,2)
+  EXT_FIT_MIN_TOL                     F32   0.1             # Fit tolerance for EXT
+
+  EXT_FIT_MAX_RADIUS                  F32   50.0
+  PEAKS_NMAX_TOTAL                    S32   0 # set this to limit the allowed number of peaks - Yields fault instead of avoid memory explosion
+
+  REPAIR.PETROSIAN.MAG.ERRORS         BOOL  FALSE # write PETRO_MAG_ERR as dFlux / Flux when writing
+
+
+ # PSPHOT.STACK.MATCH.FILTER
+ # list of metadata to control how source matching is performed for each band
+ #  FILTER.ID is used to match to the FPA's concept value FPA.FILTERID
+ # ORDER controls the order in which the bands are processed. Lower numbers are processed first.
+ #       The intent is to process in order of sensitivity
+ # MATCH.ALL if true causes forced photometry sources for objects detected in that band but don't meet 
+ #       the minimum number of detections cut
+ # TYPE is used in the recipe bookkeeping and has no semantic (but must be unique)
+ # Note: if an input has a filter not in this list it will be processed after all of the others with MATCH.ALL = FALSE
+ PSPHOT.STACK.MATCH.FILTERS   METADATA
+    TYPE        PSPHOT_STACK.MATCH.FILTER FILTER.ID ORDER MATCH.ALL Y.RATIO.MAX
+    gband       PSPHOT_STACK.MATCH.FILTER   HSC-g        4       TRUE      0
+    rband       PSPHOT_STACK.MATCH.FILTER   HSC-r2       2       TRUE      0
+    iband       PSPHOT_STACK.MATCH.FILTER   HSC-i2       1       TRUE      0
+    zband       PSPHOT_STACK.MATCH.FILTER   HSC-z        3       TRUE      0
+    yband       PSPHOT_STACK.MATCH.FILTER   HSC-Y        5       TRUE      0
+    NB9		PSPHOT_STACK.MATCH.FILTER   NB0921	 6       TRUE      0
+    NB8		PSPHOT_STACK.MATCH.FILTER   NB0816	 7	 TRUE 	   0
+ END
+
+ EXT.ANALYSIS.MAG.LIMITS METADATA
+    TYPE  DATA FILTER.ID MAG.LIMIT.PETRO    MAG.LIMIT.EXTFIT
+    gband DATA g         28                 25.5
+    rband DATA r         28                 25.5
+    iband DATA i         27                 24.5
+    zband DATA z         26.5               23
+    yband DATA y         26                 22.5
+    NB9   DATA NB0921    26                 22.5
+    NB8   DATA NB0816    26                 22.5
+    other DATA any       25                 21.5
+
+#     gband DATA g         25                 21.5
+#     rband DATA r         25                 21.5 
+#     iband DATA i         25                 21.5
+#     zband DATA z         25                 20.5
+#     yband DATA y         25                 19.5
+#     NB    DATA NB0921    25                 20.5
+#     other DATA any       25                 21.5
+ END
+END
+
+M31_DEEP METADATA 
+  BACKGROUND.XBIN         S32   64             # size of background superpixels
+  BACKGROUND.YBIN         S32   58             # size of background superpixels
+  BACKGROUND.XSAMPLE      F32   2.0            # size of background superpixels
+  BACKGROUND.YSAMPLE      F32   2.0            # size of background superpixels
+
+  FOOTPRINT_GROW_RADIUS   S32   0
+  PSF_SN_LIM              F32   250.0
+  IMSTATS_NPIX            S32   100000
+  SKY_STAT                STR   ROBUST_MEDIAN
+
+  PSF.TREND.MODE                      STR   MAP
+  PSF.TREND.NX                        S32   2
+  PSF.TREND.NY                        S32   3
+
+  APTREND.ORDER.MAX                   S32   1
+END
Index: /branches/eam_branches/ippconfig.20240412/ipprc.config.in
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ipprc.config.in	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ipprc.config.in	(revision 42661)
@@ -0,0 +1,25 @@
+## Example .ipprc file : copy to your home directory and modify as desired
+
+# Default search path for configuration files (add $HOME if desired)
+# Note: do not include $HOME in the distributed copy used by ippMonitor
+PATH            STR     @pkgdatadir@
+### This is a useful setting for an individual user:
+#PATH           STR     $HOME/ippconfig/:$PSCONFDIR/$PSCONFIG/share/ippconfig/
+
+# load the site-specific information from here
+SITE              STR     site.config
+
+# load the system configuration information from here
+SYSTEM            STR     system.config
+
+# logging verbosity levels
+LOGLEVEL	S32	9			# Logging level; 3=INFO
+LOGFORMAT	STR	THLNM			# Log format
+LOGDEST		STR	STDERR			# Log destination
+TRACEDEST	STR	STDERR			# Trace destination
+
+# place default trace lines here
+TRACE		METADATA			# Trace levels
+  err		S32	10
+# psLib.db      S32	10
+END
Index: /branches/eam_branches/ippconfig.20240412/isp/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/Makefile.am	(revision 42661)
@@ -0,0 +1,24 @@
+
+installdir = $(datadir)/ippconfig/isp
+
+install_files = \
+	dvo.config \
+	dvo.layout \
+	camera.config \
+	format.config \
+	cmp.config \
+	cmf.config \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/isp/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/camera.config	(revision 42661)
@@ -0,0 +1,81 @@
+# Camera configuration file for the Pan-STARRS Imaging Sky Probe
+
+# File formats that we know about
+FORMATS         METADATA
+        SIMPLE  STR     isp/format.config
+  #      CMP     STR     isp/cmp.config
+  #      CMF     STR     isp/cmf.config
+END
+ 
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip            STR     Cell
+END
+
+# valid filter names and corresponding IDs
+FILTER.ID       METADATA
+        g       STR     g
+        r       STR     r
+        i       STR     i
+        z       STR     z
+        y       STR     y
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID		METADATA
+	FPA	STR	fpa
+END
+
+DVO.CAMERADIR	STR	isp		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        PSPHOT          STR     isp/psphot.config               # psphot details
+        PSASTRO         STR     isp/psastro.config              # psastro details
+        PPIMAGE         STR     isp/ppImage.config              # Recipes for ppImage
+        PPMERGE         STR     isp/ppMerge.config              # Recipes for ppMerge
+	REJECTIONS	STR     isp/rejections.config
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	recipes/filerules-simple.mdc
+
+EXTNAME.RULES METADATA
+  CMF.HEAD STR cmf.hdr
+  CMF.DATA STR cmf.psf # use .PSF and .EXT?
+  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
+
+  PSF.HEAD  STR	hdr
+  PSF.TABLE STR psf_model
+  PSF.RESID STR psf_resid
+END
+
+BLANK.HEADERS	METADATA
+	FPA.TIME	STR	MJD-OBS
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.AIRMASS	STR	AIRMASS
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}		# Rule for generating photcode
+# don't censor any masked pixels when making postage stamps
+MASK.NO.CENSOR               U32 4294967295
+BURNTOOL.STATE.GOOD          S16  0  # Value for burntool_state with the most recent bt version.
Index: /branches/eam_branches/ippconfig.20240412/isp/cmf.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/cmf.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/cmf.config	(revision 42661)
@@ -0,0 +1,84 @@
+# Pan-STARRS Imaging Sky Probe
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+	NAXIS		S32	0
+	TELESCOP	STR	ISP-1 
+	INSTRUME	STR	ISP-Apogee
+	DETECTOR	STR	ISP-Apogee-01
+	ISPCAMER	STR	Apogee U42
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	SEQID	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTER	STR	FILTNAME
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.TIME	STR	MJD-OBS
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.READNOISE	STR	RDNOISE
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/isp/cmp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/cmp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/cmp.config	(revision 42661)
@@ -0,0 +1,84 @@
+# Pan-STARRS Imaging Sky Probe
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	FALSE
+	NAXIS		S32	0
+	TELESCOP	STR	ISP-1 
+	INSTRUME	STR	ISP-Apogee
+	DETECTOR	STR	ISP-Apogee-01
+	ISPCAMER	STR	Apogee U42
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	SEQID	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTER	STR	FILTNAME
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.TIME	STR	MJD-OBS
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.READNOISE	STR	RDNOISE
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/isp/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/dvo.config	(revision 42661)
@@ -0,0 +1,48 @@
+
+# location of DVO database tables
+#CATDIR			/data/alala/eugene/isp/catdir
+MOSAICNAME              ISP-APOGEE
+
+# keywords used by DVO to interpret the headers
+
+# used by parse_time to find time-related keywords
+MJD-KEYWORD		MJD-OBS
+DATE-KEYWORD		NONE
+DATE-MODE		NONE
+UT-KEYWORD		NONE
+JD-KEYWORD		NONE
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	20.7070999146
+OBSERVATORY-LONGITUDE	10.4170608521
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		-7.0
+CAL_INSTMAG_MIN		-9.5
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# allowed astrometry error (arcseconds)
+ADDSTAR_MAX_CERROR	5.0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		5.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
Index: /branches/eam_branches/ippconfig.20240412/isp/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/dvo.layout	(revision 42661)
@@ -0,0 +1,58 @@
+# this file defines the layout of the mosaic imager:
+
+# NCCD 40  # this needs work: sometimes 36, sometimes 40
+NCCD 36
+NAXIS1 2112
+NAXIS2 4644
+
+MOSAIC_X 11
+MOSAIC_Y  4
+
+# lines need to contain:
+
+CHIPID_KEYWORD EXTNAME
+
+# ID     CHIPID xoffset yoffset xflip yflip datasec         biassec            Xo      Yo      theta
+CCD.0     ccd00       1       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.1     ccd01       2       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.2     ccd02       3       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.3     ccd03       4       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.4     ccd04       5       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.5     ccd05       6       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.6     ccd06       7       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.7     ccd07       8       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.8     ccd08       9       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.9     ccd09       1       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.10    ccd10       2       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.11    ccd11       3       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.12    ccd12       4       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.13    ccd13       5       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.14    ccd14       6       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.15    ccd15       7       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.16    ccd16       8       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.17    ccd17       9       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.18    ccd18       1       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.19    ccd19       2       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.20    ccd20       3       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.21    ccd21       4       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.22    ccd22       5       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.23    ccd23       6       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.24    ccd24       7       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.25    ccd25       8       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.26    ccd26       9       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.27    ccd27       1       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.28    ccd28       2       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.29    ccd29       3       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.30    ccd30       4       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.31    ccd31       5       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.32    ccd32       6       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.33    ccd33       7       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.34    ccd34       8       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.35    ccd35       9       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.36    ccd36       0       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.37    ccd37      10       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.38    ccd38       0       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.39    ccd39      10       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/isp/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/format.config	(revision 42661)
@@ -0,0 +1,104 @@
+# Pan-STARRS Imaging Sky Probe
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+#	NAXIS		S32	2
+	TELESCOP	STR	ISP-1 
+	INSTRUME	STR	ISP-Apogee
+	DETECTOR	STR	ISP-Apogee-01
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS	STR	SEQID	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.DETECTOR	STR	DETECTOR
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTERID	STR	FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+#	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM   #KELVIN
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.READNOISE	STR	RDNOISE
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+#	CELL.TIMESYS	STR	TIMESYS
+	CELL.XBIN	STR	CCDBIN1
+	CELL.YBIN	STR	CCDBIN2
+# these were used for some early data
+#	CELL.XBIN	STR	XBIN
+#	CELL.YBIN	STR	YBIN
+	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	CHIP.XSIZE	S32	2048
+	CHIP.YSIZE	S32	2048
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+        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.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	60000
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+#	CELL.XBIN	S32	1
+#	CELL.YBIN	S32	1
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/isp/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/ppImage.config	(revision 42661)
@@ -0,0 +1,658 @@
+### ppImage recipe configuration file
+
+# Inherit everything from the top-level recipe file, except for what's below.
+
+#FRINGE.FILTERS  MULTI
+#FRINGE.FILTERS	STR z
+#FRINGE.FILTERS	STR y
+
+# apply the following constraints when selecting a detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+  END
+  SHUTTER METADATA
+  END	
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   VERSION STR RAW
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTERID
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR TWILIGHT:FPA.TIME
+  END
+END
+
+## these science-image analysis recipes are placed here set MASK = FALSE
+
+# Standard chip processing
+CHIP   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
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_DET_ONLY  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
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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    FALSE           # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP   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
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA   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
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, photometry, astrometry
+PPIMAGE_OA   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   FALSE           # Save base detrended image?
+  CHIP.VARIANCE.FITS BOOL   FALSE           # Save base detrended image?
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL	  TRUE 		# Save 1st binned jpeg?
+  BIN2.JPEG       BOOL	  TRUE 		# Save 2nd binned jpeg?
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
+# No operation except rebinning and potential normalisation
+PPIMAGE_N          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
+  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
+  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?
+END
+
+# Overscan subtraction only
+PPIMAGE_O            METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended image?
+  BASE.MASK.FITS     BOOL    TRUE            # 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    TRUE            # Overscan subtraction
+  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
+  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?
+END
+
+# Bias subtraction only
+PPIMAGE_B          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
+  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
+  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?
+END
+
+# Dark subtraction only
+PPIMAGE_D          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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Dark subtraction only
+PPIMAGE_M          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
+  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
+  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?
+END
+
+# Shutter correction only
+PPIMAGE_S          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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    TRUE            # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Flat-fielding only
+PPIMAGE_F          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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Fringe correction only
+PPIMAGE_R          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
+  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
+  FRINGE           BOOL    TRUE            # 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?
+END
+
+# Photometry only
+PPIMAGE_P          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    FALSE           # Overscan subtraction
+  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
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PHOTOM           BOOL    TRUE            # 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?
+END
+
+# Photometry & Astrometry
+PPIMAGE_A          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    FALSE           # Overscan subtraction
+  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
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PHOTOM           BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astromtery 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?
+END
+
+# Overscan, bias
+PPIMAGE_OB         METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended image?
+  BASE.MASK.FITS   BOOL    TRUE            # 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    TRUE            # Overscan subtraction
+  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
+  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?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD        METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark -- search for DARK_PREMASK
+PPIMAGE_DARKMASK_PROCESS METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END 
+
+
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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
+  BIAS               BOOL    FALSE            # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    FALSE           # Flat-field normalisation
+  MASK               BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# used for the pre-mask version of flat-field processing
+PPIMAGE_FLATPROC_PREMASK     METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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
+  BIAS               BOOL    FALSE            # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    FALSE           # Flat-field normalisation
+  MASK               BOOL    FALSE           # Mask bad pixels
+  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?
+  MASK.SATURATED     BOOL    FALSE           # DO NOT Mask the saturated pixels
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_FLATMASK_PROCESS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+
+  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
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATCORR    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
+  BIAS             BOOL    FALSE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    FLAT METADATA
+      DETTYPE STR FLAT_RAW
+    END
+  END   
+END
+
+# generate CTE map image
+PPIMAGE_CTEMAP     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    FALSE           # Overscan subtraction
+  OVERSCAN         BOOL    TRUE            # Overscan subtraction
+  BIAS             BOOL    FALSE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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    TRUE            # measure CTE errors?
+
+  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_BKGCONT    METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+  MASK.SATURATED   BOOL    FALSE           # DO NOT Mask the saturated pixels
+  MASK.LOW         BOOL    FALSE           # DO NOT Mask the saturated pixels
+  BACKGROUND.CONTINUITY BOOL FALSE
+  PATTERN.CONTINUITY.WIDTH S32 2
+END
+
Index: /branches/eam_branches/ippconfig.20240412/isp/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/ppMerge.config	(revision 42661)
@@ -0,0 +1,3 @@
+### ppImage recipe configuration file
+
+# Inherit everything from the top-level recipe file, except for what's below.
Index: /branches/eam_branches/ippconfig.20240412/isp/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/psastro.config	(revision 42661)
@@ -0,0 +1,113 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridMatch:
+PSASTRO.GRID.MIN.ANGLE F32 -2.0
+PSASTRO.GRID.MAX.ANGLE F32 +2.0
+PSASTRO.GRID.DEL.ANGLE F32  0.5
+PSASTRO.GRID.MIN.SIGMA F32  5.0
+
+PSASTRO.PLOT.INST.MAG.MAX F32 -6.0
+PSASTRO.PLOT.INST.MAG.MIN F32 -17.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32   500.
+PSASTRO.GRID.SCALE     F32      10
+
+PSASTRO.GRID.NREF.MAX S32 2500
+PSASTRO.GRID.NRAW.MAX S32 1500
+
+PSASTRO.PLOT.INST.MAG.MAX F32 -4.0
+PSASTRO.PLOT.INST.MAG.MIN F32 -12.0
+PSASTRO.PLOT.REF.MAG.MIN  F32 +10.0
+PSASTRO.PLOT.REF.MAG.MAX  F32 +20.0
+
+PSASTRO.MIN.INST.MAG.RAW      F32  -12
+PSASTRO.GRID.MIN.INST.MAG.RAW F32  -12
+PSASTRO.MAX.INST.MAG.RAW      F32  -4
+PSASTRO.GRID.MAX.INST.MAG.RAW F32  -4 
+
+ #PSASTRO.MATCH.RADIUS   F32    3
+
+PSASTRO.MATCH.RADIUS.N0 F32    15
+PSASTRO.MATCH.RADIUS.N1 F32    10
+PSASTRO.MATCH.RADIUS.N2 F32    9
+PSASTRO.MATCH.RADIUS.N3 F32    8
+PSASTRO.MATCH.RADIUS.N4 F32    7
+PSASTRO.MATCH.RADIUS.N5 F32    5
+PSASTRO.MATCH.RADIUS.N6 F32    5
+PSASTRO.MATCH.RADIUS.N7 F32    3
+
+PSASTRO.MATCH.FIT.NITER S32    8 
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32      2
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# match radius in pixels for CHIP astrometry
+PSASTRO.MATCH.RADIUS   F32    5
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.RADIUS   F32    15
+PSASTRO.MATCH.RADIUS.N0 F32   30
+PSASTRO.MATCH.RADIUS.N1 F32   15
+PSASTRO.MATCH.RADIUS.N2 F32   10
+PSASTRO.MATCH.RADIUS.N3 F32   6
+PSASTRO.MATCH.RADIUS.N4 F32   3
+PSASTRO.MATCH.RADIUS.N5 F32   3
+PSASTRO.MATCH.RADIUS.N6 F32   0
+PSASTRO.MATCH.RADIUS.N7 F32   0
+PSASTRO.MATCH.FIT.NITER S32   5
+
+# pmAstromMatchFit
+PSASTRO.CHIP.ORDER     S32      3  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
+
+
+
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      10   # min fitted stars in solution
+
+# Removed to allow ISP registration to work correctly.
+#MAG_MAX                F32      10
+PSASTRO.CATDIR         STR      SYNTH.BRIGHT
+PSASTRO.MATCH.LUMFUNC  BOOL     FALSE
+PSASTRO.IGNORE	       STR	SATURATED, DEFECT, SATSTAR, BLEND,FAIL
+
+PHOTCODE.DATA MULTI  #these are the zeropoints calculated by hand (10 stars)
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 19.3
+  PHOTCODE STR g_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32  19.1
+  PHOTCODE STR r_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+  ZEROPT   F32  18.4
+  PHOTCODE STR i_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+  ZEROPT   F32  17.2
+  PHOTCODE STR z_SYNTH
+END
+
+PHOTCODE.DATA METADATA
+  FILTER   STR y
+  ZEROPT   F32  14.0
+  PHOTCODE STR y_SYNTH
+END
+
Index: /branches/eam_branches/ippconfig.20240412/isp/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/psphot.config	(revision 42661)
@@ -0,0 +1,19 @@
+# cosmic ray recipe options - these were tested with o5472i0009o01.201734.ch.191131.cmf
+
+PSPHOT.CR.MAX.SIZE                  F32   0.20           # guess for limit on M_minor in pix^2
+PSPHOT.CR.MAX.MAG                   F32   -7.0             # guess for limit on Kron Mag
+PSPHOT.CR.AUTOSCALE                 BOOL  FALSE
+
+
+# turn these on to see specific outputs
+SAVE.PLOTS      BOOL    TRUE
+
+# PSF model parameters : choose the PSF model
+PSF_MODEL           STR  PS_MODEL_PGAUSS
+
+# xxx check this:
+PSF_CLUMP_NSIGMA   F32  3.5             # region of Sx,Sy plane to use for selecting PSF stars
+
+# XXX set other 2D trends
+PSF.TREND.NX S32 4
+PSF.TREND.NY S32 4
Index: /branches/eam_branches/ippconfig.20240412/isp/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/isp/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/isp/rejections.config	(revision 42661)
@@ -0,0 +1,52 @@
+
+
+
+DARK 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  2.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  2.0
+  ENSEMBLE.MEAN      F32  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+FRINGE 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 10.0
+  EXP.FLUX           F32  0.0
+  ENSEMBLE.MEAN      F32  0.0
+  ENSEMBLE.STDEV     F32  0.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+ITERATION       BOOL    FALSE            # Are iterations permitted?
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/Makefile.am	(revision 42661)
@@ -0,0 +1,23 @@
+
+installdir = $(datadir)/ippconfig/lbc_red
+
+install_files = \
+	dvo.config \
+	dvo.layout \
+	camera.config \
+	format_mef.config \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	filerules.mdc \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/camera.config	(revision 42661)
@@ -0,0 +1,81 @@
+# Camera configuration file for LBCred: describes the camera
+
+# File formats that we know about
+FORMATS         METADATA
+        MEF 	STR     lbc_red/format_mef.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+	CHIP1	STR	Cell
+	CHIP2	STR	Cell
+	CHIP3	STR	Cell
+	CHIP4	STR	Cell
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+   Y	  STR	Y-FAN
+   Y	  STR	Y-FAN(?)
+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}
+END
+
+DVO.CAMERADIR	STR	isp		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  BinoBias STR BIAS
+  bias     STR BIAS
+  zero     STR BIAS
+  dark     STR DARK
+  flat     STR SKYFLAT
+  SkyFlat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        # Other recipes
+        PSPHOT          STR     lbc_red/psphot.config           # psphot details
+        PSASTRO         STR     lbc_red/psastro.config          # psastro details
+        PPIMAGE         STR     lbc_red/ppImage.config          # ppImage recipe
+	REJECTIONS      STR     lbc_red/rejections.config       # rejection recipe
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	lbc_red/filerules.mdc	# File rules
+
+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.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
+
+  REF.ASTROM STR {CHIP.NAME}.ref_astrom
+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.N}		# Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/dvo.config	(revision 42661)
@@ -0,0 +1,50 @@
+
+# location of DVO database tables
+CATDIR			/data/ipp001.0/jester/stripe82/coadd/catdir
+
+# keywords used by DVO to interpret the headers
+
+# used by parse_time to find time-related keywords
+MJD-KEYWORD		NONE
+DATE-KEYWORD		DATE-OBS
+DATE-MODE		YYYY-MM-DD
+UT-KEYWORD		TAIHMS
+JD-KEYWORD		NONE
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		-7.0
+CAL_INSTMAG_MIN		-9.5
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# allowed astrometry error (arcseconds)
+ADDSTAR_MAX_CERROR	5.0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		5.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+CATMODE			MEF
+CATFORMAT		PANSTARRS_DEV_0
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/dvo.layout	(revision 42661)
@@ -0,0 +1,58 @@
+# this file defines the layout of the mosaic imager:
+
+# NCCD 40  # this needs work: sometimes 36, sometimes 40
+NCCD 36
+NAXIS1 2112
+NAXIS2 4644
+
+MOSAIC_X 11
+MOSAIC_Y  4
+
+# lines need to contain:
+
+CHIPID_KEYWORD EXTNAME
+
+# ID     CHIPID xoffset yoffset xflip yflip datasec         biassec            Xo      Yo      theta
+CCD.0     ccd00       1       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.1     ccd01       2       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.2     ccd02       3       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.3     ccd03       4       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.4     ccd04       5       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.5     ccd05       6       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.6     ccd06       7       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.7     ccd07       8       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.8     ccd08       9       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.9     ccd09       1       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.10    ccd10       2       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.11    ccd11       3       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.12    ccd12       4       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.13    ccd13       5       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.14    ccd14       6       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.15    ccd15       7       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.16    ccd16       8       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.17    ccd17       9       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.18    ccd18       1       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.19    ccd19       2       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.20    ccd20       3       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.21    ccd21       4       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.22    ccd22       5       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.23    ccd23       6       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.24    ccd24       7       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.25    ccd25       8       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.26    ccd26       9       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.27    ccd27       1       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.28    ccd28       2       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.29    ccd29       3       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.30    ccd30       4       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.31    ccd31       5       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.32    ccd32       6       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.33    ccd33       7       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.34    ccd34       8       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.35    ccd35       9       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.36    ccd36       0       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.37    ccd37      10       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.38    ccd38       0       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.39    ccd39      10       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/filerules.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/filerules.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/filerules.mdc	(revision 42661)
@@ -0,0 +1,170 @@
+### File rules for PHU=FPA, EXT=CHIP
+
+### Redirections
+PPIMAGE.OUTPUT        STR PPIMAGE.OUTPUT.MEF
+PPIMAGE.OUTPUT.MASK   STR PPIMAGE.OUT.MK.MEF
+PPIMAGE.OUTPUT.WEIGHT STR PPIMAGE.OUT.WT.MEF
+PPIMAGE.CHIP          STR PPIMAGE.CHIP.MEF
+PPIMAGE.CHIP.MASK     STR PPIMAGE.CHIP.MK.MEF
+PPIMAGE.CHIP.WEIGHT   STR PPIMAGE.CHIP.WT.MEF
+PPIMAGE.OUTPUT.FPA1   STR PPIMAGE.OUTPUT.FPA1.MEF
+PPIMAGE.OUTPUT.FPA2   STR PPIMAGE.OUTPUT.FPA2.MEF
+PPIMAGE.BIN1          STR PPIMAGE.BIN1.MEF
+PPIMAGE.BIN2          STR PPIMAGE.BIN2.MEF
+
+PPSTAMP.CHIP          STR PPSTAMP.CHIP.MEF
+
+PSASTRO.INPUT         STR PSASTRO.INPUT.CMF
+PSASTRO.OUTPUT        STR PSASTRO.OUT.CMF.MEF
+PSASTRO.OUTPUT.MEF    STR PSASTRO.OUT.CMF.MEF
+PSPHOT.OUTPUT         STR PSPHOT.OUT.CMF.MEF
+DVOCORR.OUTPUT        STR DVOCORR.MEF.OUTPUT
+DVOFLAT.OUTPUT        STR DVOFLAT.MEF.OUTPUT
+
+### input file definitions
+### use @DETDB entries to get the detrend images from the database
+### replace @DETDB with @FILES if you want to require it from the 
+### command line, or with an explicit name to require a specific file
+TYPE               INPUT FILENAME.RULE DATA.LEVEL FILE.TYPE
+
+## files used by ppImage
+PPIMAGE.INPUT      INPUT @FILES        CHIP       IMAGE
+PPIMAGE.MASK       INPUT @DETDB        CHIP       MASK
+PPIMAGE.BIAS       INPUT @DETDB        CHIP       IMAGE
+PPIMAGE.DARK       INPUT @DETDB        CHIP       IMAGE
+PPIMAGE.FLAT       INPUT @DETDB        CHIP       IMAGE
+PPIMAGE.FRINGE     INPUT @DETDB        CHIP       FRINGE
+PPIMAGE.SHUTTER    INPUT @DETDB        CHIP       IMAGE     
+
+## files used to build and apply the flat-field correction images
+DVOCORR.INPUT      INPUT @FILES        CHIP       IMAGE
+DVOCORR.REFHEAD    INPUT @FILES        CHIP       HEADER
+DVOFLAT.INPUT      INPUT @FILES        CHIP       IMAGE
+DVOFLAT.CORR       INPUT @DETDB        CHIP       IMAGE
+
+## files used by psphot 
+PSPHOT.LOAD        INPUT @FILES        CHIP       IMAGE
+PSPHOT.INPUT       INPUT @FILES        CHIP       IMAGE
+PSPHOT.MASK        INPUT @FILES        CHIP       MASK     
+PSPHOT.WEIGHT      INPUT @FILES        CHIP       WEIGHT     
+PSPHOT.PSF.LOAD    INPUT @FILES        CHIP       PSF       
+
+## files used by psastro 
+PSASTRO.INPUT.CMP  INPUT @FILES        CHIP       CMP
+PSASTRO.INPUT.CMF  INPUT @FILES        CHIP       CMF
+
+## files used by pswarp
+PSWARP.INPUT       INPUT @FILES        CHIP       IMAGE
+PSWARP.WEIGHT      INPUT @FILES        CHIP       WEIGHT
+PSWARP.MASK        INPUT @FILES        CHIP       MASK
+PSWARP.SKYCELL     INPUT @FILES        CHIP       IMAGE
+PSWARP.ASTROM      INPUT @FILES        CHIP       CMF
+
+PPSUB.INPUT        INPUT @FILES        FPA        IMAGE
+PPSUB.INPUT.MASK   INPUT @FILES        FPA        MASK
+PPSUB.INPUT.WEIGHT INPUT @FILES        FPA        WEIGHT
+PPSUB.REF          INPUT @FILES        FPA        IMAGE
+PPSUB.REF.MASK     INPUT @FILES        FPA        MASK
+PPSUB.REF.WEIGHT   INPUT @FILES        FPA        WEIGHT
+PPSUB.SOURCES      INPUT @FILES        FPA        CMF
+
+PPSTACK.INPUT      INPUT @FILES        FPA        IMAGE
+PPSTACK.INPUT.MASK INPUT @FILES        FPA        MASK
+PPSTACK.INPUT.WEIGHT INPUT @FILES      FPA        WEIGHT
+PPSTACK.SOURCES    INPUT @FILES        FPA        CMF
+
+PPSTAMP.INPUT      INPUT @FILES        CHIP       IMAGE
+
+PPARITH.INPUT.IMAGE INPUT @FILES        CHIP       IMAGE
+PPARITH.INPUT.MASK  INPUT @FILES        CHIP       MASK
+
+### output file definitions
+TYPE                  OUTPUT FILENAME.RULE                    FILE.TYPE FITS.TYPE DATA.LEVEL FILE.SAVE FILE.FORMAT
+PPIMAGE.OUTPUT.MEF    OUTPUT {OUTPUT}.b0.fits                 IMAGE     NONE      CHIP       TRUE      MEF
+PPIMAGE.OUT.MK.MEF    OUTPUT {OUTPUT}.mk.fits                 MASK      NONE      CHIP       TRUE      MEF
+PPIMAGE.OUT.WT.MEF    OUTPUT {OUTPUT}.wt.fits                 WEIGHT    NONE      CHIP       TRUE      MEF
+PPIMAGE.OUTPUT.SPL    OUTPUT {OUTPUT}.{CHIP.NAME}.b0.fits     IMAGE     NONE      CHIP       TRUE      SPLIT
+PPIMAGE.OUT.MK.SPL    OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits     MASK      NONE      CHIP       TRUE      SPLIT
+PPIMAGE.OUT.WT.SPL    OUTPUT {OUTPUT}.{CHIP.NAME}.wt.fits     WEIGHT    NONE      CHIP       TRUE      SPLIT
+PPIMAGE.CONFIG        OUTPUT {OUTPUT}.{CHIP.NAME}.ppImage.mdc TEXT      NONE      CHIP       TRUE      NONE
+
+PPIMAGE.CHIP.MEF      OUTPUT {OUTPUT}.ch.fits                 IMAGE     NONE      CHIP       TRUE      MEF
+PPIMAGE.CHIP.MK.MEF   OUTPUT {OUTPUT}.ch.mk.fits              MASK      NONE      CHIP       TRUE      MEF
+PPIMAGE.CHIP.WT.MEF   OUTPUT {OUTPUT}.ch.wt.fits              WEIGHT    NONE      CHIP       TRUE      MEF
+PPIMAGE.CHIP.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits     IMAGE     NONE      CHIP       TRUE      SPLIT
+PPIMAGE.CHIP.MK.SPL   OUTPUT {OUTPUT}.{CHIP.NAME}.ch.mk.fits  MASK      NONE      CHIP       TRUE      SPLIT
+PPIMAGE.CHIP.WT.SPL   OUTPUT {OUTPUT}.{CHIP.NAME}.ch.wt.fits  WEIGHT    NONE      CHIP       TRUE      SPLIT
+
+PPIMAGE.OUTPUT.FPA1.MEF OUTPUT {OUTPUT}.b1.fits               IMAGE     NONE      FPA        TRUE      MEF
+PPIMAGE.OUTPUT.FPA2.MEF OUTPUT {OUTPUT}.b2.fits               IMAGE     NONE      FPA        TRUE      MEF
+PPIMAGE.OUTPUT.FPA1.SPL OUTPUT {OUTPUT}.{CHIP.NAME}.b1.fits   IMAGE     NONE      FPA        TRUE      SPLIT
+PPIMAGE.OUTPUT.FPA2.SPL OUTPUT {OUTPUT}.{CHIP.NAME}.b2.fits   IMAGE     NONE      FPA        TRUE      SPLIT
+
+PPIMAGE.STATS         OUTPUT {OUTPUT}.stats                   STATS     NONE      FPA        TRUE      MEF
+
+PPIMAGE.BIN1.MEF      OUTPUT {OUTPUT}.b1c.fits                IMAGE     NONE      CHIP       TRUE      MEF
+PPIMAGE.BIN2.MEF      OUTPUT {OUTPUT}.b2c.fits                IMAGE     NONE      CHIP       TRUE      MEF
+PPIMAGE.BIN1.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.b1.fits     IMAGE     NONE      CHIP       TRUE      SPLIT
+PPIMAGE.BIN2.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.b2.fits     IMAGE     NONE      CHIP       TRUE      SPLIT
+
+PPIMAGE.JPEG1         OUTPUT {OUTPUT}.b1.jpg                  JPEG      NONE      FPA        TRUE      NONE
+PPIMAGE.JPEG2         OUTPUT {OUTPUT}.b2.jpg                  JPEG      NONE      FPA        TRUE      NONE
+
+DVOCORR.MEF.OUTPUT    OUTPUT {OUTPUT}.fc.fits                 IMAGE     NONE      CHIP       TRUE      MEF
+DVOCORR.SPL.OUTPUT    OUTPUT {OUTPUT}.{CHIP.NAME}.fc.fits     IMAGE     NONE      CHIP       TRUE      SPLIT
+DVOFLAT.MEF.OUTPUT    OUTPUT {OUTPUT}.co.fits                 IMAGE     NONE      CHIP       TRUE      MEF
+DVOFLAT.SPL.OUTPUT    OUTPUT {OUTPUT}.{CHIP.NAME}.co.fits     IMAGE     NONE      CHIP       TRUE      SPLIT
+
+PSPHOT.RESID          OUTPUT {OUTPUT}.res.fits                IMAGE     NONE      CHIP       FALSE     NONE
+PSPHOT.BACKGND        OUTPUT {OUTPUT}.bck.fits                IMAGE     NONE      CHIP       FALSE     NONE
+PSPHOT.BACKSUB        OUTPUT {OUTPUT}.sub.fits                IMAGE     NONE      CHIP       FALSE     NONE
+PSPHOT.BACKMDL        OUTPUT {OUTPUT}.mdl.fits                IMAGE     NONE      CHIP       FALSE     NONE
+
+PSPHOT.OUTPUT.RAW     OUTPUT {OUTPUT}.{CHIP.NAME}             RAW       NONE      CHIP       TRUE      NONE
+PSPHOT.OUTPUT.SX      OUTPUT {OUTPUT}.sx                      SX        NONE      FPA        TRUE      NONE
+PSPHOT.OUTPUT.OBJ     OUTPUT {OUTPUT}.obj                     OBJ       NONE      FPA        TRUE      NONE
+PSPHOT.OUTPUT.CMP     OUTPUT {OUTPUT}.{CHIP.NAME}.cmp         CMP       NONE      CHIP       TRUE      NONE
+PSPHOT.OUT.CMF.SPL    OUTPUT {OUTPUT}.{CHIP.NAME}.cmf         CMF       NONE      CHIP       TRUE      SPLIT
+PSPHOT.OUT.CMF.MEF    OUTPUT {OUTPUT}.cmf                     CMF       NONE      CHIP       TRUE      NONE
+
+PSPHOT.PSF.SAVE       OUTPUT {OUTPUT}.psf                     PSF       NONE      CHIP       TRUE      NONE
+
+SOURCE.PLOT.MOMENTS   OUTPUT {OUTPUT}.mnt.png                 KAPA      NONE      FPA        TRUE      NONE
+SOURCE.PLOT.PSFMODEL  OUTPUT {OUTPUT}.psf.png                 KAPA      NONE      FPA        TRUE      NONE
+SOURCE.PLOT.APRESID   OUTPUT {OUTPUT}.dap.png                 KAPA      NONE      FPA        TRUE      NONE
+
+PSASTRO.OUTPUT.CMP    OUTPUT {OUTPUT}.{CHIP.NAME}.smp         CMP       NONE      CHIP       TRUE      NONE
+PSASTRO.OUT.CMF.SPL   OUTPUT {OUTPUT}.{CHIP.NAME}.smf         CMF       NONE      CHIP       TRUE      NONE
+PSASTRO.OUTPUT.CMF   OUTPUT {OUTPUT}.{CHIP.NAME}.smf         CMF       NONE      CHIP       TRUE      NONE
+PSASTRO.OUT.CMF.MEF   OUTPUT {OUTPUT}.smf                     CMF       NONE      FPA        TRUE      NONE
+PSASTRO.OUT.ASTROM    OUTPUT {OUTPUT}.ast                     ASTROM    NONE      FPA        TRUE      NONE
+
+PSWARP.OUTPUT         OUTPUT {OUTPUT}.fits                    IMAGE     NONE      FPA        TRUE      NONE
+PSWARP.OUTPUT.MASK    OUTPUT {OUTPUT}.mk.fits                 MASK      NONE      FPA        TRUE      NONE
+PSWARP.OUTPUT.WEIGHT  OUTPUT {OUTPUT}.wt.fits                 WEIGHT    NONE      FPA        TRUE      NONE
+PSWARP.OUTPUT.SOURCES OUTPUT {OUTPUT}.cmf                     CMF       NONE      FPA        TRUE      NONE
+PSWARP.BIN1           OUTPUT {OUTPUT}.b1.fits                 IMAGE     NONE      FPA        TRUE      NONE
+PSWARP.BIN2           OUTPUT {OUTPUT}.b2.fits                 IMAGE     NONE      FPA        TRUE      NONE
+PSWARP.CONFIG         OUTPUT {OUTPUT}.pswarp.mdc              TEXT      NONE      FPA        TRUE      NONE
+
+PPSUB.OUTPUT          OUTPUT {OUTPUT}.fits                    IMAGE     NONE      FPA        TRUE      NONE
+PPSUB.OUTPUT.MASK     OUTPUT {OUTPUT}.mk.fits                 MASK      NONE      FPA        TRUE      NONE
+PPSUB.OUTPUT.WEIGHT   OUTPUT {OUTPUT}.wt.fits                 WEIGHT    NONE      FPA        TRUE      NONE
+PPSUB.CONFIG          OUTPUT {OUTPUT}.ppSub.mdc               TEXT      NONE      FPA        TRUE      NONE
+
+PPSTACK.OUTPUT        OUTPUT {OUTPUT}.fits                    IMAGE     NONE      FPA        TRUE      NONE
+PPSTACK.OUTPUT.MASK   OUTPUT {OUTPUT}.mk.fits                 MASK      NONE      FPA        TRUE      NONE
+PPSTACK.OUTPUT.WEIGHT OUTPUT {OUTPUT}.wt.fits                 WEIGHT    NONE      FPA        TRUE      NONE
+PPSTACK.CONFIG        OUTPUT {OUTPUT}.ppStack.mdc             TEXT      NONE      FPA        TRUE      NONE
+
+PPSTAMP.OUTPUT        OUTPUT {OUTPUT}.fits                    IMAGE     NONE      FPA        TRUE      NONE
+PPSTAMP.CHIP.MEF      OUTPUT {OUTPUT}.ch.fits                 IMAGE     NONE      CHIP       FALSE     MEF
+
+PPSIM.OUTPUT          OUTPUT {OUTPUT}.{CHIP.NAME}.fits        IMAGE     NONE      CHIP       TRUE      SPLIT
+
+PPARITH.OUTPUT.IMAGE  OUTPUT {OUTPUT}.fits                    IMAGE     NONE      CHIP       TRUE      NONE
+PPARITH.OUTPUT.MASK   OUTPUT {OUTPUT}.fits                    MASK      NONE      CHIP       TRUE      NONE
+
+LOG.IMFILE            OUTPUT {OUTPUT}.{CHIP.NAME}.log         TEXT      NONE      CHIP       TRUE      NONE
+LOG.EXP               OUTPUT {OUTPUT}.log                     TEXT      NONE      FPA        TRUE      NONE
+
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/format_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/format_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/format_mef.config	(revision 42661)
@@ -0,0 +1,155 @@
+# LBCred format.config, copied from MegaCam format_mef.config
+# Like Megacam, LBC has an FPA in a multi-extension fits file, with one chip per extension
+
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	LBT-DX
+	INSTRUME	STR	LBC-RED
+	NAXIS           S32     0
+	EXTEND		BOOL	T
+	NEXTEND		S32	4
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# The extensions represent chips
+	FPA.OBS	STR	OBS_ID	# A PHU keyword for unique identifier
+	CHIP.NAME	STR	EXTNAME	# An extension keyword for unique identifie
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chipName:chipType
+	LBCCHIP1	STR	CHIP1:Chip
+	LBCCHIP2	STR	CHIP2:Chip
+	LBCCHIP3	STR	CHIP3:Chip
+	LBCCHIP4	STR	CHIP4:Chip
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	Chip	STR	Cell:Cell
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts to use
+	Cell	METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	TRIMSEC
+	# Not sure about these...
+		CELL.X0			S32	0
+		CELL.Y0			S32	0
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAIN
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTERID    STR     FILTER
+        FPA.FILTER      STR     FILTER
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     OBSRA
+        FPA.DEC         STR     OBSDEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.OBSTYPE	STR	IMAGETYPE
+	FPA.OBJECT	STR	OBJECT
+	FPA.FOCUS	STR	Z4 # ???
+	FPA.TIME	STR	MJD_OBS
+#	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	FPA.TEMP	STR	CCDTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     EXPTIME
+        CELL.READNOISE  STR     RDNOISE
+	CELL.TIME	STR	MJD_OBS
+#	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     LBCBIN
+        CELL.YBIN       STR     LBCBIN
+	CELL.SATURATION	STR	SATURATE
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	LBT-DX
+	FPA.INSTRUMENT		STR	LBC-RED		# this value is used in ipprc.config to find the recipes
+	FPA.DETECTOR	        STR	LBC-RED
+	CELL.TIMESYS		STR	UTC
+	FPA.TIMESYS		STR	UTC
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4608
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4608
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	65536.0
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	# Do the x0, y0 positions need to account for the gaps??? 
+	# How do I specify rotation?
+	# 
+	# LBC layout is
+	#
+	#   444444444
+	#   444444444
+	#   444444444
+	#
+	#  333 222 111
+	#  333 222 111
+	#  333 222 111
+	#  333 222 111
+	#  333 222 111
+	#  333 222 111
+	# 
+	CHIP.X0		METADATA
+		CHIP1	S32	4096
+		CHIP2	S32	2048
+		CHIP3	S32	0
+	# This is probably wrong!
+		CHIP4	S32	1024
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		CHIP1	S32	0
+		CHIP2	S32	0
+		CHIP3	S32	0
+		CHIP4	S32	4608
+	END
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/ppImage.config	(revision 42661)
@@ -0,0 +1,192 @@
+### ppImage recipe configuration file for Megacam
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	NONE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	0		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# for a test, turn off selected detrend types
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	TRUE		# Bias subtraction
+DARK		BOOL	FALSE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+
+# binned output image options
+BIN1.XBIN               S32     18
+BIN1.YBIN               S32     18
+BIN2.XBIN               S32     144
+BIN2.YBIN               S32     144
+
+# LBCred  needs fringe subtraction (?)
+FRINGE		BOOL	TRUE		# Fringe subtraction
+
+# this table lists extra constraints which should be applied when
+# selecting the detrend images.
+# note: camera and time are always applied
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+#   EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   DETTYPE STR DOMEFLAT.RAW
+#   VERSION STR SKYFLAT.RAW
+#   VERSION STR DOMEFLAT.CORR.XX
+#   VERSION STR SKYFLAT.CORR
+  END
+  FLAT_CORRECTION METADATA
+    FILTER   STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR FPA.TWILIGHT
+  END
+  SHUTTER METADATA
+  END
+  MASK METADATA
+  END	
+END
+
+# only apply the fringe for these filters
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR i
+FRINGE.FILTERS	STR z
+FRINGE.FILTERS	STR y
+
+
+# Standard chip processing
+CHIP    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
+  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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       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    TRUE            # Overscan subtraction
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF      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    TRUE            # Overscan subtraction
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     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    TRUE            # Overscan subtraction
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP    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
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA    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
+  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?
+END 
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/ppMerge.config	(revision 42661)
@@ -0,0 +1,43 @@
+
+# Bias combination --- don't want min/max rejection
+PPMERGE_BIAS	METADATA
+   REJ		F32	3.0		# Rejection threshold (sigma)
+   ITER		S32	2		# Number of rejection iterations
+   FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+   FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+   WEIGHTS	BOOL	FALSE		# Use image weights?
+   COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Dark combination --- don't want min/max rejection
+# More aggressive clipping than bias, so as to remove CRs
+PPMERGE_DARK	METADATA
+  REJ		F32	2.0		# Rejection threshold (sigma)
+  ITER		S32	4		# Number of rejection iterations
+  FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+  FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+  WEIGHTS	BOOL	FALSE		# Use image weights?
+  COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Flat combination --- use min/max rejection
+PPMERGE_FLAT	METADATA
+	REJ		F32	3.0		# Rejection threshold (sigma)
+	ITER		S32	1		# Number of rejection iterations
+	FRACHIGH	F32	0.3		# Fraction of high pixels to reject immediately
+	FRACLOW		F32	0.1		# Fraction of low pixels to reject immediately
+	NKEEP		S32	5		# Minimum number of pixels in stack to keep
+	WEIGHTS		BOOL	TRUE		# Use image weights?
+	COMBINE		STR	MEAN		# Statistic to use for combination: 
+END
+
+
+# Fringe combination --- already included in default, above
+PPMERGE_FRINGE	METADATA
+	FRACHIGH	F32	0.1		# Fraction of high pixels to reject immediately
+	WEIGHTS		BOOL	TRUE		# Use image weights?
+END
+
+# Mask generation --- already included in default, above
+PPMERGE_MASK	METADATA
+END
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/psastro.config	(revision 42661)
@@ -0,0 +1,67 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32    1000.
+PSASTRO.GRID.SCALE     F32      50.
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+PSASTRO.MATCH.RADIUS   F32     12.0
+
+PSASTRO.MAX.NRAW       S32      1500   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF       S32      1500   # max stars accepted for fitting (0 for all)
+
+PSASTRO.MIN.INST.MAG.RAW       F32      -14.5  # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32       -8.0  # max instrumental magnitude for stars accepted for fitting
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      10   # min fitted stars in solution
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.RADIUS.N0    F32    12.0
+PSASTRO.MOSAIC.RADIUS.N1    F32    0.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N2    F32    0.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N3    F32    6.0 
+
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+
+PSASTRO.MOSAIC.GRADIENT.NX    S32      2   # number of x-dir cells per chip
+PSASTRO.MOSAIC.GRADIENT.NY    S32      4   # number of y-dir cells per chip
+
+# use this recipe to set a tight constraint
+PSASTRO.FINE METADATA
+  PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+  PSASTRO.MOSAIC.RADIUS.N0    F32    8.0
+  PSASTRO.MOSAIC.RADIUS.N1    F32    0.0
+  PSASTRO.MOSAIC.RADIUS.N2    F32    4.0
+  PSASTRO.MOSAIC.RADIUS.N3    F32    2.0
+
+  PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      3 # fit order (-1 means use default)
+END
+
+# XXX Test for taurus
+# PSASTRO.GRID.MIN.SIGMA F32  3.0
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/psphot.config	(revision 42661)
@@ -0,0 +1,6 @@
+
+# turn these on to see specific outputs
+SAVE.PLOTS     	BOOL    TRUE
+
+# PSF model parameters : choose the PSF model desired
+PSF_MODEL           STR  PS_MODEL_QGAUSS
Index: /branches/eam_branches/ippconfig.20240412/lbc_red/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lbc_red/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lbc_red/rejections.config	(revision 42661)
@@ -0,0 +1,38 @@
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  0.5
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SNR         F32  0.0
+  IMFILE.BIN.STDEV   F32  0.5
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  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  3.0
+  ENSEMBLE.STDEV     F32  3.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
+# IMFILE.MEAN is the maximum permitted mean value for an imfile, relative to the standard deviation
+# IMFILE.STDEV is the maximum permitted standard deviation for an imfile
+# EXP.MEAN is the maximum permitted mean value for an exposure, relative to the standard deviation
+# EXP.STDEV is the maximum permitted standard deviation for an exposure
+# EXP.MEANSTDEV is the maximum permitted mean standard deviation for an exposure relative to the mean
+# ENSEMBLE.MEAN is the maximum permitted mean for an ensemble of exposures
+# ENSEMBLE.STDEV is the maximum permitted standard deviation for an ensemble of exposures
+# ENSEMBLE.MEANSTDEV is the maximum permitted mean standard deviation for an ensemble of exposures
+# IMFILE.SNR is the minimum permitted signal-to-noise for an imfile
+# EXP.SNR is the minimum permitted signal-to-noise for an exposure
+# These values (all except FILTER) may be zero, in which case no clipping is applied.
Index: /branches/eam_branches/ippconfig.20240412/lris_blue/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lris_blue/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lris_blue/camera.config	(revision 42661)
@@ -0,0 +1,20 @@
+# Camera configuration file for LRIS Blue: describes the camera
+
+# File formats that we know about
+FORMATS         METADATA
+	RAW	STR	lris_blue/format_raw.config
+	MEF	STR	lris_blue/format_mef.config
+END
+                                                                                
+                                                                                
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        LeftChip	STR	LeftAmp RightAmp
+        RightChip	STR	LeftAmp RightAmp
+END
+
+
+# Recipe options
+RECIPES		METADATA
+#	PSPHOT		STR	psphot.config		# psphot details
+END
Index: /branches/eam_branches/ippconfig.20240412/lris_blue/format_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lris_blue/format_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lris_blue/format_mef.config	(revision 42661)
@@ -0,0 +1,79 @@
+# The Low Resolution Imager and Spectrograph (LRIS) blue side
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	Keck I
+	INSTRUME	STR	LRISBLUE
+	FORMAT		STR	MEF
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# There are no extensions
+	FPA.OBS		STR	OBSNUM	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	ccd1	STR	LeftChip:LeftAmp:left LeftChip:RightAmp:right
+	ccd2	STR	RightChip:LeftAmp:left RightChip:RightAmp:right
+END
+
+# Specify the cell data
+CELLS	METADATA
+	left		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECL1 BSECL2
+		CELL.TRIMSEC		STR	TSECL
+		CELL.GAIN		STR	GAINL
+		CELL.X0			S32	0
+	END
+
+	right	METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECR1 BSECR2
+		CELL.TRIMSEC		STR	TSECR
+		CELL.GAIN		STR	GAINR
+		CELL.X0			S32	1024
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.AIRMASS		STR	AIRMASS
+	FPA.FILTER		STR	BLUFILT
+	FPA.POSANGLE		STR	ROTPOSN
+	FPA.RA			STR	RA
+	FPA.DEC			STR	DEC
+	CELL.EXPOSURE		STR	EXPOSURE
+	CELL.DARKTIME		STR	EXPOSURE	# No special darktime header; use exposure time
+	CELL.TIME		STR	MJD-OBS
+	CELL.XBIN		STR	CCDSUM
+	CELL.YBIN		STR	CCDSUM
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.RADECSYS		STR	ICRS
+	CELL.TIMESYS		STR	UTC
+	CELL.READDIR		S32	1
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CELL.READNOISE		F32	2.5
+	CELL.SATURATION		F32	65536
+	CELL.BAD		F32	0
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	CELL.TIME	STR	MJD
+END
Index: /branches/eam_branches/ippconfig.20240412/lris_blue/format_raw.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lris_blue/format_raw.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lris_blue/format_raw.config	(revision 42661)
@@ -0,0 +1,113 @@
+# The Low Resolution Imager and Spectrograph (LRIS) blue side
+
+# We have no choice but to hard-code the various regions, because Keck
+# only stores them as:
+# WINDOW  = '1,0,0,2048,4096'
+# PREPIX  =                   51
+# POSTPIX =                   80
+# BINNING = '1,1     '
+# AMPPSIZE= '[1:1024,1:4096]'
+
+# I don't know how we would get the IPP to react to changes in the
+# windowing on the fly --- we have no mechanism for setting the region
+# sizes on the basis of the above keywords.  Therefore, we hard-code
+# the regions and assert on our assumptions in the RULE.
+
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	Keck I
+	INSTRUME	STR	LRISBLUE
+	AMPLIST		STR	1,4,0,0
+	WINDOW		STR	1,0,0,2048,4096
+	PREPIX		S32	51
+	POSTPIX		S32	80
+	BINNING		STR	1,1
+	AMPPSIZE	STR	[1:1024,1:4096]
+	NAXIS1		S32	4620
+	NAXIS2		S32	4096
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	OBSNUM	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	LeftChip:LeftAmp:amp1 LeftChip:RightAmp:amp2 RightChip:LeftAmp:amp3 RightChip:RightAmp:amp4
+
+# Specify the cell data
+CELLS	METADATA
+	amp1		METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1:51,1:4096];[4301:4380,1:4096]
+		CELL.TRIMSEC		STR	[205:1228,1:4096]
+		CELL.GAIN		F32	1.542
+		CELL.X0			S32	0
+	END
+
+	amp2	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[52:102,1:4096];[4381:4460,1:4096]
+		CELL.TRIMSEC		STR	[1229:2252,1:4096]
+		CELL.GAIN		F32	1.546
+		CELL.X0			S32	1024
+	END
+
+	amp3		METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[103:153,1:4096];[4461:4540,1:4096]
+		CELL.TRIMSEC		STR	[2253:3276,1:4096]
+		CELL.GAIN		F32	1.632
+		CELL.X0			S32	0
+	END
+
+	amp4	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[154:204,1:4096];[4541:4620,1:4096]
+		CELL.TRIMSEC		STR	[3277:4300,1:4096]
+		CELL.GAIN		F32	1.633
+		CELL.X0			S32	1024
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.AIRMASS		STR	AIRMASS
+	FPA.FILTER		STR	BLUFILT
+	FPA.POSANGLE		STR	ROTPOSN
+	FPA.RA			STR	RA
+	FPA.DEC			STR	DEC
+	CELL.EXPOSURE		STR	EXPOSURE
+	CELL.DARKTIME		STR	EXPOSURE	# No special darktime header; use exposure time
+	CELL.TIME		STR	MJD-OBS
+	CELL.XBIN		STR	CCDSUM
+	CELL.YBIN		STR	CCDSUM
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.RADECSYS		STR	ICRS
+	CELL.TIMESYS		STR	UTC
+	CELL.READDIR		S32	1
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CELL.READNOISE		F32	2.5
+	CELL.SATURATION		F32	65536
+	CELL.BAD		F32	0
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	CELL.TIME	STR	MJD
+END
Index: /branches/eam_branches/ippconfig.20240412/lris_red/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lris_red/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lris_red/camera.config	(revision 42661)
@@ -0,0 +1,19 @@
+# Camera configuration file for LRIS-Red: describes the camera
+
+# File formats that we know about
+FORMATS         METADATA
+        RAW     STR     lris_red/format_raw.config
+	SPEC	STR	lris_red/format_spec.config
+END
+ 
+ 
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        RedChip		STR	LeftSide RightSide
+END
+
+
+# Recipes to use when processing this camera
+RECIPES		METADATA
+	PPMERGE		STR	ppMerge.config		# Recipe to use for ppMerge
+END
Index: /branches/eam_branches/ippconfig.20240412/lris_red/format_raw.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lris_red/format_raw.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lris_red/format_raw.config	(revision 42661)
@@ -0,0 +1,95 @@
+# The Low Resolution Imager and Spectrograph (LRIS) red side
+
+# We have no choice but to hard-code the various regions, because Keck
+# only stores them as:
+# WINDOW  = '0,0,0,2048,2048'
+# PREPIX  =                   20
+# POSTPIX =                   80
+# BINNING = '1,1     '
+# AMPPSIZE= '[1:1024,1:4096]'
+
+# I don't know how we would get the IPP to react to changes in the
+# windowing on the fly --- we have no mechanism for setting the region
+# sizes on the basis of the above keywords.  Therefore, we hard-code
+# the regions and assert on our assumptions in the RULE.
+
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	Keck I
+	INSTRUME	STR	LRIS
+	AMPLIST		STR	2,1,0,0
+	WINDOW		STR	0,0,0,2048,2048
+	PREPIX		S32	20
+	POSTPIX		S32	80
+	BINNING		STR	1, 1
+	CCDPSIZE	STR	[1:2048,1:2048]
+	NAXIS1		S32	2248
+	NAXIS2		S32	2048
+	IMTYPE		STR	TWOAMPTOP
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents a single chip
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	OBSNUM	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	RedChip:LeftSide:left RedChip:RightSide:right
+
+# Specify the cell data
+CELLS	METADATA
+	left	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1:20,1:2048];[2089:2168,1:2048]
+		CELL.TRIMSEC		STR	[41:1064,1:2048]
+		CELL.GAIN		F32	1.98
+		CELL.READNOISE		F32	6.1
+		CELL.X0			S32	0
+	END
+
+	right	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[21:40,1:2048];[2169:2248,1:2048]
+		CELL.TRIMSEC		STR	[1065:2088,1:2048]
+		CELL.GAIN		F32	2.17
+		CELL.READNOISE		F32	6.3
+		CELL.X0			S32	1023
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	POSANG
+	FPA.RA		STR	OBJ-RA
+	FPA.DEC		STR	OBJ-DEC
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.RADECSYS	STR	ICRS
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.SATURATION	F32	65535
+	CELL.BAD	F32	0
+	CELL.XBIN	S32	1
+	CELL.YBIN	S32	1
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+END
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+        FPA.RA          STR     HOURS
+        FPA.DEC         STR     DEGREES
+        CELL.TIME       STR     MJD
+END
Index: /branches/eam_branches/ippconfig.20240412/lris_red/format_spec.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lris_red/format_spec.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lris_red/format_spec.config	(revision 42661)
@@ -0,0 +1,96 @@
+# The Low Resolution Imager and Spectrograph (LRIS) red side
+
+# We have no choice but to hard-code the various regions, because Keck
+# only stores them as:
+# WINDOW  = '0,0,550,2048,1000'
+# PREPIX  =                   20
+# POSTPIX =                   80
+# BINNING = '1,1     '
+# AMPPSIZE= '[1:1024,1:4096]'
+
+# I don't know how we would get the IPP to react to changes in the
+# windowing on the fly --- we have no mechanism for setting the region
+# sizes on the basis of the above keywords.  Therefore, we hard-code
+# the regions and assert on our assumptions in the RULE.
+
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	Keck I
+	INSTRUME	STR	LRIS
+	AMPLIST		STR	2,1,0,0
+	WINDOW		STR	0,0,550,2048,1000	# Narrow spectroscopy format
+	PREPIX		S32	20
+	POSTPIX		S32	80
+	BINNING		STR	1, 1
+	CCDPSIZE	STR	[1:2048,1:2048]
+	NAXIS1		S32	2248
+	NAXIS2		S32	1000
+	IMTYPE		STR	TWOAMPTOP
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents a single chip
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	OBSNUM	# A PHU keyword for unique identifier within the hierarchy level
+	CHIP.NAME	STR	INSTRUME	# An extension keyword for unique identifier
+END
+
+# What's in the FITS file?
+CONTENTS	STR	RedChip:LeftSide:left RedChip:RightSide:right
+
+# Specify the cell data
+CELLS	METADATA
+	left	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1:20,1:1000];[2089:2168,1:1000]
+		CELL.TRIMSEC		STR	[41:1064,1:1000]
+		CELL.GAIN		F32	1.98
+		CELL.READNOISE		F32	6.1
+		CELL.X0			S32	0
+	END
+
+	right	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[21:40,1:1000];[2169:2248,1:1000]
+		CELL.TRIMSEC		STR	[1065:2088,1:1000]
+		CELL.GAIN		F32	2.17
+		CELL.READNOISE		F32	6.3
+		CELL.X0			S32	1023
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	POSANG
+	FPA.RA		STR	OBJ-RA
+	FPA.DEC		STR	OBJ-DEC
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.RADECSYS	STR	ICRS
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.SATURATION	F32	65535
+	CELL.BAD	F32	0
+	CELL.XBIN	S32	1
+	CELL.YBIN	S32	1
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+END
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+        FPA.RA          STR     HOURS
+        FPA.DEC         STR     DEGREES
+        CELL.TIME       STR     MJD
+END
Index: /branches/eam_branches/ippconfig.20240412/lulin/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/Makefile.am	(revision 42661)
@@ -0,0 +1,22 @@
+
+installdir = $(datadir)/ippconfig/lulin
+
+install_files = \
+	dvo.config \
+	camera.config \
+	format.config \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	pswarp.config \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/lulin/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/camera.config	(revision 42661)
@@ -0,0 +1,82 @@
+# Camera configuration file for Lulin 1m Optical Telescope
+
+# File formats that we know about
+FORMATS         METADATA
+        SIMPLE	STR     lulin/format.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip	STR	Cell
+END
+
+# Lookup table for filter name to filter abstract name
+FILTER.ID       METADATA 
+	UNKNOWN	STR	UNKNOWN
+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	lulin		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias     STR BIAS
+  zero     STR BIAS
+  dark     STR DARK
+  flat     STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR LIGHT
+  science  STR LIGHT
+END
+
+# Recipe options
+RECIPES         METADATA
+        # Other recipes
+        PSPHOT          STR     lulin/psphot.config           # psphot details
+        PSASTRO         STR     lulin/psastro.config          # psastro details
+	PSWARP		STR	lulin/pswarp.config		# pswarp details
+        PPIMAGE         STR     lulin/ppImage.config          # ppImage recipe
+	REJECTIONS      STR     lulin/rejections.config       # rejection recipe
+	PPMERGE		STR	lulin/ppMerge.config		# ppMerge recipe
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	recipes/filerules-simple.mdc		# File rules appropriate for MEF format
+
+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.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
+
+  PSF.HEAD   STR {CHIP.NAME}.hdr
+  PSF.TABLE  STR {CHIP.NAME}.psf_model
+  PSF.RESID  STR {CHIP.NAME}.psf_resid
+
+  REF.ASTROM STR {CHIP.NAME}.ref_astrom
+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.N}		# Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/lulin/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/dvo.config	(revision 42661)
@@ -0,0 +1,67 @@
+
+# location of DVO database tables
+CATDIR			/data/alala.0/eugene/isp/catdir
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+#DATE-KEYWORD		DATE-OBS
+#DATE-MODE		yyyy-mm-dd
+#UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+
Index: /branches/eam_branches/ippconfig.20240412/lulin/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/format.config	(revision 42661)
@@ -0,0 +1,100 @@
+# The LOT1m data is a single chip with single cell
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	LOT1m
+	INSTRUME	STR	PI1300B
+	OBSERVAT	STR	NCU Lulin observatory, Taiwan
+	CAMERA		STR	Princeton Instruments 1300B
+	DETECTOR	STR	EEV 1340x1300 CCD36-4
+	NAXIS		S32	2
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	OWNER	# A PHU keyword for unique identifier
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:Amplifier
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts to use
+	Amplifier	METADATA
+		CELL.BIASSEC.SOURCE	STR	NONE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[0:0,0:0]
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.DETECTOR	STR	DETECTOR
+	FPA.OBSTYPE	STR	IMAGETYP
+	FPA.TIME	STR	DATE-OBS TIME-OBS
+	FPA.TIMESYS	STR	TIMESYS
+        FPA.RA          STR     OBJCTRA
+        FPA.DEC         STR     OBJCTDEC
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.TEMP	STR	CCD-TEMP
+	CHIP.TEMP	STR	CCD-TEMP
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     EXPTIME
+        CELL.READNOISE  STR     SLOWRN
+	CELL.GAIN	STR	SLOWGAIN
+	CELL.TIME	STR	DATE-OBS TIME-OBS
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     XBINNING
+        CELL.YBIN       STR     YBINNING
+	CELL.XWINDOW	STR	XORGSUBF
+	CELL.YWINDOW	STR	YORGSUBF
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+        FPA.AIRMASS     	F32	0.0
+        FPA.FILTERID    	STR     UNKNOWN
+        FPA.FILTER      	STR     UNKNOWN
+	FPA.OBJECT		STR	Unknown object
+        FPA.RADECSYS    	STR     ICRS
+        FPA.POSANGLE    	STR     0.0
+	FPA.FOCUS		STR	0.0
+	FPA.ALT			STR	0.0
+	FPA.AZ			STR	0.0
+
+	CHIP.XSIZE		S32	1340
+	CHIP.YSIZE		S32	1300
+	CELL.XSIZE		S32	1340
+	CELL.YSIZE		S32	1300
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	50000.0
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.X0			S32	0
+	CELL.Y0			S32	0
+	CHIP.X0			S32	0
+	CHIP.Y0			S32	0
+	CHIP.XPARITY		S32	1
+	CHIP.YPARITY		S32	1
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+#	CELL.GAIN	STR	SELECT gain FROM camera WHERE chip_id = '{CHIP.NAME}' AND cell_id = '{CELL.NAME}'
+END		
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	SEPARATE YEAR.FIRST
+	CELL.TIME	STR	SEPARATE YEAR.FIRST
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/lulin/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/ppImage.config	(revision 42661)
@@ -0,0 +1,191 @@
+### ppImage recipe configuration file for Megacam
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	NONE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	0		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# for a test, turn off selected detrend types
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	FALSE		# Bias subtraction
+DARK		BOOL	TRUE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+
+# binned output image options
+BIN1.XBIN               S32     18
+BIN1.YBIN               S32     18
+BIN2.XBIN               S32     144
+BIN2.YBIN               S32     144
+
+# megacam needs fringe subtraction
+FRINGE		BOOL	TRUE		# Fringe subtraction
+
+# this table lists extra constraints which should be applied when
+# selecting the detrend images.
+# note: camera and time are always applied
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+#   EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   DETTYPE STR DOMEFLAT.RAW
+#   VERSION STR SKYFLAT.RAW
+#   VERSION STR DOMEFLAT.CORR.XX
+#   VERSION STR SKYFLAT.CORR
+  END
+  FLAT_CORRECTION METADATA
+    FILTER   STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR FPA.TWILIGHT
+  END
+  SHUTTER METADATA
+  END
+  MASK METADATA
+  END	
+END
+
+# only apply the fringe for these filters
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR i
+FRINGE.FILTERS	STR z
+
+
+# Standard chip processing
+CHIP    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END 
Index: /branches/eam_branches/ippconfig.20240412/lulin/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/ppMerge.config	(revision 42661)
@@ -0,0 +1,40 @@
+
+# Bias combination --- don't want min/max rejection
+PPMERGE_BIAS	METADATA
+   REJ		F32	3.0		# Rejection threshold (sigma)
+   ITER		S32	2		# Number of rejection iterations
+   FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+   FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+   WEIGHTS	BOOL	FALSE		# Use image weights?
+   COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Dark combination --- don't want min/max rejection
+# More aggressive clipping than bias, so as to remove CRs
+PPMERGE_DARK	METADATA
+  REJ		F32	2.0		# Rejection threshold (sigma)
+  ITER		S32	4		# Number of rejection iterations
+  FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+  FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+  WEIGHTS	BOOL	FALSE		# Use image weights?
+  COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Flat combination --- use min/max rejection
+PPMERGE_FLAT	METADATA
+	REJ		F32	3.0		# Rejection threshold (sigma)
+	ITER		S32	1		# Number of rejection iterations
+	FRACHIGH	F32	0.3		# Fraction of high pixels to reject immediately
+	FRACLOW		F32	0.1		# Fraction of low pixels to reject immediately
+	NKEEP		S32	5		# Minimum number of pixels in stack to keep
+	WEIGHTS		BOOL	FALSE		# Use image weights?
+	COMBINE		STR	MEAN		# Statistic to use for combination: 
+END
+
+
+# Fringe combination --- already included in default, above
+PPMERGE_FRINGE	METADATA
+	FRACHIGH	F32	0.1		# Fraction of high pixels to reject immediately
+	WEIGHTS		BOOL	FALSE		# Use image weights?
+END
+
Index: /branches/eam_branches/ippconfig.20240412/lulin/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/psastro.config	(revision 42661)
@@ -0,0 +1,74 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32    2500.
+PSASTRO.GRID.SCALE     F32      50.
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32 1.0
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.FIT.NITER S32   3
+PSASTRO.MATCH.RADIUS    F32   12.0
+PSASTRO.MATCH.RADIUS.N0 F32   15.0
+PSASTRO.MATCH.RADIUS.N1 F32   10.0
+PSASTRO.MATCH.RADIUS.N2 F32    5.0
+
+PSASTRO.MAX.NRAW       S32      1500   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF       S32      1500   # max stars accepted for fitting (0 for all)
+
+PSASTRO.MIN.INST.MAG.RAW       F32      -15.5  # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32       -8.0  # max instrumental magnitude for stars accepted for fitting
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      10   # min fitted stars in solution
+
+PSASTRO.MOSAIC.MODE           BOOL     FALSE
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.RADIUS.N0    F32    10.0
+PSASTRO.MOSAIC.RADIUS.N1    F32     8.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N2    F32     8.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N3    F32     4.0 
+
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      3 # fit order (-1 means use default)
+
+PSASTRO.MOSAIC.GRADIENT.NX    S32      2   # number of x-dir cells per chip
+PSASTRO.MOSAIC.GRADIENT.NY    S32      4   # number of y-dir cells per chip
+
+# use this recipe to set a tight constraint
+PSASTRO.FINE METADATA
+  PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+  PSASTRO.MOSAIC.RADIUS.N0    F32    8.0
+  PSASTRO.MOSAIC.RADIUS.N1    F32    0.0
+  PSASTRO.MOSAIC.RADIUS.N2    F32    4.0
+  PSASTRO.MOSAIC.RADIUS.N3    F32    4.0
+
+  PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+END
Index: /branches/eam_branches/ippconfig.20240412/lulin/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/psphot.config	(revision 42661)
@@ -0,0 +1,6 @@
+
+# turn these on to see specific outputs
+SAVE.PLOTS     	BOOL    TRUE
+
+# PSF model parameters : choose the PSF model desired
+PSF_MODEL           STR  PS_MODEL_QGAUSS
Index: /branches/eam_branches/ippconfig.20240412/lulin/pswarp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/pswarp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/pswarp.config	(revision 42661)
@@ -0,0 +1,3 @@
+### Megacam recipe for pswarp
+
+ASTROM.SOURCE	STR	PSASTRO.OUTPUT	# Source file rule for astrometry, or NULL
Index: /branches/eam_branches/ippconfig.20240412/lulin/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/lulin/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/lulin/rejections.config	(revision 42661)
@@ -0,0 +1,38 @@
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  0.5
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SNR         F32  0.0
+  IMFILE.BIN.STDEV   F32  0.5
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  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  3.0
+  ENSEMBLE.STDEV     F32  3.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
+# IMFILE.MEAN is the maximum permitted mean value for an imfile, relative to the standard deviation
+# IMFILE.STDEV is the maximum permitted standard deviation for an imfile
+# EXP.MEAN is the maximum permitted mean value for an exposure, relative to the standard deviation
+# EXP.STDEV is the maximum permitted standard deviation for an exposure
+# EXP.MEANSTDEV is the maximum permitted mean standard deviation for an exposure relative to the mean
+# ENSEMBLE.MEAN is the maximum permitted mean for an ensemble of exposures
+# ENSEMBLE.STDEV is the maximum permitted standard deviation for an ensemble of exposures
+# ENSEMBLE.MEANSTDEV is the maximum permitted mean standard deviation for an ensemble of exposures
+# IMFILE.SNR is the minimum permitted signal-to-noise for an imfile
+# EXP.SNR is the minimum permitted signal-to-noise for an exposure
+# These values (all except FILTER) may be zero, in which case no clipping is applied.
Index: /branches/eam_branches/ippconfig.20240412/mcshort/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mcshort/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mcshort/camera.config	(revision 42661)
@@ -0,0 +1,103 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# Camera configuration file for MegaCam: describes the camera
+
+# File formats that we know about
+FORMATS		METADATA
+	RAW	STR	mcshort/format_raw.config
+	SPLICED	STR	mcshort/format_spliced.config
+	SPLIT	STR	mcshort/format_split.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA	METADATA
+#	ccd00	STR	LeftAmp RightAmp
+#	ccd01	STR	LeftAmp RightAmp
+#	ccd02	STR	LeftAmp RightAmp
+#	ccd03	STR	LeftAmp RightAmp
+#	ccd04	STR	LeftAmp RightAmp
+#	ccd05	STR	LeftAmp RightAmp
+#	ccd06	STR	LeftAmp RightAmp
+#	ccd07	STR	LeftAmp RightAmp
+#	ccd08	STR	LeftAmp RightAmp
+#	ccd09	STR	LeftAmp RightAmp
+#	ccd10	STR	LeftAmp RightAmp
+#	ccd11	STR	LeftAmp RightAmp
+	ccd12	STR	LeftAmp RightAmp
+	ccd13	STR	LeftAmp RightAmp
+	ccd14	STR	LeftAmp RightAmp
+#	ccd15	STR	LeftAmp RightAmp
+#	ccd16	STR	LeftAmp RightAmp
+#	ccd17	STR	LeftAmp RightAmp
+#	ccd18	STR	LeftAmp RightAmp
+#	ccd19	STR	LeftAmp RightAmp
+#	ccd20	STR	LeftAmp RightAmp
+	ccd21	STR	LeftAmp RightAmp
+	ccd22	STR	LeftAmp RightAmp
+	ccd23	STR	LeftAmp RightAmp
+#	ccd24	STR	LeftAmp RightAmp
+#	ccd25	STR	LeftAmp RightAmp
+#	ccd26	STR	LeftAmp RightAmp
+#	ccd27	STR	LeftAmp RightAmp
+#	ccd28	STR	LeftAmp RightAmp
+#	ccd29	STR	LeftAmp RightAmp
+#	ccd30	STR	LeftAmp RightAmp
+#	ccd31	STR	LeftAmp RightAmp
+#	ccd32	STR	LeftAmp RightAmp
+#	ccd33	STR	LeftAmp RightAmp
+#	ccd34	STR	LeftAmp RightAmp
+#	ccd35	STR	LeftAmp RightAmp
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+   u        STR   u.MP9301     
+   g        STR   g.MP9401     
+   r        STR   r.MP9601     
+   i        STR   i.MP9701     
+   z        MULTI
+   z        STR   z.MP9801     
+   z        STR   Zp           
+   z        STR   Zprime       
+
+   Ha       MULTI
+   Ha       STR   Ha.MP7605    
+   Ha       STR   Halpha       
+   Ha       STR   Haalpha.on   
+   HaOff    STR   HaOFF.MP7604 
+   	              		
+   CN       MULTI
+   CN       STR   CN.MP780     
+   CN       STR   cn.MP7803    
+   CN       STR   CN.MP7803    
+   	              		
+   TiO      MULTI
+   TiO      STR   TiO.MP77     
+   TiO      STR   tio.MP7701   
+   TiO      STR   TiO.MP7701   
+   NB920    STR   NB920        
+   	              		
+   B2F      STR   B2F          
+   Bj       STR   Bj           
+   Vj       STR   Vj           
+   Rj       STR   Rj           
+   Ij       STR   Ij           
+   Hb       STR   Hb           
+   HbOff    STR   HbOff        
+END
+
+# Recipe options
+RECIPES		METADATA
+	# Other recipes
+        PSPHOT          STR     megacam/psphot.config           # psphot details
+        PSASTRO         STR     megacam/psastro.config          # psastro details
+	PPSTATS		STR	megacam/ppStats.config		# ppStats recipe
+	PPIMAGE         STR     megacam/ppImage.config		# ppImage recipe
+END
+
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+FILERULES       STR     recipes/filerules-mef.mdc
+
Index: /branches/eam_branches/ippconfig.20240412/mcshort/format_raw.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mcshort/format_raw.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mcshort/format_raw.config	(revision 42661)
@@ -0,0 +1,336 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# The raw MegaCam data comes off the telescope with each of the chips stored in extensions of a MEF file.
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m
+	DETECTOR	STR	MegaCam
+	EXTEND		BOOL	T
+	NEXTEND		S32	72
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CELL	# The extensions represent cells
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chip name:type
+#	amp00		STR	ccd00:LeftAmp:left
+#	amp01		STR	ccd00:RightAmp:right
+#	amp02		STR	ccd01:LeftAmp:left
+#	amp03		STR	ccd01:RightAmp:right
+#	amp04		STR	ccd02:LeftAmp:left
+#	amp05		STR	ccd02:RightAmp:right
+#	amp06		STR	ccd03:LeftAmp:left
+#	amp07		STR	ccd03:RightAmp:right
+#	amp08		STR	ccd04:LeftAmp:left
+#	amp09		STR	ccd04:RightAmp:right
+#	amp10		STR	ccd05:LeftAmp:left
+#	amp11		STR	ccd05:RightAmp:right
+#	amp12		STR	ccd06:LeftAmp:left
+#	amp13		STR	ccd06:RightAmp:right
+#	amp14		STR	ccd07:LeftAmp:left
+#	amp15		STR	ccd07:RightAmp:right
+#	amp16		STR	ccd08:LeftAmp:left
+#	amp17		STR	ccd08:RightAmp:right
+#	amp18		STR	ccd09:LeftAmp:left
+#	amp19		STR	ccd09:RightAmp:right
+#	amp20		STR	ccd10:LeftAmp:left
+#	amp21		STR	ccd10:RightAmp:right
+#	amp22		STR	ccd11:LeftAmp:left
+#	amp23		STR	ccd11:RightAmp:right
+	amp24		STR	ccd12:LeftAmp:left
+	amp25		STR	ccd12:RightAmp:right
+	amp26		STR	ccd13:LeftAmp:left
+	amp27		STR	ccd13:RightAmp:right
+	amp28		STR	ccd14:LeftAmp:left
+	amp29		STR	ccd14:RightAmp:right
+#	amp30		STR	ccd15:LeftAmp:left
+#	amp31		STR	ccd15:RightAmp:right
+#	amp32		STR	ccd16:LeftAmp:left
+#	amp33		STR	ccd16:RightAmp:right
+#	amp34		STR	ccd17:LeftAmp:left
+#	amp35		STR	ccd17:RightAmp:right
+#	amp36		STR	ccd18:LeftAmp:left
+#	amp37		STR	ccd18:RightAmp:right
+#	amp38		STR	ccd19:LeftAmp:left
+#	amp39		STR	ccd19:RightAmp:right
+#	amp40		STR	ccd20:LeftAmp:left
+#	amp41		STR	ccd20:RightAmp:right
+	amp42		STR	ccd21:LeftAmp:left
+	amp43		STR	ccd21:RightAmp:right
+	amp44		STR	ccd22:LeftAmp:left
+	amp45		STR	ccd22:RightAmp:right
+	amp46		STR	ccd23:LeftAmp:left
+	amp47		STR	ccd23:RightAmp:right
+#	amp48		STR	ccd24:LeftAmp:left
+#	amp49		STR	ccd24:RightAmp:right
+#	amp50		STR	ccd25:LeftAmp:left
+#	amp51		STR	ccd25:RightAmp:right
+#	amp52		STR	ccd26:LeftAmp:left
+#	amp53		STR	ccd26:RightAmp:right
+#	amp54		STR	ccd27:LeftAmp:left
+#	amp55		STR	ccd27:RightAmp:right
+#	amp56		STR	ccd28:LeftAmp:left
+#	amp57		STR	ccd28:RightAmp:right
+#	amp58		STR	ccd29:LeftAmp:left
+#	amp59		STR	ccd29:RightAmp:right
+#	amp60		STR	ccd30:LeftAmp:left
+#	amp61		STR	ccd30:RightAmp:right
+#	amp62		STR	ccd31:LeftAmp:left
+#	amp63		STR	ccd31:RightAmp:right
+#	amp64		STR	ccd32:LeftAmp:left
+#	amp65		STR	ccd32:RightAmp:right
+#	amp66		STR	ccd33:LeftAmp:left
+#	amp67		STR	ccd33:RightAmp:right
+#	amp68		STR	ccd34:LeftAmp:left
+#	amp69		STR	ccd34:RightAmp:right
+#	amp70		STR	ccd35:LeftAmp:left
+#	amp71		STR	ccd35:RightAmp:right
+END
+
+# Specify the cell data
+CELLS	METADATA
+	left	METADATA	# Left amplifier
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.XPARITY		S32	1 # We could have specified this as a DEFAULT, but this works
+		CELL.X0			S32	1
+		CELL.Y0			S32	1
+	END
+	right	METADATA	# Right amplifier
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.XPARITY		S32	-1 # This cell is read out in the opposite direction
+		CELL.X0			S32	2048
+		CELL.Y0			S32	1
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBS		STR	EXPNUM
+	FPA.AIRMASS		STR	AIRMASS
+	FPA.FILTER		STR	FILTER
+	FPA.POSANGLE		STR	ROTANGLE
+	FPA.RA			STR	RA
+	FPA.DEC			STR	DEC
+	FPA.RADECSYS		STR	RADECSYS
+	FPA.OBSTYPE		STR	OBSTYPE
+	FPA.OBJECT		STR	CMMTOBS
+	FPA.TIME		STR	MJD-OBS
+	FPA.TIMESYS		STR	TIMESYS
+	FPA.ALT			STR	TELALT
+	FPA.AZ			STR	TELAZ
+	CHIP.TEMP		STR	DETTEM
+	CELL.EXPOSURE		STR	EXPTIME
+	CELL.DARKTIME		STR	DARKTIME
+	CELL.GAIN		STR	GAIN
+	CELL.READNOISE		STR	RDNOISE
+	CELL.SATURATION		STR	SATURATE
+	CELL.TIME		STR	MJD-OBS
+	CELL.TIMESYS		STR	TIMESYS
+	CELL.XBIN		STR	CCDBIN1
+	CELL.YBIN		STR	CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	CELL.READDIR		S32	1		# Cell is read in x direction
+	CELL.BAD		S32	0
+	CELL.YPARITY		S32	1
+
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+#		ccd00	S32	0
+#		ccd01	S32	2048
+#		ccd02	S32	4096
+#		ccd03	S32	6144
+#		ccd04	S32	8192
+#		ccd05	S32	10240
+#		ccd06	S32	12288
+#		ccd07	S32	14336
+#		ccd08	S32	16384
+#		ccd09	S32	0
+#		ccd10	S32	2048
+#		ccd11	S32	4096
+		ccd12	S32	6144
+		ccd13	S32	8192
+		ccd14	S32	10240
+#		ccd15	S32	12288
+#		ccd16	S32	14336
+#		ccd17	S32	16384
+#		ccd18	S32	0
+#		ccd19	S32	2048
+#		ccd20	S32	4096
+		ccd21	S32	6144
+		ccd22	S32	8192
+		ccd23	S32	10240
+#		ccd24	S32	12288
+#		ccd25	S32	14336
+#		ccd26	S32	16384
+#		ccd27	S32	0
+#		ccd28	S32	2048
+#		ccd29	S32	4096
+#		ccd30	S32	6144
+#		ccd31	S32	8192
+#		ccd32	S32	10240
+#		ccd33	S32	12288
+#		ccd34	S32	14336
+#		ccd35	S32	16384
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+#		ccd00	S32	18447
+#		ccd01	S32	18447
+#		ccd02	S32	18447
+#		ccd03	S32	18447
+#		ccd04	S32	18447
+#		ccd05	S32	18447
+#		ccd06	S32	18447
+#		ccd07	S32	18447
+#		ccd08	S32	18447
+#		ccd09	S32	13835
+#		ccd10	S32	13835
+#		ccd11	S32	13835
+		ccd12	S32	13835
+		ccd13	S32	13835
+		ccd14	S32	13835
+#		ccd15	S32	13835
+#		ccd16	S32	13835
+#		ccd17	S32	13835
+#		ccd18	S32	13835
+#		ccd19	S32	4612
+#		ccd20	S32	4612
+		ccd21	S32	4612
+		ccd22	S32	4612
+		ccd23	S32	4612
+#		ccd24	S32	4612
+#		ccd25	S32	4612
+#		ccd26	S32	4612
+#		ccd27	S32	0
+#		ccd28	S32	0
+#		ccd29	S32	0
+#		ccd30	S32	0
+#		ccd31	S32	0
+#		ccd32	S32	0
+#		ccd33	S32	0
+#		ccd34	S32	0
+#		ccd35	S32	0
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+#		ccd00	S32	1
+#		ccd01	S32	1
+#		ccd02	S32	1
+#		ccd03	S32	1
+#		ccd04	S32	1
+#		ccd05	S32	1
+#		ccd06	S32	1
+#		ccd07	S32	1
+#		ccd08	S32	1
+#		ccd09	S32	1
+#		ccd10	S32	1
+#		ccd11	S32	1
+		ccd12	S32	1
+		ccd13	S32	1
+		ccd14	S32	1
+#		ccd15	S32	1
+#		ccd16	S32	1
+#		ccd17	S32	1
+#		ccd18	S32	1
+#		ccd19	S32	1
+#		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+#		ccd24	S32	1
+#		ccd25	S32	1
+#		ccd26	S32	1
+#		ccd27	S32	1
+#		ccd28	S32	1
+#		ccd29	S32	1
+#		ccd30	S32	1
+#		ccd31	S32	1
+#		ccd32	S32	1
+#		ccd33	S32	1
+#		ccd34	S32	1
+#		ccd35	S32	1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+#		ccd00	S32	-1
+#		ccd01	S32	-1
+#		ccd02	S32	-1
+#		ccd03	S32	-1
+#		ccd04	S32	-1
+#		ccd05	S32	-1
+#		ccd06	S32	-1
+#		ccd07	S32	-1
+#		ccd08	S32	-1
+#		ccd09	S32	-1
+#		ccd10	S32	-1
+#		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+#		ccd15	S32	-1
+#		ccd16	S32	-1
+#		ccd17	S32	-1
+#		ccd18	S32	1
+#		ccd19	S32	1
+#		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+#		ccd24	S32	1
+#		ccd25	S32	1
+#		ccd26	S32	1
+#		ccd27	S32	1
+#		ccd28	S32	1
+#		ccd29	S32	1
+#		ccd30	S32	1
+#		ccd31	S32	1
+#		ccd32	S32	1
+#		ccd33	S32	1
+#		ccd34	S32	1
+#		ccd35	S32	1
+	END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	FPA.BIAS	METADATA
+#		TABLE	STR	Camera
+#		COLUMN	STR	gain
+#		chipId	STR	{CHIP.NAME}
+#		cellId	STR	{CELL.NAME}
+#		time	STR	{CELL.TIME}
+#	END
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+	CELL.X0		STR	FORTRAN
+	CELL.Y0		STR	FORTRAN
+END
Index: /branches/eam_branches/ippconfig.20240412/mcshort/format_spliced.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mcshort/format_spliced.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mcshort/format_spliced.config	(revision 42661)
@@ -0,0 +1,304 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# The spliced MecaCam data is stored in single extensions for each chip
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m
+	DETECTOR	STR	MegaCam
+	EXTEND		BOOL	T
+	NEXTEND		S32	36
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# The extensions represent chips
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier
+	CHIP.NAME	STR	EXTNAME	# An extension keyword for unique identifie
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chipName:chipType
+#	ccd00		STR	ccd00:CCD42-90
+#	ccd01		STR	ccd01:CCD42-90
+#	ccd02		STR	ccd02:CCD42-90
+#	ccd03		STR	ccd03:CCD42-90
+#	ccd04		STR	ccd04:CCD42-90
+#	ccd05		STR	ccd05:CCD42-90
+#	ccd06		STR	ccd06:CCD42-90
+#	ccd07		STR	ccd07:CCD42-90
+#	ccd08		STR	ccd08:CCD42-90
+#	ccd09		STR	ccd09:CCD42-90
+#	ccd10		STR	ccd10:CCD42-90
+#	ccd11		STR	ccd11:CCD42-90
+	ccd12		STR	ccd12:CCD42-90
+	ccd13		STR	ccd13:CCD42-90
+	ccd14		STR	ccd14:CCD42-90
+#	ccd15		STR	ccd15:CCD42-90
+#	ccd16		STR	ccd16:CCD42-90
+#	ccd17		STR	ccd17:CCD42-90
+#	ccd18		STR	ccd18:CCD42-90
+#	ccd19		STR	ccd19:CCD42-90
+#	ccd20		STR	ccd20:CCD42-90
+	ccd21		STR	ccd21:CCD42-90
+	ccd22		STR	ccd22:CCD42-90
+	ccd23		STR	ccd23:CCD42-90
+#	ccd24		STR	ccd24:CCD42-90
+#	ccd25		STR	ccd25:CCD42-90
+#	ccd26		STR	ccd26:CCD42-90
+#	ccd27		STR	ccd27:CCD42-90
+#	ccd28		STR	ccd28:CCD42-90
+#	ccd29		STR	ccd29:CCD42-90
+#	ccd30		STR	ccd30:CCD42-90
+#	ccd31		STR	ccd31:CCD42-90
+#	ccd32		STR	ccd32:CCD42-90
+#	ccd33		STR	ccd33:CCD42-90
+#	ccd34		STR	ccd34:CCD42-90
+#	ccd35		STR	ccd35:CCD42-90
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	CCD42-90	STR	LeftAmp:left RightAmp:right
+END
+
+# Specify the cells
+CELLS		METADATA
+	left		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECA
+		CELL.TRIMSEC		STR	TSECA
+		CELL.X0			S32	0
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINA
+	END
+
+	right		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECB
+		CELL.TRIMSEC		STR	TSECB
+		CELL.X0			S32	1024
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINB
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.OBS        STR     EXPNUM
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTER      STR     FILTER
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	CMMTOBS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+        CELL.READNOISE  STR     RDNOISE
+        CELL.SATURATION STR     SATURATE
+	CELL.TIME	STR	MJD-OBS
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TIMESYS		STR	UTC
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.BAD                S32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+#	PPMERGE.SCALE		F32	1.0
+#	PPMERGE.ZERO		F32	0.0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+#		ccd00	S32	
+#		ccd01	S32
+#		ccd02	S32
+#		ccd03	S32
+#		ccd04	S32
+#		ccd05	S32
+#		ccd06	S32
+#		ccd07	S32
+#		ccd08	S32
+#		ccd09	S32
+#		ccd10	S32
+#		ccd11	S32
+		ccd12	S32	0
+		ccd13	S32	2048
+		ccd14	S32	4096
+#		ccd15	S32
+#		ccd16	S32
+#		ccd17	S32
+#		ccd18	S32
+#		ccd19	S32
+#		ccd20	S32
+		ccd21	S32	0
+		ccd22	S32	2048
+		ccd23	S32	4096
+#		ccd24	S32
+#		ccd25	S32
+#		ccd26	S32
+#		ccd27	S32
+#		ccd28	S32
+#		ccd29	S32
+#		ccd30	S32
+#		ccd31	S32
+#		ccd32	S32
+#		ccd33	S32
+#		ccd34	S32
+#		ccd35	S32
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+#		ccd00	S32	
+#		ccd01	S32
+#		ccd02	S32
+#		ccd03	S32
+#		ccd04	S32
+#		ccd05	S32
+#		ccd06	S32
+#		ccd07	S32
+#		ccd08	S32
+#		ccd09	S32
+#		ccd10	S32
+#		ccd11	S32
+		ccd12	S32	9223
+		ccd13	S32	9223
+		ccd14	S32	9223
+#		ccd15	S32
+#		ccd16	S32
+#		ccd17	S32
+#		ccd18	S32
+#		ccd19	S32
+#		ccd20	S32
+		ccd21	S32	0
+		ccd22	S32	0
+		ccd23	S32	0
+#		ccd24	S32
+#		ccd25	S32
+#		ccd26	S32
+#		ccd27	S32
+#		ccd28	S32
+#		ccd29	S32
+#		ccd30	S32
+#		ccd31	S32
+#		ccd32	S32
+#		ccd33	S32
+#		ccd34	S32
+#		ccd35	S32
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+#		ccd00	S32	
+#		ccd01	S32
+#		ccd02	S32
+#		ccd03	S32
+#		ccd04	S32
+#		ccd05	S32
+#		ccd06	S32
+#		ccd07	S32
+#		ccd08	S32
+#		ccd09	S32
+#		ccd10	S32
+#		ccd11	S32
+		ccd12	S32	1
+		ccd13	S32	1
+		ccd14	S32	1
+#		ccd15	S32
+#		ccd16	S32
+#		ccd17	S32
+#		ccd18	S32
+#		ccd19	S32
+#		ccd20	S32
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+#		ccd24	S32
+#		ccd25	S32
+#		ccd26	S32
+#		ccd27	S32
+#		ccd28	S32
+#		ccd29	S32
+#		ccd30	S32
+#		ccd31	S32
+#		ccd32	S32
+#		ccd33	S32
+#		ccd34	S32
+#		ccd35	S32
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+#		ccd00	S32	
+#		ccd01	S32
+#		ccd02	S32
+#		ccd03	S32
+#		ccd04	S32
+#		ccd05	S32
+#		ccd06	S32
+#		ccd07	S32
+#		ccd08	S32
+#		ccd09	S32
+#		ccd10	S32
+#		ccd11	S32
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+#		ccd15	S32
+#		ccd16	S32
+#		ccd17	S32
+#		ccd18	S32
+#		ccd19	S32
+#		ccd20	S32
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+#		ccd24	S32
+#		ccd25	S32
+#		ccd26	S32
+#		ccd27	S32
+#		ccd28	S32
+#		ccd29	S32
+#		ccd30	S32
+#		ccd31	S32
+#		ccd32	S32
+#		ccd33	S32
+#		ccd34	S32
+#		ccd35	S32
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/mcshort/format_split.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mcshort/format_split.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mcshort/format_split.config	(revision 42661)
@@ -0,0 +1,301 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# The spliced MecaCam data is stored in single extensions for each chip
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m
+	DETECTOR	STR	MegaCam
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# The extensions represent chips
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier
+	CONTENT		STR	EXTNAME	# Key to the CONTENTS menu
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chip name:component cell
+#	ccd00		STR	ccd00:CCD42-90
+#	ccd01		STR	ccd01:CCD42-90
+#	ccd02		STR	ccd02:CCD42-90
+#	ccd03		STR	ccd03:CCD42-90
+#	ccd04		STR	ccd04:CCD42-90
+#	ccd05		STR	ccd05:CCD42-90
+#	ccd06		STR	ccd06:CCD42-90
+#	ccd07		STR	ccd07:CCD42-90
+#	ccd08		STR	ccd08:CCD42-90
+#	ccd09		STR	ccd09:CCD42-90
+#	ccd10		STR	ccd10:CCD42-90
+#	ccd11		STR	ccd11:CCD42-90
+	ccd12		STR	ccd12:CCD42-90
+	ccd13		STR	ccd13:CCD42-90
+	ccd14		STR	ccd14:CCD42-90
+#	ccd15		STR	ccd15:CCD42-90
+#	ccd16		STR	ccd16:CCD42-90
+#	ccd17		STR	ccd17:CCD42-90
+#	ccd18		STR	ccd18:CCD42-90
+#	ccd19		STR	ccd19:CCD42-90
+#	ccd20		STR	ccd20:CCD42-90
+	ccd21		STR	ccd21:CCD42-90
+	ccd22		STR	ccd22:CCD42-90
+	ccd23		STR	ccd23:CCD42-90
+#	ccd24		STR	ccd24:CCD42-90
+#	ccd25		STR	ccd25:CCD42-90
+#	ccd26		STR	ccd26:CCD42-90
+#	ccd27		STR	ccd27:CCD42-90
+#	ccd28		STR	ccd28:CCD42-90
+#	ccd29		STR	ccd29:CCD42-90
+#	ccd30		STR	ccd30:CCD42-90
+#	ccd31		STR	ccd31:CCD42-90
+#	ccd32		STR	ccd32:CCD42-90
+#	ccd33		STR	ccd33:CCD42-90
+#	ccd34		STR	ccd34:CCD42-90
+#	ccd35		STR	ccd35:CCD42-90
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	CCD42-90	STR	LeftAmp:left RightAmp:right
+END
+
+# Specify the cells
+CELLS		METADATA
+	left		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECA
+		CELL.TRIMSEC		STR	TSECA
+		CELL.X0			S32	0
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINA
+	END
+
+	right		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECB
+		CELL.TRIMSEC		STR	TSECB
+		CELL.X0			S32	1024
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINB
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.OBS        STR     EXPNUM
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTER      STR     FILTER
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	CMMTOBS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+        CELL.READNOISE  STR     RDNOISE
+        CELL.SATURATION STR     SATURATE
+	CELL.TIME	STR	MJD-OBS
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.BAD                S32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+#	PPMERGE.SCALE		F32	1.0
+#	PPMERGE.ZERO		F32	0.0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+#		ccd00	S32	
+#		ccd01	S32
+#		ccd02	S32
+#		ccd03	S32
+#		ccd04	S32
+#		ccd05	S32
+#		ccd06	S32
+#		ccd07	S32
+#		ccd08	S32
+#		ccd09	S32
+#		ccd10	S32
+#		ccd11	S32
+		ccd12	S32	0
+		ccd13	S32	2048
+		ccd14	S32	4096
+#		ccd15	S32
+#		ccd16	S32
+#		ccd17	S32
+#		ccd18	S32
+#		ccd19	S32
+#		ccd20	S32
+		ccd21	S32	0
+		ccd22	S32	2048
+		ccd23	S32	4096
+#		ccd24	S32
+#		ccd25	S32
+#		ccd26	S32
+#		ccd27	S32
+#		ccd28	S32
+#		ccd29	S32
+#		ccd30	S32
+#		ccd31	S32
+#		ccd32	S32
+#		ccd33	S32
+#		ccd34	S32
+#		ccd35	S32
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+#		ccd00	S32	
+#		ccd01	S32
+#		ccd02	S32
+#		ccd03	S32
+#		ccd04	S32
+#		ccd05	S32
+#		ccd06	S32
+#		ccd07	S32
+#		ccd08	S32
+#		ccd09	S32
+#		ccd10	S32
+#		ccd11	S32
+		ccd12	S32	9223
+		ccd13	S32	9223
+		ccd14	S32	9223
+#		ccd15	S32
+#		ccd16	S32
+#		ccd17	S32
+#		ccd18	S32
+#		ccd19	S32
+#		ccd20	S32
+		ccd21	S32	0
+		ccd22	S32	0
+		ccd23	S32	0
+#		ccd24	S32
+#		ccd25	S32
+#		ccd26	S32
+#		ccd27	S32
+#		ccd28	S32
+#		ccd29	S32
+#		ccd30	S32
+#		ccd31	S32
+#		ccd32	S32
+#		ccd33	S32
+#		ccd34	S32
+#		ccd35	S32
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+#		ccd00	S32	
+#		ccd01	S32
+#		ccd02	S32
+#		ccd03	S32
+#		ccd04	S32
+#		ccd05	S32
+#		ccd06	S32
+#		ccd07	S32
+#		ccd08	S32
+#		ccd09	S32
+#		ccd10	S32
+#		ccd11	S32
+		ccd12	S32	1
+		ccd13	S32	1
+		ccd14	S32	1
+#		ccd15	S32
+#		ccd16	S32
+#		ccd17	S32
+#		ccd18	S32
+#		ccd19	S32
+#		ccd20	S32
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+#		ccd24	S32
+#		ccd25	S32
+#		ccd26	S32
+#		ccd27	S32
+#		ccd28	S32
+#		ccd29	S32
+#		ccd30	S32
+#		ccd31	S32
+#		ccd32	S32
+#		ccd33	S32
+#		ccd34	S32
+#		ccd35	S32
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+#		ccd00	S32	
+#		ccd01	S32
+#		ccd02	S32
+#		ccd03	S32
+#		ccd04	S32
+#		ccd05	S32
+#		ccd06	S32
+#		ccd07	S32
+#		ccd08	S32
+#		ccd09	S32
+#		ccd10	S32
+#		ccd11	S32
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+#		ccd15	S32
+#		ccd16	S32
+#		ccd17	S32
+#		ccd18	S32
+#		ccd19	S32
+#		ccd20	S32
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+#		ccd24	S32
+#		ccd25	S32
+#		ccd26	S32
+#		ccd27	S32
+#		ccd28	S32
+#		ccd29	S32
+#		ccd30	S32
+#		ccd31	S32
+#		ccd32	S32
+#		ccd33	S32
+#		ccd34	S32
+#		ccd35	S32
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/megacam/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/Makefile.am	(revision 42661)
@@ -0,0 +1,28 @@
+
+installdir = $(datadir)/ippconfig/megacam
+
+install_files = \
+	dvo.config \
+	dvo.layout \
+	camera.config \
+	format_raw.config \
+	format_mef.config \
+	format_pre_03Am04_raw.config \
+	format_pre_03Am04_mef.config \
+	format_split.config \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	pswarp.config \
+	ppStack.config \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/megacam/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/camera.config	(revision 42661)
@@ -0,0 +1,185 @@
+# Camera configuration file for MegaCam: describes the camera
+
+# File formats that we know about
+FORMATS         METADATA
+        MEF 	STR     megacam/format_mef.config
+        RAW     STR     megacam/format_raw.config
+        MEF_03 	STR     megacam/format_pre_03Am04_mef.config
+        RAW_03  STR     megacam/format_pre_03Am04_raw.config
+        SPLIT   STR     megacam/format_split.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        ccd00   STR     LeftAmp RightAmp
+        ccd01   STR     LeftAmp RightAmp
+        ccd02   STR     LeftAmp RightAmp
+        ccd03   STR     LeftAmp RightAmp
+        ccd04   STR     LeftAmp RightAmp
+        ccd05   STR     LeftAmp RightAmp
+        ccd06   STR     LeftAmp RightAmp
+        ccd07   STR     LeftAmp RightAmp
+        ccd08   STR     LeftAmp RightAmp
+        ccd09   STR     LeftAmp RightAmp
+        ccd10   STR     LeftAmp RightAmp
+        ccd11   STR     LeftAmp RightAmp
+        ccd12   STR     LeftAmp RightAmp
+        ccd13   STR     LeftAmp RightAmp
+        ccd14   STR     LeftAmp RightAmp
+        ccd15   STR     LeftAmp RightAmp
+        ccd16   STR     LeftAmp RightAmp
+        ccd17   STR     LeftAmp RightAmp
+        ccd18   STR     LeftAmp RightAmp
+        ccd19   STR     LeftAmp RightAmp
+        ccd20   STR     LeftAmp RightAmp
+        ccd21   STR     LeftAmp RightAmp
+        ccd22   STR     LeftAmp RightAmp
+        ccd23   STR     LeftAmp RightAmp
+        ccd24   STR     LeftAmp RightAmp
+        ccd25   STR     LeftAmp RightAmp
+        ccd26   STR     LeftAmp RightAmp
+        ccd27   STR     LeftAmp RightAmp
+        ccd28   STR     LeftAmp RightAmp
+        ccd29   STR     LeftAmp RightAmp
+        ccd30   STR     LeftAmp RightAmp
+        ccd31   STR     LeftAmp RightAmp
+        ccd32   STR     LeftAmp RightAmp
+        ccd33   STR     LeftAmp RightAmp
+        ccd34   STR     LeftAmp RightAmp
+        ccd35   STR     LeftAmp RightAmp
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+   u        STR   u.MP9301     
+
+   g        MULTI
+   g        STR   g.MP9401     
+   g        STR   g.MP9402
+
+   gri      STR   gri.MP9605
+
+   r        STR   r.MP9601     
+
+   i        MULTI
+   i        STR   i.MP9701     
+   i        STR   i.MP9702     
+
+   z        MULTI
+   z        STR   z.MP9801     
+   z        STR   Zp           
+   z        STR   Zprime       
+
+   Ha       MULTI
+   Ha       STR   Ha.MP7605    
+   Ha       STR   Halpha       
+   Ha       STR   Haalpha.on   
+   HaOff    STR   HaOFF.MP7604 
+   	              		
+   CaHK     STR   CaHK.MP9303
+
+   CN       MULTI
+   CN       STR   CN.MP780     
+   CN       STR   cn.MP7803    
+   CN       STR   CN.MP7803    
+   	              		
+   TiO      MULTI
+   TiO      STR   TiO.MP77     
+   TiO      STR   tio.MP7701   
+   TiO      STR   TiO.MP7701   
+   NB920    STR   NB920        
+   	              		
+   OIII     STR   OIII.MP9501
+
+   B2F      STR   B2F          
+   Bj       STR   Bj           
+   Vj       STR   Vj           
+   Rj       STR   Rj           
+   Ij       STR   Ij           
+   Hb       STR   Hb           
+   HbOff    STR   HbOff        
+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	megacam		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias     STR BIAS
+  zero     STR BIAS
+  dark     STR DARK
+  flat     STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        # Other recipes
+        PSPHOT          STR     megacam/psphot.config           # psphot details
+        PSASTRO         STR     megacam/psastro.config          # psastro details
+	PSWARP		STR	megacam/pswarp.config		# pswarp details
+        PPIMAGE         STR     megacam/ppImage.config          # ppImage recipe
+	REJECTIONS      STR     megacam/rejections.config       # rejection recipe
+	PPMERGE		STR	megacam/ppMerge.config		# ppMerge recipe
+	PPSTACK		STR	megacam/ppStack.config          # ppStack recipe
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	recipes/filerules-mef.mdc		# File rules appropriate for MEF format
+
+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.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
+
+  PSF.HEAD   STR {CHIP.NAME}.hdr
+  PSF.TABLE  STR {CHIP.NAME}.psf_model
+  PSF.RESID  STR {CHIP.NAME}.psf_resid
+
+  REF.ASTROM STR {CHIP.NAME}.ref_astrom
+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.N}		# Rule for generating photcode
+
+BURNTOOL.STATE.GOOD        S16  0  # Value for burntool_state with the most recent bt version.
+BURNTOOL.STATE.GOOD.UPDATE S16  0  # for upddate processing accept earlier version
+
+FOV_REF                     F32     0   # Field of view of unvignetted region in FPA pixels.
+FOV_MAX			    F32	    0
+NPIX_REF 		    S32	    0
+NPIX_MAX		    S32	    0
+NPIX_INTERCHIP              S32     0
+
+# 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         25
+
+# don't censor any masked pixels
+MASK.NO.CENSOR          U32 4294967295
+
+METADATA.COMPRESSION         STR      7f # compression mode (nM): n = 1-9, M = f (filtered), h (Huffman), R (run-length)
Index: /branches/eam_branches/ippconfig.20240412/megacam/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/dvo.config	(revision 42661)
@@ -0,0 +1,70 @@
+
+# location of DVO database tables
+CATDIR			/data/alala.0/eugene/isp/catdir
+
+# word used to identify photcodes belonging to this camera
+MOSAICNAME		MEGACAM
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+#DATE-KEYWORD		DATE-OBS
+#DATE-MODE		yyyy-mm-dd
+#UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	19.825237
+OBSERVATORY-LONGITUDE	10.3645844667
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+
Index: /branches/eam_branches/ippconfig.20240412/megacam/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/dvo.layout	(revision 42661)
@@ -0,0 +1,58 @@
+# this file defines the layout of the mosaic imager:
+
+# NCCD 40  # this needs work: sometimes 36, sometimes 40
+NCCD 36
+NAXIS1 2112
+NAXIS2 4644
+
+MOSAIC_X 11
+MOSAIC_Y  4
+
+# lines need to contain:
+
+CHIPID_KEYWORD EXTNAME
+
+# ID     CHIPID xoffset yoffset xflip yflip datasec         biassec            Xo      Yo      theta
+CCD.0     ccd00       1       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.1     ccd01       2       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.2     ccd02       3       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.3     ccd03       4       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.4     ccd04       5       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.5     ccd05       6       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.6     ccd06       7       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.7     ccd07       8       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.8     ccd08       9       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.9     ccd09       1       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.10    ccd10       2       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.11    ccd11       3       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.12    ccd12       4       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.13    ccd13       5       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.14    ccd14       6       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.15    ccd15       7       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.16    ccd16       8       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.17    ccd17       9       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.18    ccd18       1       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.19    ccd19       2       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.20    ccd20       3       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.21    ccd21       4       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.22    ccd22       5       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.23    ccd23       6       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.24    ccd24       7       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.25    ccd25       8       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.26    ccd26       9       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.27    ccd27       1       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.28    ccd28       2       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.29    ccd29       3       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.30    ccd30       4       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.31    ccd31       5       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.32    ccd32       6       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.33    ccd33       7       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.34    ccd34       8       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.35    ccd35       9       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.36    ccd36       0       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.37    ccd37      10       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.38    ccd38       0       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.39    ccd39      10       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/megacam/format_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/format_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/format_mef.config	(revision 42661)
@@ -0,0 +1,309 @@
+# The spliced MecaCam data is stored in single extensions for each chip
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m # added at start of 03Am04
+	DETECTOR	STR	MegaCam
+	NAXIS           S32     0
+	EXTEND		BOOL	T
+        HISTORY         STR     imsplice: Splicing results in all detectors as if read from A amplifier
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# The extensions represent chips
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier
+	# CHIP.NAME	STR	EXTNAME	# An extension keyword for unique identifie
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chipName:chipType
+	ccd00		STR	ccd00:CCD42-90
+	ccd01		STR	ccd01:CCD42-90
+	ccd02		STR	ccd02:CCD42-90
+	ccd03		STR	ccd03:CCD42-90
+	ccd04		STR	ccd04:CCD42-90
+	ccd05		STR	ccd05:CCD42-90
+	ccd06		STR	ccd06:CCD42-90
+	ccd07		STR	ccd07:CCD42-90
+	ccd08		STR	ccd08:CCD42-90
+	ccd09		STR	ccd09:CCD42-90
+	ccd10		STR	ccd10:CCD42-90
+	ccd11		STR	ccd11:CCD42-90
+	ccd12		STR	ccd12:CCD42-90
+	ccd13		STR	ccd13:CCD42-90
+	ccd14		STR	ccd14:CCD42-90
+	ccd15		STR	ccd15:CCD42-90
+	ccd16		STR	ccd16:CCD42-90
+	ccd17		STR	ccd17:CCD42-90
+	ccd18		STR	ccd18:CCD42-90
+	ccd19		STR	ccd19:CCD42-90
+	ccd20		STR	ccd20:CCD42-90
+	ccd21		STR	ccd21:CCD42-90
+	ccd22		STR	ccd22:CCD42-90
+	ccd23		STR	ccd23:CCD42-90
+	ccd24		STR	ccd24:CCD42-90
+	ccd25		STR	ccd25:CCD42-90
+	ccd26		STR	ccd26:CCD42-90
+	ccd27		STR	ccd27:CCD42-90
+	ccd28		STR	ccd28:CCD42-90
+	ccd29		STR	ccd29:CCD42-90
+	ccd30		STR	ccd30:CCD42-90
+	ccd31		STR	ccd31:CCD42-90
+	ccd32		STR	ccd32:CCD42-90
+	ccd33		STR	ccd33:CCD42-90
+	ccd34		STR	ccd34:CCD42-90
+	ccd35		STR	ccd35:CCD42-90
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	CCD42-90	STR	LeftAmp:left RightAmp:right
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts to use
+	left		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECA
+		CELL.TRIMSEC		STR	TSECA
+		CELL.X0			S32	0
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINA
+	END
+
+	right		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECB
+		CELL.TRIMSEC		STR	TSECB
+		CELL.X0			S32	1024
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINB
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTERID    STR     FILTER
+        FPA.FILTER      STR     FILTER
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBJECT
+	FPA.TIME	STR	MJD-OBS
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+        FPA.POSANGLE    STR     ROTANGLE # added at start of 03Am04
+	FPA.FOCUS	STR	TELFOCUS # added at start of 03Am04
+	FPA.ALT		STR	TELALT	 # added at start of 03Am04
+	FPA.AZ		STR	TELAZ	 # added at start of 03Am04
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.ZP		STR	ZPT_OBS
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+        CELL.READNOISE  STR     RDNOISE
+	CELL.TIME	STR	MJD-OBS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	MEGACAM		# this value is used in ipprc.config to find the recipes
+	FPA.DETECTOR	        STR	MEGACAM
+	FPA.TIMESYS		STR	UTC
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4612
+	CELL.XSIZE		S32	1024
+	CELL.YSIZE		S32	4612
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	50000.0
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CELL.TIMESYS		STR	UTC
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	0
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	8192
+		ccd05	S32	10240
+		ccd06	S32	12288
+		ccd07	S32	14336
+		ccd08	S32	16384
+		ccd09	S32	0
+		ccd10	S32	2048
+		ccd11	S32	4096
+		ccd12	S32	6144
+		ccd13	S32	8192
+		ccd14	S32	10240
+		ccd15	S32	12288
+		ccd16	S32	14336
+		ccd17	S32	16384
+		ccd18	S32    -2048
+		ccd19	S32	0
+		ccd20	S32	2048 
+		ccd21	S32	4096 
+		ccd22	S32	6144 
+		ccd23	S32	8192 
+		ccd24	S32	10240
+		ccd25	S32	12288
+		ccd26	S32	14336
+		ccd27	S32    -2048
+		ccd28	S32	0
+		ccd29	S32	2048 
+		ccd30	S32	4096 
+		ccd31	S32	6144 
+		ccd32	S32	8192 
+		ccd33	S32	10240
+		ccd34	S32	12288
+		ccd35	S32	14336
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	18447
+		ccd01	S32	18447
+		ccd02	S32	18447
+		ccd03	S32	18447
+		ccd04	S32	18447
+		ccd05	S32	18447
+		ccd06	S32	18447
+		ccd07	S32	18447
+		ccd08	S32	18447
+		ccd09	S32	13835
+		ccd10	S32	13835
+		ccd11	S32	13835
+		ccd12	S32	13835
+		ccd13	S32	13835
+		ccd14	S32	13835
+		ccd15	S32	13835
+		ccd16	S32	13835
+		ccd17	S32	13835
+		ccd18	S32	4612
+		ccd19	S32	4612
+		ccd20	S32	4612
+		ccd21	S32	4612
+		ccd22	S32	4612
+		ccd23	S32	4612
+		ccd24	S32	4612
+		ccd25	S32	4612
+		ccd26	S32	4612
+		ccd27	S32	0
+		ccd28	S32	0
+		ccd29	S32	0
+		ccd30	S32	0
+		ccd31	S32	0
+		ccd32	S32	0
+		ccd33	S32	0
+		ccd34	S32	0
+		ccd35	S32	0
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+#	CELL.GAIN	STR	SELECT gain FROM camera WHERE chip_id = '{CHIP.NAME}' AND cell_id = '{CELL.NAME}'
+END		
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/megacam/format_pre_03Am04_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/format_pre_03Am04_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/format_pre_03Am04_mef.config	(revision 42661)
@@ -0,0 +1,313 @@
+# The spliced MecaCam data is stored in single extensions for each chip
+
+# How to recognise this type
+RULE	METADATA
+	DETECTOR	STR	MegaCam
+	NAXIS           S32     0
+	EXTEND		BOOL	T
+        HISTORY         STR     imsplice: Splicing results in all detectors as if read from A amplifier
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# The extensions represent chips
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier
+	# CHIP.NAME	STR	EXTNAME	# An extension keyword for unique identifie
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chipName:chipType
+	ccd00		STR	ccd00:CCD42-90
+	ccd01		STR	ccd01:CCD42-90
+	ccd02		STR	ccd02:CCD42-90
+	ccd03		STR	ccd03:CCD42-90
+	ccd04		STR	ccd04:CCD42-90
+	ccd05		STR	ccd05:CCD42-90
+	ccd06		STR	ccd06:CCD42-90
+	ccd07		STR	ccd07:CCD42-90
+	ccd08		STR	ccd08:CCD42-90
+	ccd09		STR	ccd09:CCD42-90
+	ccd10		STR	ccd10:CCD42-90
+	ccd11		STR	ccd11:CCD42-90
+	ccd12		STR	ccd12:CCD42-90
+	ccd13		STR	ccd13:CCD42-90
+	ccd14		STR	ccd14:CCD42-90
+	ccd15		STR	ccd15:CCD42-90
+	ccd16		STR	ccd16:CCD42-90
+	ccd17		STR	ccd17:CCD42-90
+	ccd18		STR	ccd18:CCD42-90
+	ccd19		STR	ccd19:CCD42-90
+	ccd20		STR	ccd20:CCD42-90
+	ccd21		STR	ccd21:CCD42-90
+	ccd22		STR	ccd22:CCD42-90
+	ccd23		STR	ccd23:CCD42-90
+	ccd24		STR	ccd24:CCD42-90
+	ccd25		STR	ccd25:CCD42-90
+	ccd26		STR	ccd26:CCD42-90
+	ccd27		STR	ccd27:CCD42-90
+	ccd28		STR	ccd28:CCD42-90
+	ccd29		STR	ccd29:CCD42-90
+	ccd30		STR	ccd30:CCD42-90
+	ccd31		STR	ccd31:CCD42-90
+	ccd32		STR	ccd32:CCD42-90
+	ccd33		STR	ccd33:CCD42-90
+	ccd34		STR	ccd34:CCD42-90
+	ccd35		STR	ccd35:CCD42-90
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	CCD42-90	STR	LeftAmp:left RightAmp:right
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts to use
+	left		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECA
+		CELL.TRIMSEC		STR	TSECA
+		CELL.X0			S32	0
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINA
+	END
+
+	right		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECB
+		CELL.TRIMSEC		STR	TSECB
+		CELL.X0			S32	1024
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINB
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTERID    STR     FILTER
+        FPA.FILTER      STR     FILTER
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBJECT
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+        CELL.READNOISE  STR     RDNOISE
+	CELL.TIME	STR	MJD-OBS
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	MEGACAM		# this value is used in ipprc.config to find the recipes
+	FPA.DETECTOR	        STR	MEGACAM
+	FPA.POSANGLE		F32	0.0     # not reported until 03Am04
+	FPA.FOCUS		F32	0.0     # not reported until 03Am04
+	FPA.ALT			F32	0.0     # not reported until 03Am04
+	FPA.AZ			F32	0.0     # not reported until 03Am04
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4612
+	CELL.XSIZE		S32	1024
+	CELL.YSIZE		S32	4612
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	50000.0
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	0
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	8192
+		ccd05	S32	10240
+		ccd06	S32	12288
+		ccd07	S32	14336
+		ccd08	S32	16384
+		ccd09	S32	0
+		ccd10	S32	2048
+		ccd11	S32	4096
+		ccd12	S32	6144
+		ccd13	S32	8192
+		ccd14	S32	10240
+		ccd15	S32	12288
+		ccd16	S32	14336
+		ccd17	S32	16384
+		ccd18	S32    -2048
+		ccd19	S32	0
+		ccd20	S32	2048 
+		ccd21	S32	4096 
+		ccd22	S32	6144 
+		ccd23	S32	8192 
+		ccd24	S32	10240
+		ccd25	S32	12288
+		ccd26	S32	14336
+		ccd27	S32    -2048
+		ccd28	S32	0
+		ccd29	S32	2048 
+		ccd30	S32	4096 
+		ccd31	S32	6144 
+		ccd32	S32	8192 
+		ccd33	S32	10240
+		ccd34	S32	12288
+		ccd35	S32	14336
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	18447
+		ccd01	S32	18447
+		ccd02	S32	18447
+		ccd03	S32	18447
+		ccd04	S32	18447
+		ccd05	S32	18447
+		ccd06	S32	18447
+		ccd07	S32	18447
+		ccd08	S32	18447
+		ccd09	S32	13835
+		ccd10	S32	13835
+		ccd11	S32	13835
+		ccd12	S32	13835
+		ccd13	S32	13835
+		ccd14	S32	13835
+		ccd15	S32	13835
+		ccd16	S32	13835
+		ccd17	S32	13835
+		ccd18	S32	4612
+		ccd19	S32	4612
+		ccd20	S32	4612
+		ccd21	S32	4612
+		ccd22	S32	4612
+		ccd23	S32	4612
+		ccd24	S32	4612
+		ccd25	S32	4612
+		ccd26	S32	4612
+		ccd27	S32	0
+		ccd28	S32	0
+		ccd29	S32	0
+		ccd30	S32	0
+		ccd31	S32	0
+		ccd32	S32	0
+		ccd33	S32	0
+		ccd34	S32	0
+		ccd35	S32	0
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/megacam/format_pre_03Am04_raw.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/format_pre_03Am04_raw.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/format_pre_03Am04_raw.config	(revision 42661)
@@ -0,0 +1,347 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# The raw MegaCam data comes off the telescope with each of the chips stored in extensions of a MEF file.
+
+# How to identify this type
+RULE	METADATA
+	DETECTOR	STR	MegaCam
+	NAXIS           S32     0
+	EXTEND		BOOL	T
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CELL	# The extensions represent cells
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chip name:type
+	amp00		STR	ccd00:LeftAmp:left
+	amp01		STR	ccd00:RightAmp:right
+	amp02		STR	ccd01:LeftAmp:left
+	amp03		STR	ccd01:RightAmp:right
+	amp04		STR	ccd02:LeftAmp:left
+	amp05		STR	ccd02:RightAmp:right
+	amp06		STR	ccd03:LeftAmp:left
+	amp07		STR	ccd03:RightAmp:right
+	amp08		STR	ccd04:LeftAmp:left
+	amp09		STR	ccd04:RightAmp:right
+	amp10		STR	ccd05:LeftAmp:left
+	amp11		STR	ccd05:RightAmp:right
+	amp12		STR	ccd06:LeftAmp:left
+	amp13		STR	ccd06:RightAmp:right
+	amp14		STR	ccd07:LeftAmp:left
+	amp15		STR	ccd07:RightAmp:right
+	amp16		STR	ccd08:LeftAmp:left
+	amp17		STR	ccd08:RightAmp:right
+	amp18		STR	ccd09:LeftAmp:left
+	amp19		STR	ccd09:RightAmp:right
+	amp20		STR	ccd10:LeftAmp:left
+	amp21		STR	ccd10:RightAmp:right
+	amp22		STR	ccd11:LeftAmp:left
+	amp23		STR	ccd11:RightAmp:right
+	amp24		STR	ccd12:LeftAmp:left
+	amp25		STR	ccd12:RightAmp:right
+	amp26		STR	ccd13:LeftAmp:left
+	amp27		STR	ccd13:RightAmp:right
+	amp28		STR	ccd14:LeftAmp:left
+	amp29		STR	ccd14:RightAmp:right
+	amp30		STR	ccd15:LeftAmp:left
+	amp31		STR	ccd15:RightAmp:right
+	amp32		STR	ccd16:LeftAmp:left
+	amp33		STR	ccd16:RightAmp:right
+	amp34		STR	ccd17:LeftAmp:left
+	amp35		STR	ccd17:RightAmp:right
+	amp36		STR	ccd18:LeftAmp:left
+	amp37		STR	ccd18:RightAmp:right
+	amp38		STR	ccd19:LeftAmp:left
+	amp39		STR	ccd19:RightAmp:right
+	amp40		STR	ccd20:LeftAmp:left
+	amp41		STR	ccd20:RightAmp:right
+	amp42		STR	ccd21:LeftAmp:left
+	amp43		STR	ccd21:RightAmp:right
+	amp44		STR	ccd22:LeftAmp:left
+	amp45		STR	ccd22:RightAmp:right
+	amp46		STR	ccd23:LeftAmp:left
+	amp47		STR	ccd23:RightAmp:right
+	amp48		STR	ccd24:LeftAmp:left
+	amp49		STR	ccd24:RightAmp:right
+	amp50		STR	ccd25:LeftAmp:left
+	amp51		STR	ccd25:RightAmp:right
+	amp52		STR	ccd26:LeftAmp:left
+	amp53		STR	ccd26:RightAmp:right
+	amp54		STR	ccd27:LeftAmp:left
+	amp55		STR	ccd27:RightAmp:right
+	amp56		STR	ccd28:LeftAmp:left
+	amp57		STR	ccd28:RightAmp:right
+	amp58		STR	ccd29:LeftAmp:left
+	amp59		STR	ccd29:RightAmp:right
+	amp60		STR	ccd30:LeftAmp:left
+	amp61		STR	ccd30:RightAmp:right
+	amp62		STR	ccd31:LeftAmp:left
+	amp63		STR	ccd31:RightAmp:right
+	amp64		STR	ccd32:LeftAmp:left
+	amp65		STR	ccd32:RightAmp:right
+	amp66		STR	ccd33:LeftAmp:left
+	amp67		STR	ccd33:RightAmp:right
+	amp68		STR	ccd34:LeftAmp:left
+	amp69		STR	ccd34:RightAmp:right
+	amp70		STR	ccd35:LeftAmp:left
+	amp71		STR	ccd35:RightAmp:right
+END
+
+# Specify the cell data
+CELLS	METADATA
+	left	METADATA	# Left amplifier
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.XPARITY		S32	1 # We could have specified this as a DEFAULT, but this works
+		CELL.X0			S32	1
+		CELL.Y0			S32	1
+	END
+	right	METADATA	# Right amplifier
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.XPARITY		S32	-1 # This cell is read out in the opposite direction
+		CELL.X0			S32	2048
+		CELL.Y0			S32	1
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.AIRMASS		STR	AIRMASS
+	FPA.FILTERID		STR	FILTER
+	FPA.FILTER		STR	FILTER
+	FPA.OBSTYPE		STR	OBSTYPE
+	FPA.OBJECT		STR	OBJECT
+	FPA.TIME		STR	MJD-OBS
+	FPA.TIMESYS		STR	TIMESYS
+	FPA.RA			STR	RA
+	FPA.DEC			STR	DEC
+	FPA.RADECSYS		STR	RADECSYS
+	FPA.TEMP		STR	DETTEM
+	FPA.EXPOSURE		STR	EXPTIME
+	CHIP.TEMP		STR	DETTEM
+	CELL.EXPOSURE		STR	EXPTIME
+	CELL.DARKTIME		STR	DARKTIME
+	CELL.GAIN		STR	GAIN     # only in raw; replaced by GAINA, GAINB in mef
+	CELL.READNOISE		STR	RDNOISE
+	CELL.TIME		STR	MJD-OBS
+	CELL.TIMESYS		STR	TIMESYS
+	CELL.XBIN		STR	CCDBIN1
+	CELL.YBIN		STR	CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	MEGACAM
+	FPA.DETECTOR		STR	MEGACAM
+	FPA.POSANGLE		F32	0.0     # not reported until 03Am04
+	FPA.FOCUS		F32	0.0     # not reported until 03Am04
+	FPA.ALT			F32	0.0     # not reported until 03Am04
+	FPA.AZ			F32	0.0     # not reported until 03Am04
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4612
+	CELL.XSIZE		S32	1024
+	CELL.YSIZE		S32	4612
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	50000.0
+	CELL.BAD		F32	0
+	CELL.YPARITY		S32	1
+
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	0
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	8192
+		ccd05	S32	10240
+		ccd06	S32	12288
+		ccd07	S32	14336
+		ccd08	S32	16384
+		ccd09	S32	0
+		ccd10	S32	2048
+		ccd11	S32	4096
+		ccd12	S32	6144
+		ccd13	S32	8192
+		ccd14	S32	10240
+		ccd15	S32	12288
+		ccd16	S32	14336
+		ccd17	S32	16384
+		ccd18	S32    -2048
+		ccd19	S32	0    
+		ccd20	S32	2048 
+		ccd21	S32	4096 
+		ccd22	S32	6144 
+		ccd23	S32	8192 
+		ccd24	S32	10240
+		ccd25	S32	12288
+		ccd26	S32	14336
+		ccd27	S32    -2048
+		ccd28	S32	0    
+		ccd29	S32	2048 
+		ccd30	S32	4096 
+		ccd31	S32	6144 
+		ccd32	S32	8192 
+		ccd33	S32	10240
+		ccd34	S32	12288
+		ccd35	S32	14336
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	18447
+		ccd01	S32	18447
+		ccd02	S32	18447
+		ccd03	S32	18447
+		ccd04	S32	18447
+		ccd05	S32	18447
+		ccd06	S32	18447
+		ccd07	S32	18447
+		ccd08	S32	18447
+		ccd09	S32	13835
+		ccd10	S32	13835
+		ccd11	S32	13835
+		ccd12	S32	13835
+		ccd13	S32	13835
+		ccd14	S32	13835
+		ccd15	S32	13835
+		ccd16	S32	13835
+		ccd17	S32	13835
+		ccd18	S32	4612
+		ccd19	S32	4612
+		ccd20	S32	4612
+		ccd21	S32	4612
+		ccd22	S32	4612
+		ccd23	S32	4612
+		ccd24	S32	4612
+		ccd25	S32	4612
+		ccd26	S32	4612
+		ccd27	S32	0
+		ccd28	S32	0
+		ccd29	S32	0
+		ccd30	S32	0
+		ccd31	S32	0
+		ccd32	S32	0
+		ccd33	S32	0
+		ccd34	S32	0
+		ccd35	S32	0
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	FPA.BIAS	METADATA
+#		TABLE	STR	Camera
+#		COLUMN	STR	gain
+#		chipId	STR	{CHIP.NAME}
+#		cellId	STR	{CELL.NAME}
+#		time	STR	{CELL.TIME}
+#	END
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+	CELL.X0		STR	FORTRAN
+	CELL.Y0		STR	FORTRAN
+END
Index: /branches/eam_branches/ippconfig.20240412/megacam/format_raw.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/format_raw.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/format_raw.config	(revision 42661)
@@ -0,0 +1,348 @@
+# "mcshort" is a MegaCam camera with only the central six chips --- it's faster than the entire FPA.
+# The raw MegaCam data comes off the telescope with each of the chips stored in extensions of a MEF file.
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m # added at start of 03Am04
+	DETECTOR	STR	MegaCam
+	NAXIS           S32     0
+	EXTEND		BOOL	T
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CELL	# The extensions represent cells
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chip name:type
+	amp00		STR	ccd00:LeftAmp:left
+	amp01		STR	ccd00:RightAmp:right
+	amp02		STR	ccd01:LeftAmp:left
+	amp03		STR	ccd01:RightAmp:right
+	amp04		STR	ccd02:LeftAmp:left
+	amp05		STR	ccd02:RightAmp:right
+	amp06		STR	ccd03:LeftAmp:left
+	amp07		STR	ccd03:RightAmp:right
+	amp08		STR	ccd04:LeftAmp:left
+	amp09		STR	ccd04:RightAmp:right
+	amp10		STR	ccd05:LeftAmp:left
+	amp11		STR	ccd05:RightAmp:right
+	amp12		STR	ccd06:LeftAmp:left
+	amp13		STR	ccd06:RightAmp:right
+	amp14		STR	ccd07:LeftAmp:left
+	amp15		STR	ccd07:RightAmp:right
+	amp16		STR	ccd08:LeftAmp:left
+	amp17		STR	ccd08:RightAmp:right
+	amp18		STR	ccd09:LeftAmp:left
+	amp19		STR	ccd09:RightAmp:right
+	amp20		STR	ccd10:LeftAmp:left
+	amp21		STR	ccd10:RightAmp:right
+	amp22		STR	ccd11:LeftAmp:left
+	amp23		STR	ccd11:RightAmp:right
+	amp24		STR	ccd12:LeftAmp:left
+	amp25		STR	ccd12:RightAmp:right
+	amp26		STR	ccd13:LeftAmp:left
+	amp27		STR	ccd13:RightAmp:right
+	amp28		STR	ccd14:LeftAmp:left
+	amp29		STR	ccd14:RightAmp:right
+	amp30		STR	ccd15:LeftAmp:left
+	amp31		STR	ccd15:RightAmp:right
+	amp32		STR	ccd16:LeftAmp:left
+	amp33		STR	ccd16:RightAmp:right
+	amp34		STR	ccd17:LeftAmp:left
+	amp35		STR	ccd17:RightAmp:right
+	amp36		STR	ccd18:LeftAmp:left
+	amp37		STR	ccd18:RightAmp:right
+	amp38		STR	ccd19:LeftAmp:left
+	amp39		STR	ccd19:RightAmp:right
+	amp40		STR	ccd20:LeftAmp:left
+	amp41		STR	ccd20:RightAmp:right
+	amp42		STR	ccd21:LeftAmp:left
+	amp43		STR	ccd21:RightAmp:right
+	amp44		STR	ccd22:LeftAmp:left
+	amp45		STR	ccd22:RightAmp:right
+	amp46		STR	ccd23:LeftAmp:left
+	amp47		STR	ccd23:RightAmp:right
+	amp48		STR	ccd24:LeftAmp:left
+	amp49		STR	ccd24:RightAmp:right
+	amp50		STR	ccd25:LeftAmp:left
+	amp51		STR	ccd25:RightAmp:right
+	amp52		STR	ccd26:LeftAmp:left
+	amp53		STR	ccd26:RightAmp:right
+	amp54		STR	ccd27:LeftAmp:left
+	amp55		STR	ccd27:RightAmp:right
+	amp56		STR	ccd28:LeftAmp:left
+	amp57		STR	ccd28:RightAmp:right
+	amp58		STR	ccd29:LeftAmp:left
+	amp59		STR	ccd29:RightAmp:right
+	amp60		STR	ccd30:LeftAmp:left
+	amp61		STR	ccd30:RightAmp:right
+	amp62		STR	ccd31:LeftAmp:left
+	amp63		STR	ccd31:RightAmp:right
+	amp64		STR	ccd32:LeftAmp:left
+	amp65		STR	ccd32:RightAmp:right
+	amp66		STR	ccd33:LeftAmp:left
+	amp67		STR	ccd33:RightAmp:right
+	amp68		STR	ccd34:LeftAmp:left
+	amp69		STR	ccd34:RightAmp:right
+	amp70		STR	ccd35:LeftAmp:left
+	amp71		STR	ccd35:RightAmp:right
+END
+
+# Specify the cell data
+CELLS	METADATA
+	left	METADATA	# Left amplifier
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.XPARITY		S32	1 # We could have specified this as a DEFAULT, but this works
+		CELL.X0			S32	1
+		CELL.Y0			S32	1
+	END
+	right	METADATA	# Right amplifier
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.XPARITY		S32	-1 # This cell is read out in the opposite direction
+		CELL.X0			S32	2048
+		CELL.Y0			S32	1
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.AIRMASS		STR	AIRMASS
+	FPA.FILTERID		STR	FILTER
+	FPA.FILTER		STR	FILTER
+	FPA.OBSTYPE		STR	OBSTYPE
+	FPA.OBJECT		STR	OBJECT
+	FPA.TIME		STR	MJD-OBS
+	FPA.TIMESYS		STR	TIMESYS
+	FPA.RA			STR	RA
+	FPA.DEC			STR	DEC
+	FPA.RADECSYS		STR	RADECSYS
+	FPA.POSANGLE		STR	ROTANGLE # added at start of 03Am04
+	FPA.FOCUS		STR	TELFOCUS # added at start of 03Am04
+	FPA.ALT			STR	TELALT   # added at start of 03Am04
+	FPA.AZ			STR	TELAZ    # added at start of 03Am04
+	FPA.TEMP		STR	DETTEM
+	FPA.EXPOSURE		STR	EXPTIME
+	CHIP.TEMP		STR	DETTEM
+	CELL.EXPOSURE		STR	EXPTIME
+	CELL.DARKTIME		STR	DARKTIME
+	CELL.GAIN		STR	GAIN     # only in raw; replaced by GAINA, GAINB in mef
+	CELL.READNOISE		STR	RDNOISE
+	CELL.TIME		STR	MJD-OBS
+	CELL.TIMESYS		STR	TIMESYS
+	CELL.XBIN		STR	CCDBIN1
+	CELL.YBIN		STR	CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	MEGACAM
+	FPA.DETECTOR		STR	MEGACAM
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4612
+	CELL.XSIZE		S32	1024
+	CELL.YSIZE		S32	4612
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	50000.0         # probably need to define this by cell
+	CELL.BAD		F32	0
+	CELL.YPARITY		S32	1
+
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	0
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	8192
+		ccd05	S32	10240
+		ccd06	S32	12288
+		ccd07	S32	14336
+		ccd08	S32	16384
+		ccd09	S32	0
+		ccd10	S32	2048
+		ccd11	S32	4096
+		ccd12	S32	6144
+		ccd13	S32	8192
+		ccd14	S32	10240
+		ccd15	S32	12288
+		ccd16	S32	14336
+		ccd17	S32	16384
+		ccd18	S32    -2048
+		ccd19	S32	0    
+		ccd20	S32	2048 
+		ccd21	S32	4096 
+		ccd22	S32	6144 
+		ccd23	S32	8192 
+		ccd24	S32	10240
+		ccd25	S32	12288
+		ccd26	S32	14336
+		ccd27	S32    -2048
+		ccd28	S32	0    
+		ccd29	S32	2048 
+		ccd30	S32	4096 
+		ccd31	S32	6144 
+		ccd32	S32	8192 
+		ccd33	S32	10240
+		ccd34	S32	12288
+		ccd35	S32	14336
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	18447
+		ccd01	S32	18447
+		ccd02	S32	18447
+		ccd03	S32	18447
+		ccd04	S32	18447
+		ccd05	S32	18447
+		ccd06	S32	18447
+		ccd07	S32	18447
+		ccd08	S32	18447
+		ccd09	S32	13835
+		ccd10	S32	13835
+		ccd11	S32	13835
+		ccd12	S32	13835
+		ccd13	S32	13835
+		ccd14	S32	13835
+		ccd15	S32	13835
+		ccd16	S32	13835
+		ccd17	S32	13835
+		ccd18	S32	4612
+		ccd19	S32	4612
+		ccd20	S32	4612
+		ccd21	S32	4612
+		ccd22	S32	4612
+		ccd23	S32	4612
+		ccd24	S32	4612
+		ccd25	S32	4612
+		ccd26	S32	4612
+		ccd27	S32	0
+		ccd28	S32	0
+		ccd29	S32	0
+		ccd30	S32	0
+		ccd31	S32	0
+		ccd32	S32	0
+		ccd33	S32	0
+		ccd34	S32	0
+		ccd35	S32	0
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	FPA.BIAS	METADATA
+#		TABLE	STR	Camera
+#		COLUMN	STR	gain
+#		chipId	STR	{CHIP.NAME}
+#		cellId	STR	{CELL.NAME}
+#		time	STR	{CELL.TIME}
+#	END
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+	CELL.X0		STR	FORTRAN
+	CELL.Y0		STR	FORTRAN
+END
Index: /branches/eam_branches/ippconfig.20240412/megacam/format_split.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/format_split.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/format_split.config	(revision 42661)
@@ -0,0 +1,316 @@
+# The split MecaCam data is stored as single files for each chip, each a simple fits image
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	CFHT 3.6m
+	DETECTOR	STR	MegaCam
+	NAXIS           S32     2
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# The extensions represent chips
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier
+	CONTENT		STR	EXTNAME	# Key to the CONTENTS menu
+	CONTENT.RULE	STR	{CHIP.NAME} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Content name, chipType
+	ccd00		STR	ccd00:CCD42-90
+	ccd01		STR	ccd01:CCD42-90
+	ccd02		STR	ccd02:CCD42-90
+	ccd03		STR	ccd03:CCD42-90
+	ccd04		STR	ccd04:CCD42-90
+	ccd05		STR	ccd05:CCD42-90
+	ccd06		STR	ccd06:CCD42-90
+	ccd07		STR	ccd07:CCD42-90
+	ccd08		STR	ccd08:CCD42-90
+	ccd09		STR	ccd09:CCD42-90
+	ccd10		STR	ccd10:CCD42-90
+	ccd11		STR	ccd11:CCD42-90
+	ccd12		STR	ccd12:CCD42-90
+	ccd13		STR	ccd13:CCD42-90
+	ccd14		STR	ccd14:CCD42-90
+	ccd15		STR	ccd15:CCD42-90
+	ccd16		STR	ccd16:CCD42-90
+	ccd17		STR	ccd17:CCD42-90
+	ccd18		STR	ccd18:CCD42-90
+	ccd19		STR	ccd19:CCD42-90
+	ccd20		STR	ccd20:CCD42-90
+	ccd21		STR	ccd21:CCD42-90
+	ccd22		STR	ccd22:CCD42-90
+	ccd23		STR	ccd23:CCD42-90
+	ccd24		STR	ccd24:CCD42-90
+	ccd25		STR	ccd25:CCD42-90
+	ccd26		STR	ccd26:CCD42-90
+	ccd27		STR	ccd27:CCD42-90
+	ccd28		STR	ccd28:CCD42-90
+	ccd29		STR	ccd29:CCD42-90
+	ccd30		STR	ccd30:CCD42-90
+	ccd31		STR	ccd31:CCD42-90
+	ccd32		STR	ccd32:CCD42-90
+	ccd33		STR	ccd33:CCD42-90
+	ccd34		STR	ccd34:CCD42-90
+	ccd35		STR	ccd35:CCD42-90
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	CCD42-90	STR	LeftAmp:left RightAmp:right
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts for this type
+	left		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECA
+		CELL.TRIMSEC		STR	TSECA
+		CELL.X0			S32	0
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINA
+	END
+
+	right		METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BSECB
+		CELL.TRIMSEC		STR	TSECB
+		CELL.X0			S32	1024
+		CELL.GAIN.SOURCE	STR	HEADER
+		CELL.GAIN		STR	GAINB
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.OBS        STR     EXPNUM
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTER      STR     FILTER
+        FPA.FILTERID    STR     FILTER
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBJECT
+	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+        CELL.READNOISE  STR     RDNOISE
+	CELL.TIME	STR	MJD-OBS
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	CFHT
+	FPA.INSTRUMENT		STR	MEGACAM
+	FPA.DETECTOR	        STR	MEGACAM
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4612
+	CELL.XSIZE		S32	1024
+	CELL.YSIZE		S32	4612
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+        CELL.SATURATION         S32     60000
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	50000.0
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	0
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	8192
+		ccd05	S32	10240
+		ccd06	S32	12288
+		ccd07	S32	14336
+		ccd08	S32	16384
+		ccd09	S32	0
+		ccd10	S32	2048
+		ccd11	S32	4096
+		ccd12	S32	6144
+		ccd13	S32	8192
+		ccd14	S32	10240
+		ccd15	S32	12288
+		ccd16	S32	14336
+		ccd17	S32	16384
+		ccd18	S32    -2048
+		ccd19	S32	0    
+		ccd20	S32	2048 
+		ccd21	S32	4096 
+		ccd22	S32	6144 
+		ccd23	S32	8192 
+		ccd24	S32	10240
+		ccd25	S32	12288
+		ccd26	S32	14336
+		ccd27	S32    -2048
+		ccd28	S32	0    
+		ccd29	S32	2048 
+		ccd30	S32	4096 
+		ccd31	S32	6144 
+		ccd32	S32	8192 
+		ccd33	S32	10240
+		ccd34	S32	12288
+		ccd35	S32	14336
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	18447
+		ccd01	S32	18447
+		ccd02	S32	18447
+		ccd03	S32	18447
+		ccd04	S32	18447
+		ccd05	S32	18447
+		ccd06	S32	18447
+		ccd07	S32	18447
+		ccd08	S32	18447
+		ccd09	S32	13835
+		ccd10	S32	13835
+		ccd11	S32	13835
+		ccd12	S32	13835
+		ccd13	S32	13835
+		ccd14	S32	13835
+		ccd15	S32	13835
+		ccd16	S32	13835
+		ccd17	S32	13835
+		ccd18	S32	4612
+		ccd19	S32	4612
+		ccd20	S32	4612
+		ccd21	S32	4612
+		ccd22	S32	4612
+		ccd23	S32	4612
+		ccd24	S32	4612
+		ccd25	S32	4612
+		ccd26	S32	4612
+		ccd27	S32	0
+		ccd28	S32	0
+		ccd29	S32	0
+		ccd30	S32	0
+		ccd31	S32	0
+		ccd32	S32	0
+		ccd33	S32	0
+		ccd34	S32	0
+		ccd35	S32	0
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	-1
+		ccd01	S32	-1
+		ccd02	S32	-1
+		ccd03	S32	-1
+		ccd04	S32	-1
+		ccd05	S32	-1
+		ccd06	S32	-1
+		ccd07	S32	-1
+		ccd08	S32	-1
+		ccd09	S32	-1
+		ccd10	S32	-1
+		ccd11	S32	-1
+		ccd12	S32	-1
+		ccd13	S32	-1
+		ccd14	S32	-1
+		ccd15	S32	-1
+		ccd16	S32	-1
+		ccd17	S32	-1
+		ccd18	S32	1
+		ccd19	S32	1
+		ccd20	S32	1
+		ccd21	S32	1
+		ccd22	S32	1
+		ccd23	S32	1
+		ccd24	S32	1
+		ccd25	S32	1
+		ccd26	S32	1
+		ccd27	S32	1
+		ccd28	S32	1
+		ccd29	S32	1
+		ccd30	S32	1
+		ccd31	S32	1
+		ccd32	S32	1
+		ccd33	S32	1
+		ccd34	S32	1
+		ccd35	S32	1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/megacam/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/ppImage.config	(revision 42661)
@@ -0,0 +1,193 @@
+### ppImage recipe configuration file for Megacam
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	NONE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	0		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# for a test, turn off selected detrend types
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	TRUE		# Bias subtraction
+DARK		BOOL	FALSE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+
+# binned output image options
+BIN1.XBIN               S32     18
+BIN1.YBIN               S32     18
+BIN2.XBIN               S32     144
+BIN2.YBIN               S32     144
+
+# megacam needs fringe subtraction
+FRINGE		BOOL	TRUE		# Fringe subtraction
+
+USE.DEBURNED.IMAGE	BOOL	FALSE  # Skip burntool
+
+# this table lists extra constraints which should be applied when
+# selecting the detrend images.
+# note: camera and time are always applied
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+#   EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   DETTYPE STR DOMEFLAT.RAW
+#   VERSION STR SKYFLAT.RAW
+#   VERSION STR DOMEFLAT.CORR.XX
+#   VERSION STR SKYFLAT.CORR
+  END
+  FLAT_CORRECTION METADATA
+    FILTER   STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR FPA.TWILIGHT
+  END
+  SHUTTER METADATA
+  END
+  MASK METADATA
+  END	
+END
+
+# only apply the fringe for these filters
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR i
+FRINGE.FILTERS	STR z
+
+
+# Standard chip processing
+CHIP    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE            # 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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END 
Index: /branches/eam_branches/ippconfig.20240412/megacam/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/ppMerge.config	(revision 42661)
@@ -0,0 +1,40 @@
+
+# Bias combination --- don't want min/max rejection
+PPMERGE_BIAS	METADATA
+   REJ		F32	3.0		# Rejection threshold (sigma)
+   ITER		S32	2		# Number of rejection iterations
+   FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+   FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+   WEIGHTS	BOOL	FALSE		# Use image weights?
+   COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Dark combination --- don't want min/max rejection
+# More aggressive clipping than bias, so as to remove CRs
+PPMERGE_DARK	METADATA
+  REJ		F32	2.0		# Rejection threshold (sigma)
+  ITER		S32	4		# Number of rejection iterations
+  FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+  FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+  WEIGHTS	BOOL	FALSE		# Use image weights?
+  COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Flat combination --- use min/max rejection
+PPMERGE_FLAT	METADATA
+	REJ		F32	3.0		# Rejection threshold (sigma)
+	ITER		S32	1		# Number of rejection iterations
+	FRACHIGH	F32	0.3		# Fraction of high pixels to reject immediately
+	FRACLOW		F32	0.1		# Fraction of low pixels to reject immediately
+	NKEEP		S32	5		# Minimum number of pixels in stack to keep
+	WEIGHTS		BOOL	FALSE		# Use image weights?
+	COMBINE		STR	MEAN		# Statistic to use for combination: 
+END
+
+
+# Fringe combination --- already included in default, above
+PPMERGE_FRINGE	METADATA
+	FRACHIGH	F32	0.1		# Fraction of high pixels to reject immediately
+	WEIGHTS		BOOL	FALSE		# Use image weights?
+END
+
Index: /branches/eam_branches/ippconfig.20240412/megacam/ppStack.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/ppStack.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/ppStack.config	(revision 42661)
@@ -0,0 +1,2 @@
+    CONVOLVE        BOOL   FALSE    
+# we don't need this for megacam
Index: /branches/eam_branches/ippconfig.20240412/megacam/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/psastro.config	(revision 42661)
@@ -0,0 +1,188 @@
+
+# save matched stars?
+PSASTRO.SAVE.REFMATCH      BOOL TRUE  # save refstar matches as table in output smf file
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32    2500.
+PSASTRO.GRID.SCALE     F32      50.
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32 0.25
+
+# pmAstromGridMatch parameters
+PSASTRO.GRID.MIN.ANGLE F32 -1.0 # start angle (degrees)
+PSASTRO.GRID.MAX.ANGLE F32 +1.0
+PSASTRO.GRID.DEL.ANGLE F32  1.0
+
+PSASTRO.GRID.MIN.SCALE F32  0.96
+PSASTRO.GRID.MAX.SCALE F32  1.04
+PSASTRO.GRID.DEL.SCALE F32  0.02
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32      2
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.FIT.NITER S32   3
+PSASTRO.MATCH.RADIUS    F32   12.0
+PSASTRO.MATCH.RADIUS.N0 F32   15.0
+PSASTRO.MATCH.RADIUS.N1 F32   10.0
+PSASTRO.MATCH.RADIUS.N2 F32    5.0
+
+PSASTRO.MAX.NRAW       S32      1500   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF       S32      1500   # max stars accepted for fitting (0 for all)
+
+PSASTRO.MIN.INST.MAG.RAW       F32      -17.0  # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32      -11.0  # max instrumental magnitude for stars accepted for fitting
+PSASTRO.GRID.MIN.INST.MAG.RAW  F32      -17.0  # min instrumental magnitude for stars accepted for grid search
+PSASTRO.GRID.MAX.INST.MAG.RAW  F32      -10.0  # max instrumental magnitude for stars accepted for grid search
+PSASTRO.GRID.MIN.SIGMA F32  4.0
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      10   # min fitted stars in solution
+
+PSASTRO.MAX.ALLOWED.FWHM      F32       25
+
+PSASTRO.MOSAIC.MODE           BOOL     TRUE
+
+# for iterations >= N, require a single match per reference
+PSASTRO.MOSAIC.CHIP.NITER     S32      4  # fit clipping iterations
+PSASTRO.MOSAIC.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+PSASTRO.MOSAIC.UNIQ.ITER      S32      2
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N4 F32    2.00 # max allow error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.RADIUS.N0    F32    15.0
+PSASTRO.MOSAIC.RADIUS.N1    F32     8.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N2    F32     8.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N3    F32     4.0 
+PSASTRO.MOSAIC.RADIUS.N4    F32     4.0 
+
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      3 # fit order (-1 means use default)
+
+PSASTRO.MOSAIC.GRADIENT.NX    S32      2   # number of x-dir cells per chip
+PSASTRO.MOSAIC.GRADIENT.NY    S32      5   # number of y-dir cells per chip
+
+# use this recipe to set a tight constraint
+PSASTRO.FINE METADATA
+  PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+  PSASTRO.MOSAIC.RADIUS.N0    F32    8.0
+  PSASTRO.MOSAIC.RADIUS.N1    F32    0.0
+  PSASTRO.MOSAIC.RADIUS.N2    F32    4.0
+  PSASTRO.MOSAIC.RADIUS.N3    F32    4.0
+
+  PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+END
+
+# use this recipe to set a tight constraint
+PSASTRO_COARSE METADATA
+  PSASTRO.GRID.SCALE          F32     50.0
+  PSASTRO.TWEAK.RANGE         F32      1.0
+
+  DVO.GETSTAR.MIN.MAG         F32     10.0
+  DVO.GETSTAR.MAX.RHO         F32  12000.0
+
+  PSASTRO.MAX.INST.MAG.RAW       F32 -9.0  # max instrumental magnitude for stars accepted for fitting
+  PSASTRO.GRID.MAX.INST.MAG.RAW  F32 -9.0  # max instrumental magnitude for stars accepted for grid search
+
+  PSASTRO.GRID.MIN.SIGMA      F32    4.0
+
+  PSASTRO.MATCH.FIT.NITER S32   4
+  PSASTRO.MATCH.RADIUS.N0 F32   60.0
+  PSASTRO.MATCH.RADIUS.N1 F32   30.0
+  PSASTRO.MATCH.RADIUS.N2 F32   15.0
+  PSASTRO.MATCH.RADIUS.N3 F32    8.0
+
+  PSASTRO.MOSAIC.MAX.ERROR.N0 F32    0.0 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N1 F32    0.0 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.0 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.0 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    2.0 # max allow error for valid solution (arcsec)
+
+  PSASTRO.MOSAIC.RADIUS.N0    F32   60.0
+  PSASTRO.MOSAIC.RADIUS.N1    F32   30.0
+  PSASTRO.MOSAIC.RADIUS.N2    F32   15.0
+  PSASTRO.MOSAIC.RADIUS.N3    F32    8.0
+  PSASTRO.MOSAIC.RADIUS.N4    F32    4.0
+
+  PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      1 # fit order (-1 means use default)
+END
+
+PSASTRO.CATDIR              STR      PS1.REF.20140713
+# PSASTRO.CATDIR              STR      SYNTH.GRIZY
+DVO.GETSTAR.MAX.RHO         F32      30000.0
+DVO.GETSTAR.OUTFORMAT       STR      PS1_DEV_0
+DVO.GETSTAR.MIN.MAG         F32      12.0
+DVO.GETSTAR.MIN.MAG.INST    F32     -15.0
+
+# we match the FILTER.ID (corresponding to the FILTER, see camera.config) to the dvo db PHOTCODE
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR u
+  ZEROPT   F32 23.6
+  PHOTCODE STR g
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 26.46
+  PHOTCODE STR g
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32 25.98
+  PHOTCODE STR r
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR gri
+  ZEROPT   F32 26.95
+  PHOTCODE STR r
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+  ZEROPT   F32 25.74
+  PHOTCODE STR i
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+  ZEROPT   F32 24.80
+  PHOTCODE STR z
+END
+
+# plotting options
+PSASTRO.PLOT.INST.MAG.MAX F32 -9.0
+PSASTRO.PLOT.INST.MAG.MIN F32 -17.0
+PSASTRO.PLOT.REF.MAG.MIN  F32 +10.0
+PSASTRO.PLOT.REF.MAG.MAX  F32 +25.0
+
+M31_DEEP METADATA 
+  PSASTRO.CATDIR STR PS1.REF.20170919
+END
+
Index: /branches/eam_branches/ippconfig.20240412/megacam/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/psphot.config	(revision 42661)
@@ -0,0 +1,48 @@
+
+# turn these on to see specific outputs
+SAVE.PLOTS     	BOOL    FALSE
+
+# PSF model parameters : choose the PSF model desired
+# PSF_MODEL           STR  PS_MODEL_QGAUSS
+PSF_MODEL           STR  PS_MODEL_PS1_V1
+# PSF_MODEL           STR  PS_MODEL_RGAUSS
+
+PSF.TREND.MODE STR MAP
+PSF.TREND.NX   S32 1
+PSF.TREND.NY   S32 1
+PSF_SN_LIM F32 5              # minimum S/N for stars used for PSF model
+
+PEAKS_SMOOTH_SIGMA F32 2.5             # smoothing kernel sigma in pixels
+PEAKS_NSIGMA_LIMIT F32 5.0            # peak significance threshold
+MOMENTS_SCALE F32 0.1 # PSFs are generally small, avoid the CRs
+
+PSF_FIT_RADIUS_SCALE F32 10.0 # fitting radius for test PSF model
+
+PSPHOT.CRMASK.APPLY BOOL  TRUE		  # TEST THIS before enabling.
+
+MOMENTS_SX_MIN                      F32   1.0
+MOMENTS_SY_MIN                      F32   1.0
+                                                                                                                                                              
+BACKGROUND.XBIN                     S32   400             # size of background superpixels
+BACKGROUND.YBIN                     S32   400             # size of background superpixels
+BACKGROUND.XSAMPLE                  F32   2.0             # size of background superpixels
+BACKGROUND.YSAMPLE                  F32   2.0             # size of background superpixels
+IMSTATS_NPIX                        S32   40000           # number of pixels to use for sky estimate boxes:
+
+M31_DEEP METADATA 
+  BACKGROUND.XBIN         S32   64             # size of background superpixels
+  BACKGROUND.YBIN         S32   64             # size of background superpixels
+  BACKGROUND.XSAMPLE      F32   2.0            # size of background superpixels
+  BACKGROUND.YSAMPLE      F32   2.0            # size of background superpixels
+
+  FOOTPRINT_GROW_RADIUS   S32   0
+  PSF_SN_LIM              F32   200.0
+  IMSTATS_NPIX            S32   100000
+  SKY_STAT                STR   ROBUST_MEDIAN
+
+  PSF.TREND.MODE                      STR   MAP
+  PSF.TREND.NX                        S32   2
+  PSF.TREND.NY                        S32   3
+
+  APTREND.ORDER.MAX                   S32   1
+END
Index: /branches/eam_branches/ippconfig.20240412/megacam/pswarp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/pswarp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/pswarp.config	(revision 42661)
@@ -0,0 +1,3 @@
+### Megacam recipe for pswarp
+
+ASTROM.SOURCE	STR	PSASTRO.OUTPUT	# Source file rule for astrometry, or NULL
Index: /branches/eam_branches/ippconfig.20240412/megacam/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/megacam/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/megacam/rejections.config	(revision 42661)
@@ -0,0 +1,38 @@
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  0.5
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SNR         F32  0.0
+  IMFILE.BIN.STDEV   F32  0.5
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  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  3.0
+  ENSEMBLE.STDEV     F32  3.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
+# IMFILE.MEAN is the maximum permitted mean value for an imfile, relative to the standard deviation
+# IMFILE.STDEV is the maximum permitted standard deviation for an imfile
+# EXP.MEAN is the maximum permitted mean value for an exposure, relative to the standard deviation
+# EXP.STDEV is the maximum permitted standard deviation for an exposure
+# EXP.MEANSTDEV is the maximum permitted mean standard deviation for an exposure relative to the mean
+# ENSEMBLE.MEAN is the maximum permitted mean for an ensemble of exposures
+# ENSEMBLE.STDEV is the maximum permitted standard deviation for an ensemble of exposures
+# ENSEMBLE.MEANSTDEV is the maximum permitted mean standard deviation for an ensemble of exposures
+# IMFILE.SNR is the minimum permitted signal-to-noise for an imfile
+# EXP.SNR is the minimum permitted signal-to-noise for an exposure
+# These values (all except FILTER) may be zero, in which case no clipping is applied.
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/Makefile.am	(revision 42661)
@@ -0,0 +1,22 @@
+
+installdir = $(datadir)/ippconfig/mosaic2
+
+install_files = \
+	dvo.config \
+	dvo.layout \
+	camera.config \
+	format.config \
+	ppImage.config \
+        psastro.config \
+	psphot.config \
+	ppMerge.config \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/camera.config	(revision 42661)
@@ -0,0 +1,106 @@
+# Camera configuration file for the CTIO MOSAIC2 : describes the camera
+
+# File formats that we know about
+FORMATS		METADATA
+    MEF		STR	mosaic2/format.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA	METADATA
+	ccd00	STR	LeftAmp RightAmp
+	ccd01	STR	LeftAmp RightAmp
+	ccd02	STR	LeftAmp RightAmp
+	ccd03	STR	LeftAmp RightAmp
+	ccd04	STR	LeftAmp RightAmp
+	ccd05	STR	LeftAmp RightAmp
+	ccd06	STR	LeftAmp RightAmp
+	ccd07	STR	LeftAmp RightAmp
+END
+
+# menu of possible filter names:  internal  STR  external name
+FILTER.ID       METADATA
+   VR MULTI
+   VR STR VR.Supermacho.c6027 
+   VR STR VR Supermacho c6027 
+   VR STR VR SuperMacho c6027 
+   R  STR R Harris c6004      
+   I  STR I c6028             
+   U  STR U c6001
+   B  STR B Harris c6002
+   V  STR V Harris c6026
+   # Minor filters 
+   g  MULTI
+   g  STR g SDSS c6017
+   g  STR SDSS g c6017
+   r  MULTI
+   r  STR SDSS r c6018
+   r  STR r SDSS c6018
+   i  MULTI
+   i  STR i SDSS c6019
+   i  STR SDSS i c6019
+   # Unused filters (only used in zeros, and therefore irrelevent)
+   NULL MULTI
+   NULL STR z SDSS c6020
+   NULL STR SDSS z c6020
+   NULL STR ha8 H-alpha+8nm c6011
+   NULL STR M Washington c6007
+   NULL STR u SDSS c6021
+   NULL STR VRr Supermacho c6027 
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID		METADATA
+	FPA	STR	fpa
+END
+
+DVO.CAMERADIR	STR	mosaic2		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES		METADATA
+	# Recipes for ppImage
+        PPIMAGE         STR     mosaic2/ppImage.config
+	PPMERGE		STR	mosaic2/ppMerge.config
+        PSPHOT          STR     mosaic2/psphot.config
+	REJECTIONS	STR	mosaic2/rejections.config	# Detrend rejection limits
+END
+
+# Reduction classes
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+# Set file rules appropriate for mef format (common to all mef cameras)
+FILERULES   STR   recipes/filerules-mef.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.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
+
+  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
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}.{CHIP.N}		# Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/dvo.config	(revision 42661)
@@ -0,0 +1,63 @@
+
+# location of DVO database tables
+CATDIR			/data/alala.0/eugene/isp/catdir
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+DATE-KEYWORD		DATE-OBS
+DATE-MODE		yyyy-mm-dd
+UT-KEYWORD		NONE
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/dvo.layout	(revision 42661)
@@ -0,0 +1,29 @@
+# this file defines the layout of the mosaic imager:
+
+NCCD 12
+NAXIS1 2080
+NAXIS2 4128
+
+MOSAIC_X 6
+MOSAIC_Y 2
+
+# lines need to contain:
+
+CHIPID_KEYWORD CHIPID
+
+# ID  CHIPID xoffset yoffset xflip yflip datasec         biassec                 Xo    Yo     theta
+CCD.0  chip00      0       0     0     0 [6:2049,5:4100] [2050:2080,2:4128]     0.0    0.0   0.00
+CCD.1  chip01      1       0     0     0 [6:2049,5:4100] [2050:2080,2:4128]  2000.0    0.0   0.00
+CCD.2  chip02      2       0     1     0 [6:2049,5:4100] [2050:2080,2:4128]  6000.0    0.0   0.00
+CCD.3  chip03      3       0     1     0 [6:2049,5:4100] [2050:2080,2:4128]  8000.0    0.0   0.00
+CCD.4  chip04      4       0     0     0 [6:2049,5:4100] [2050:2080,2:4128]  8000.0    0.0   0.00
+CCD.5  chip05      5       0     0     0 [6:2049,5:4100] [2050:2080,2:4128] 10000.0    0.0   0.00
+CCD.6  chip06      0       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]     0.0 8000.0   1.00
+CCD.7  chip07      1       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]  2000.0 8000.0   0.00
+CCD.8  chip08      2       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]  4000.0 8000.0   0.00
+CCD.9  chip09      3       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]  6000.0 8000.0   0.00
+CCD.10 chip10      4       1     0     1 [6:2049,5:4100] [2050:2080,2:4128]  8000.0 8000.0   0.00
+CCD.11 chip11      5       1     0     1 [6:2049,5:4100] [2050:2080,2:4128] 10000.0 8000.0   0.00
+
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/format.config	(revision 42661)
@@ -0,0 +1,162 @@
+# Format file for CTIO Mosaic2 camera used by ESSENCE
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	CTIO 4.0 meter telescope
+	DETECTOR	STR	Mosaic2
+	EXTEND		BOOL	T
+	NEXTEND		S32	16
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	 # The FITS file represents an entire FPA
+	EXTENSIONS	STR	CELL	 # The extensions represent cells
+	FPA.OBS	STR	FILENAME # A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chip name:type
+	im1		STR	ccd00:LeftAmp:left
+	im2		STR	ccd00:RightAmp:right
+	im3		STR	ccd01:LeftAmp:left  
+	im4		STR	ccd01:RightAmp:right
+	im5		STR	ccd02:LeftAmp:left  
+	im6		STR	ccd02:RightAmp:right
+	im7		STR	ccd03:LeftAmp:left  
+	im8		STR	ccd03:RightAmp:right
+	im9		STR	ccd04:LeftAmp:left  
+	im10		STR	ccd04:RightAmp:right
+	im11		STR	ccd05:LeftAmp:left  
+	im12		STR	ccd05:RightAmp:right
+	im13		STR	ccd06:LeftAmp:left  
+	im14		STR	ccd06:RightAmp:right
+	im15		STR	ccd07:LeftAmp:left  
+	im16		STR	ccd07:RightAmp:right
+END
+
+# Specify the cell data
+CELLS	METADATA
+	left	METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.XPARITY		S32	1
+		CELL.X0			S32	0
+	END
+	right	METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.XPARITY		S32	1
+		CELL.X0			S32	1024
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.AIRMASS		STR	AIRMASS
+	FPA.FILTERID		STR	FILTER
+	FPA.FILTER		STR	FILTER
+	FPA.RA			STR	RA
+	FPA.DEC			STR	DEC
+	FPA.RADECSYS		STR	RADECSYS
+	FPA.OBSTYPE		STR	OBSTYPE
+	FPA.OBJECT		STR	OBJECT
+	FPA.TIME		STR	MJD-OBS
+	CHIP.TEMP		STR	CCDTEM
+	CELL.EXPOSURE		STR	EXPTIME
+	CELL.DARKTIME		STR	DARKTIME
+	CELL.GAIN		STR	GAIN
+	CELL.READNOISE		STR	RDNOISE
+	CELL.SATURATION		STR	SATURATE
+	CELL.TIME		STR	MJD-OBS
+	CELL.XBIN		STR	CCDSUM
+	CELL.YBIN		STR	CCDSUM
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+        FPA.TELESCOPE           STR     BLANCO
+        FPA.INSTRUMENT          STR     MOSAIC2
+        FPA.DETECTOR            STR     MOSAIC2
+	FPA.POSANGLE		F32	0.0
+	FPA.TIMESYS		STR	UTC		# Header says "UTC approximate"
+	FPA.ALT			F32	0.0		# Not present in header
+	FPA.AZ			F32	0.0		# Not present in header
+	CELL.TIMESYS		STR	UTC		# Header says "UTC approximate"
+	CELL.READDIR		S32	1		# Cell is read in x direction
+	CELL.BAD		S32	-100
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		ccd00	S32	0
+		ccd01	S32	2048
+		ccd02	S32	4096
+		ccd03	S32	6144
+		ccd04	S32	0
+		ccd05	S32	2048
+		ccd06	S32	4096
+		ccd07	S32	6144
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		ccd00	S32	0
+		ccd01	S32	0
+		ccd02	S32	0
+		ccd03	S32	0
+		ccd04	S32	4096
+		ccd05	S32	4096
+		ccd06	S32	4096
+		ccd07	S32	4096
+	END
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		ccd00	S32	1
+		ccd01	S32	1
+		ccd02	S32	1
+		ccd03	S32	1
+		ccd04	S32	1
+		ccd05	S32	1
+		ccd06	S32	1
+		ccd07	S32	1
+	END
+
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	FPA.BIAS	METADATA
+#		TABLE	STR	Camera
+#		COLUMN	STR	gain
+#		chipId	STR	{CHIP.NAME}
+#		cellId	STR	{CELL.NAME}
+#		time	STR	{CELL.TIME}
+#	END
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+#	CHIP.X0		STR	FORTRAN
+#	CHIP.Y0		STR	FORTRAN
+#	CELL.X0		STR	FORTRAN
+#	CELL.Y0		STR	FORTRAN
+END
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/ppImage.config	(revision 42661)
@@ -0,0 +1,164 @@
+### ppImage recipe configuration file for CTIO MOSAIC2
+
+# List of tasks to perform
+SHUTTER         BOOL    FALSE           # Shutter correction
+DARK		BOOL	TRUE		# Dark correction
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+CHIP.FITS       BOOL    TRUE            # Save base detrended image?
+BIN1.FITS	BOOL    TRUE            # Save 1st binned chip image?
+BIN2.FITS	BOOL    TRUE		# Save 2nd binned chip image?
+
+# binned output image options
+BIN1.XBIN               S32     8
+BIN1.YBIN               S32     8
+BIN2.XBIN               S32     64
+BIN2.YBIN               S32     64
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	3		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+#   EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   DETTYPE STR DOMEFLAT.RAW
+#   VERSION STR SKYFLAT.RAW
+#   VERSION STR DOMEFLAT.CORR.XX
+#   VERSION STR SKYFLAT.CORR
+  END
+  FLAT_CORRECTION METADATA
+    FILTER   STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR FPA.TWILIGHT
+  END
+  SHUTTER METADATA
+  END
+  MASK METADATA
+  END	
+END
+
+####################################################################################
+# Need the following in order to turn off options from the site-level recipes...
+#
+#  ESSENCE data does not need a fringe or a shutter correction.
+####################################################################################
+
+# Standard chip processing
+CHIP   METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  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    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Dark subtraction only
+PPIMAGE_D         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           #  Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Shutter correction only
+PPIMAGE_S         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD      METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           #  Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS      METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           #  Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF     METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           #  Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR    METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photometry
+PPIMAGE_OBDSFRP   METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  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    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photometry & astrometry
+PPIMAGE_OBDSFRA   METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  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    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    TRUE            # Astrometry for mosaic?
+END
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/ppMerge.config	(revision 42661)
@@ -0,0 +1,4 @@
+# Ordinates for fitting dark current
+DARK.ORDINATES	METADATA
+END
+DARK.NORM	STR	CELL.DARKTIME		# Dark normalisation concept
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/psastro.config	(revision 42661)
@@ -0,0 +1,76 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (mm / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32   1000.0
+PSASTRO.GRID.SCALE     F32     50.0
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.FIT.NITER S32   3
+PSASTRO.MATCH.RADIUS    F32   12.0
+PSASTRO.MATCH.RADIUS.N0 F32   15.0
+PSASTRO.MATCH.RADIUS.N1 F32   10.0
+PSASTRO.MATCH.RADIUS.N2 F32    5.0
+
+PSASTRO.MAX.NRAW       S32      1500   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF       S32      1500   # max stars accepted for fitting (0 for all)
+
+PSASTRO.MIN.INST.MAG.RAW       F32      -17.0  # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32       -8.0  # max instrumental magnitude for stars accepted for fitting
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      10   # min fitted stars in solution
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.RADIUS.N0    F32   10.0 # initial match (after chip astrom)
+PSASTRO.MOSAIC.RADIUS.N1    F32    8.0 # (after first mosaic pass)
+PSASTRO.MOSAIC.RADIUS.N2    F32    8.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N3    F32    4.0 # 
+
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      3 # fit order (-1 means use default)
+
+PSASTRO.MOSAIC.GRADIENT.NX    S32     2   # number of x-dir cells per chip
+PSASTRO.MOSAIC.GRADIENT.NY    S32     4   # number of y-dir cells per chip
+
+PSASTRO.MOSAIC.MODE           BOOL     FALSE
+
+# use this recipe to set a tight constraint
+PSASTRO.FINE METADATA
+  PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+  PSASTRO.MOSAIC.RADIUS.N0    F32    8.0
+  PSASTRO.MOSAIC.RADIUS.N1    F32    0.0
+  PSASTRO.MOSAIC.RADIUS.N2    F32    4.0
+  PSASTRO.MOSAIC.RADIUS.N3    F32    4.0
+
+  PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      3 # fit order (-1 means use default)
+END
+
+PSASTRO.GRID.MIN.SCALE F32  0.98
+PSASTRO.GRID.MAX.SCALE F32  1.04
+PSASTRO.GRID.DEL.SCALE F32  0.02
+PSASTRO.GRID.MIN.SIGMA F32  5.0
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/psphot.config	(revision 42661)
@@ -0,0 +1,32 @@
+	
+IMSTATS_NPIX                         S32   10000    	 # number of pixels to use for sky estimate boxes:
+
+# robust vs fitted??  gpc1 uses fitted...  robust median gives better background stdev --> test with flat-field photometry
+SKY_STAT                             STR   ROBUST_MEDIAN    # statistic used to measure background
+
+PSF_MODEL                            STR   PS_MODEL_QGAUSS
+PSF_MAX_NSTARS                       S32   300              # limit number of stars used for PSF model
+
+# Mosaic 2 has substantial IQ variations in the y-direction
+PSF_CLUMP_NX                         S32   1               # subdivide image in to NX x NY regions for 
+PSF_CLUMP_NY                         S32   3               # selecting PSF stars
+
+# Mosaic 2 has substantial IQ variations in the y-direction
+PSF.TREND.NX                         S32   1
+PSF.TREND.NY                         S32   3
+
+PEAKS_NSIGMA_LIMIT                   F32   15.0            # peak significance threshold
+FOOTPRINT_NSIGMA_LIMIT               F32   14.0      	  # threshold for bright pmFootprint detection
+
+PSF_SN_LIM                           F32   20.0            # minimum S/N for stars used for PSF model
+FULL_FIT_SN_LIM                      F32   10.0
+EXT_MIN_SN                           F32   10.0           # fit galaxies above this S/N limit
+
+EXT_MODEL                            STR   PS_MODEL_QGAUSS
+
+EXTENDED_SOURCE_SN_LIM               F32   3.0
+#EXTENDED_SOURCE_ANALYSIS            BOOL  TRUE  # perform any of the aperture-like measurements?
+#EXTENDED_SOURCE_PETROSIAN           BOOL  TRUE
+
+# 3 to match PSF and Moments 2D variations
+APTREND.ORDER.MAX                    S32   3
Index: /branches/eam_branches/ippconfig.20240412/mosaic2/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/mosaic2/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/mosaic2/rejections.config	(revision 42661)
@@ -0,0 +1,184 @@
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  1.0
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SNR         F32  0.0
+  IMFILE.BIN.STDEV   F32  0.5
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  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  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+DARK METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  1.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  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  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  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+SHUTTER 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 20.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
+
+
+FLAT 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  3.0
+END
+
+
+FRINGE 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
+
+DARKMASK 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
+
+FLATMASK 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
+# IMFILE.MEAN is the maximum permitted mean value for an imfile, relative to the standard deviation
+# IMFILE.STDEV is the maximum permitted standard deviation for an imfile
+# EXP.MEAN is the maximum permitted mean value for an exposure, relative to the standard deviation
+# EXP.STDEV is the maximum permitted standard deviation for an exposure
+# EXP.MEANSTDEV is the maximum permitted mean standard deviation for an exposure relative to the mean
+# ENSEMBLE.MEAN is the maximum permitted mean for an ensemble of exposures
+# ENSEMBLE.STDEV is the maximum permitted standard deviation for an ensemble of exposures
+# ENSEMBLE.MEANSTDEV is the maximum permitted mean standard deviation for an ensemble of exposures
+# IMFILE.SNR is the minimum permitted signal-to-noise for an imfile
+# EXP.SNR is the minimum permitted signal-to-noise for an exposure
+# These values (all except FILTER) may be zero, in which case no clipping is applied.
Index: /branches/eam_branches/ippconfig.20240412/notes.txt
===================================================================
--- /branches/eam_branches/ippconfig.20240412/notes.txt	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/notes.txt	(revision 42661)
@@ -0,0 +1,16 @@
+
+creating a new camera:
+
+* add the camera to the CAMERAS list (ipp/ippconfig/ipprc.config)
+* create the camera directory (ipp/ippconfig/CAMERA)
+* copy example recipe files from a similar camera (eg, ipp/ippconfig/megacam)
+* copy Makefile.am from a similar camera (eg, ipp/ippconfig/megacam)
+* edit camera.config to describe your camera
+  - list the ccds and chips in FPA METADATA
+  - list the filters of interest (header name STR internal name)
+    give all varients used in the headers
+  - fix paths which refer to the original paths.
+* edit the format*.config files to match your camera:
+  - set up a rule to recognize the camera
+    - define keywords which will uniquely recognize your headers
+     
Index: /branches/eam_branches/ippconfig.20240412/recipes/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/Makefile.am	(revision 42661)
@@ -0,0 +1,46 @@
+
+installdir = $(datadir)/ippconfig/recipes
+
+install_files = \
+	filerules-simple.mdc \
+	filerules-mef.mdc \
+	filerules-split.mdc \
+	fitstypes.mdc \
+	addstar.config \
+	masks.config \
+	masks.16bit.config \
+	reductionClasses.mdc \
+	rejections.config \
+	dqStatsTool.config \
+	ppImage.config \
+	ppMerge.config \
+	ppStack.config \
+	ppSmooth.config \
+	ppStats.config \
+	psastro.config \
+	psphot.config \
+	pswarp.config \
+	psvideophot.config \
+	ppSim.config \
+	ppSub.config \
+	gDiff.config \
+	dvocorr.config \
+	censor.config \
+	jpeg.mdc \
+        ppStatsFromMetadata.config \
+	ppNoiseMap.config \
+	ppSkycell.config \
+	ppVizPSF.mdc \
+	ppBackground.mdc \
+	pstamp.config \
+	fpcamera.config \
+	remote_hosts.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/recipes/addstar.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/addstar.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/addstar.config	(revision 42661)
@@ -0,0 +1,14 @@
+# configurable options for addstar
+# the IMAGES.ONLY option has been deprecated: set it when defining an addstar run with addtool -image-only
+# it is not clear we still need an addstar recipe.
+
+# IMAGES.ONLY  BOOL  TRUE
+
+# FLATCORR METADATA
+#     # IMAGES.ONLY  BOOL  FALSE
+#     IMAGES.ONLY  BOOL  TRUE
+# END
+# 
+# ADDSTAR	METADATA
+#     IMAGES.ONLY  BOOL  TRUE
+# END
Index: /branches/eam_branches/ippconfig.20240412/recipes/censor.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/censor.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/censor.config	(revision 42661)
@@ -0,0 +1,1 @@
+# parameters for censorObject (none yet!)
Index: /branches/eam_branches/ippconfig.20240412/recipes/dqStatsTool.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/dqStatsTool.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/dqStatsTool.config	(revision 42661)
@@ -0,0 +1,293 @@
+BUNDLE_SIZE	S32	1000       # Number of exposures to bundle together
+# BUNDLE_AGE      ?      "2 hours"? # I'd like this to be a way to tell if we can just skip ahead, since the bundle is "old" Don't know how, though.
+
+DECISION.ENGINE METADATA           # Definition of the rules to determine if a given exposure is good or not.
+    RULE MULTI
+    RULE METADATA
+        COLNAME STR CAMRUN_QUALITY
+	MINIMUM S32 0
+	MAXIMUM S32 0
+	RULETYPE STR STRICT
+   END
+# CZW: 2011-02-09 All deteff values in the database currently report values 1.85 mag less sensitive than reality.  
+# CDF data generated from the data in camRun with non-NULL deteff values.
+# CZW: How I did this so I can remember next time.
+# echo "select zpt_obs,fwhm_major,deteff from camProcessedExp JOIN camRun USING (cam_id) JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id) WHERE camRun.label LIKE '%.nightlyscience' AND quality = 0 AND filter = 'FILTER';" | sed 's/FILTER/g.00000/' | mysql -h ippdb01 -u ipp -pipp gpc1 | awk '{print($3)}' | grep -v deteff | grep -v NULL | mk_cdf.pl | awk '{print($2,$1)}' | spline - `echo 0.0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 0.99 1.0`
+# CZW: 2011-03-10 We've been off the sky too much to get much new science data. I've added the ThreePi.136 reprocessing to this to help gri
+# CZW: 2011-05-04 Updated values. 
+    RULE METADATA
+        COLNAME STR DETEFF
+        RULETYPE STR CDF
+        FILTER  STR g.00000
+        CDF00   F32 19.245000
+        CDF05   F32 21.519900
+        CDF10   F32 21.705100
+        CDF15   F32 21.831400
+        CDF20   F32 21.901700
+        CDF25   F32 21.961500
+        CDF30   F32 22.009200
+        CDF35   F32 22.049700
+        CDF40   F32 22.085100
+        CDF45   F32 22.126400
+        CDF50   F32 22.161100
+        CDF55   F32 22.196100
+        CDF60   F32 22.230600
+        CDF65   F32 22.261400
+        CDF70   F32 22.294200
+        CDF75   F32 22.332200
+        CDF80   F32 22.372500
+        CDF85   F32 22.421000
+        CDF90   F32 22.471900
+        CDF95   F32 22.540200
+        CDF99   F32 22.657600
+        CDF100  F32 22.992000
+    END
+    RULE METADATA
+        COLNAME STR DETEFF
+        RULETYPE STR CDF
+        FILTER  STR r.00000
+        CDF00   F32 16.424200
+        CDF05   F32 21.111400
+        CDF10   F32 21.317500
+        CDF15   F32 21.472400
+        CDF20   F32 21.615500
+        CDF25   F32 21.711900
+        CDF30   F32 21.789700
+        CDF35   F32 21.846100
+        CDF40   F32 21.898400
+        CDF45   F32 21.945800
+        CDF50   F32 21.989500
+        CDF55   F32 22.034000
+        CDF60   F32 22.075800
+        CDF65   F32 22.116800
+        CDF70   F32 22.152700
+        CDF75   F32 22.189200
+        CDF80   F32 22.230300
+        CDF85   F32 22.271900
+        CDF90   F32 22.329200
+        CDF95   F32 22.394500
+        CDF99   F32 22.532000
+        CDF100  F32 22.870400
+    END
+    RULE METADATA
+        COLNAME STR DETEFF
+        RULETYPE STR CDF
+        FILTER  STR i.00000
+        CDF00   F32 15.811400
+        CDF05   F32 20.490100
+        CDF10   F32 21.001400
+        CDF15   F32 21.176500
+        CDF20   F32 21.286300
+        CDF25   F32 21.368800
+        CDF30   F32 21.437400
+        CDF35   F32 21.509900
+        CDF40   F32 21.572000
+        CDF45   F32 21.629900
+        CDF50   F32 21.697600
+        CDF55   F32 21.756500
+        CDF60   F32 21.809000
+        CDF65   F32 21.857300
+        CDF70   F32 21.907200
+        CDF75   F32 21.951700
+        CDF80   F32 22.006600
+        CDF85   F32 22.070800
+        CDF90   F32 22.162300
+        CDF95   F32 22.323700
+        CDF99   F32 22.476700
+        CDF100  F32 22.892300
+    END
+    RULE METADATA
+        COLNAME STR DETEFF
+        RULETYPE STR CDF
+        FILTER  STR z.00000
+        CDF00   F32 14.759100
+        CDF05   F32 18.965400
+        CDF10   F32 19.733200
+        CDF15   F32 20.050200
+        CDF20   F32 20.224400
+        CDF25   F32 20.317200
+        CDF30   F32 20.403300
+        CDF35   F32 20.491200
+        CDF40   F32 20.581900
+        CDF45   F32 20.656000
+        CDF50   F32 20.720000
+        CDF55   F32 20.778800
+        CDF60   F32 20.843400
+        CDF65   F32 20.916000
+        CDF70   F32 20.998600
+        CDF75   F32 21.093300
+        CDF80   F32 21.182900
+        CDF85   F32 21.242400
+        CDF90   F32 21.297500
+        CDF95   F32 21.383500
+        CDF99   F32 21.553000
+        CDF100  F32 21.701800
+    END
+    RULE METADATA
+        COLNAME STR DETEFF
+        RULETYPE STR CDF
+        FILTER  STR y.00000
+        CDF00   F32 14.606500
+        CDF05   F32 17.858300
+        CDF10   F32 18.328600
+        CDF15   F32 18.584100
+        CDF20   F32 18.870500
+        CDF25   F32 19.100900
+        CDF30   F32 19.237800
+        CDF35   F32 19.339200
+        CDF40   F32 19.407300
+        CDF45   F32 19.473800
+        CDF50   F32 19.541000
+        CDF55   F32 19.608900
+        CDF60   F32 19.682500
+        CDF65   F32 19.743900
+        CDF70   F32 19.811100
+        CDF75   F32 19.899000
+        CDF80   F32 20.011200
+        CDF85   F32 20.089600
+        CDF90   F32 20.148100
+        CDF95   F32 20.221100
+        CDF99   F32 20.340000
+        CDF100  F32 20.594900
+    END
+    RULE METADATA
+        COLNAME STR DETEFF
+        RULETYPE STR CDF
+        FILTER  STR w.00000
+        CDF00   F32 21.986000
+        CDF05   F32 21.990000
+        CDF10   F32 22.056500
+        CDF15   F32 22.097000
+        CDF20   F32 22.145000
+        CDF25   F32 22.186500
+        CDF30   F32 22.209500
+        CDF35   F32 22.286500
+        CDF40   F32 22.339800
+        CDF45   F32 22.385200
+        CDF50   F32 22.413200
+        CDF55   F32 22.506700
+        CDF60   F32 22.554200
+        CDF65   F32 22.587100
+        CDF70   F32 22.594200
+        CDF75   F32 22.616800
+        CDF80   F32 22.688200
+        CDF85   F32 22.723000
+        CDF90   F32 22.765800
+        CDF95   F32 22.891600
+        CDF99   F32 22.964500
+        CDF100  F32 22.977000
+    END
+    RULE METADATA
+        COLNAME STR FWHM_MAJOR
+	RULETYPE STR UNUSED
+	MINIMUM F32 0.0
+	MAXIMUM F32 9.3            # 90-percentile 2010-02-14 through 2010-06-20 = 2.4"
+    END
+    RULE METADATA
+    	COLNAME STR FWHM_MINOR
+	RULETYPE STR UNUSED
+	MINIMUM F32 0.0
+	MAXIMUM F32 8.44	   # 90-percentile 2010-02-14 through 2010-06-20 = 2.18"
+    END
+    RULE METADATA
+    	 COLNAME STR ZEROPOINT
+	RULETYPE STR UNUSED
+	 FILTER  STR g.00000
+	 MINIMUM F32 24.3051           # (median 2010-02-14 through 2010-06-20) - 0.25 magnitudes
+	 MAXIMUM F32 99.9999           # We refuse to believe in negative clouds.
+    END
+    RULE METADATA
+    	 COLNAME STR ZEROPOINT
+	RULETYPE STR UNUSED
+	 FILTER  STR r.00000
+	 MINIMUM F32 24.5294           # (median 2010-02-14 through 2010-06-20) - 0.25 magnitudes
+	 MAXIMUM F32 99.9999           # We refuse to believe in negative clouds.
+    END
+    RULE METADATA
+    	 COLNAME STR ZEROPOINT
+	RULETYPE STR UNUSED
+	 FILTER  STR i.00000
+	 MINIMUM F32 24.4641           # (median 2010-02-14 through 2010-06-20) - 0.25 magnitudes
+	 MAXIMUM F32 99.9999           # We refuse to believe in negative clouds.
+    END
+    RULE METADATA
+    	 COLNAME STR ZEROPOINT
+	RULETYPE STR UNUSED
+	 FILTER  STR z.00000
+	 MINIMUM F32 24.1128           # (median 2010-02-14 through 2010-06-20) - 0.25 magnitudes
+	 MAXIMUM F32 99.9999           # We refuse to believe in negative clouds.
+    END
+    RULE METADATA
+    	 COLNAME STR ZEROPOINT
+	RULETYPE STR UNUSED
+	 FILTER  STR y.00000
+	 MINIMUM F32 23.1503           # (median 2010-02-14 through 2010-06-20) - 0.25 magnitudes
+	 MAXIMUM F32 99.9999           # We refuse to believe in negative clouds.
+    END
+    RULE METADATA
+    	 COLNAME STR ZEROPOINT
+	RULETYPE STR UNUSED
+	 FILTER  STR w.00000
+	 MINIMUM F32 25.8944           # (median 2010-02-14 through 2010-06-20) - 0.25 magnitudes
+	 MAXIMUM F32 99.9999           # We refuse to believe in negative clouds.
+    END
+END
+
+STATS.COLUMNS METADATA             # Column definitions for what goes into a bundle
+    COLUMN MULTI
+    TYPE   VAL TABLE            ENTRY             DATATYPE       COLNAME
+    COLUMN VAL rawExp           exp_name          PS_DATA_STRING EXPNAME             # Exposure name
+    COLUMN VAL rawExp		camera		  PS_DATA_STRING CAMERA		     # The camera for this exposure
+    COLUMN VAL rawExp           dateobs           PS_DATA_TIME   DATEOBS             # Date of observation
+    COLUMN VAL rawExp           filter            PS_DATA_STRING FILTER              # Filter used
+    COLUMN VAL rawExp           comment           PS_DATA_STRING COMMENT             # Obs comment
+    COLUMN VAL rawExp           ra  	          PS_DATA_F64 	 RA                  # Right ascension
+    COLUMN VAL rawExp           decl 	          PS_DATA_F64    DEC                 # Declination
+    COLUMN VAL rawExp           exp_time          PS_DATA_F32    EXPTIME	     # Exposure time
+    COLUMN VAL rawExp           obs_mode          PS_DATA_STRING OBS_MODE
+
+    COLUMN VAL camProcessedExp  zpt_obs           PS_DATA_F32    ZEROPOINT	     
+    COLUMN VAL camProcessedExp  zpt_stdev         PS_DATA_F32    ZEROPOINT_STDEV     
+    COLUMN VAL camProcessedExp  zpt_lq            PS_DATA_F32    ZEROPOINT_LQ	     
+    COLUMN VAL camProcessedExp  zpt_uq            PS_DATA_F32    ZEROPOINT_UQ	     
+
+    COLUMN VAL camProcessedExp  fwhm_major        PS_DATA_F32    FWHM_MAJOR	     
+    COLUMN VAL camProcessedExp  fwhm_major_lq     PS_DATA_F32    FWHM_MAJOR_LQ	     
+    COLUMN VAL camProcessedExp  fwhm_major_uq     PS_DATA_F32    FWHM_MAJOR_UQ	     
+    COLUMN VAL camProcessedExp  fwhm_minor        PS_DATA_F32    FWHM_MINOR	     
+    COLUMN VAL camProcessedExp  fwhm_minor_lq     PS_DATA_F32    FWHM_MINOR_LQ	     
+    COLUMN VAL camProcessedExp  fwhm_minor_uq     PS_DATA_F32    FWHM_MINOR_UQ	     
+
+    COLUMN VAL camProcessedExp  iq_fwhm_major     PS_DATA_F32    IQ_FWHM_MAJOR	     
+    COLUMN VAL camProcessedExp  iq_fwhm_major_err PS_DATA_F32    IQ_FWHM_MAJOR_ERR   
+    COLUMN VAL camProcessedExp  iq_fwhm_minor     PS_DATA_F32    IQ_FWHM_MINOR	     
+    COLUMN VAL camProcessedExp  iq_fwhm_minor_err PS_DATA_F32    IQ_FWHM_MINOR_ERR   
+
+    COLUMN VAL camProcessedExp  iq_m2             PS_DATA_F32    IQ_M2		     
+    COLUMN VAL camProcessedExp  iq_m2_err         PS_DATA_F32    IQ_M2_ERR	     
+    COLUMN VAL camProcessedExp  iq_m2_lq          PS_DATA_F32    IQ_M2_LQ	     
+    COLUMN VAL camProcessedExp  iq_m2_uq          PS_DATA_F32    IQ_M2_UQ	     
+
+    COLUMN VAL camProcessedExp  iq_m2c            PS_DATA_F32    IQ_M2C		     
+    COLUMN VAL camProcessedExp  iq_m2c_err        PS_DATA_F32    IQ_M2C_ERR	     
+    COLUMN VAL camProcessedExp  iq_m2c_lq         PS_DATA_F32    IQ_M2C_LQ	     
+    COLUMN VAL camProcessedExp  iq_m2c_uq         PS_DATA_F32    IQ_M2C_UQ	     
+
+    COLUMN VAL camProcessedExp  iq_m2s            PS_DATA_F32    IQ_M2S		     
+    COLUMN VAL camProcessedExp  iq_m2s_err        PS_DATA_F32    IQ_M2S_ERR	     
+    COLUMN VAL camProcessedExp  iq_m2s_lq         PS_DATA_F32    IQ_M2S_LQ	     
+    COLUMN VAL camProcessedExp  iq_m2s_uq         PS_DATA_F32    IQ_M2S_UQ	     
+
+    COLUMN VAL camProcessedExp  iq_m3             PS_DATA_F32    IQ_M3		     
+    COLUMN VAL camProcessedExp  iq_m3_err         PS_DATA_F32    IQ_M3_ERR	     
+    COLUMN VAL camProcessedExp  iq_m3_lq          PS_DATA_F32    IQ_M3_LQ	     
+    COLUMN VAL camProcessedExp  iq_m3_uq          PS_DATA_F32    IQ_M3_UQ	     
+
+    COLUMN VAL camProcessedExp  iq_m4             PS_DATA_F32    IQ_M4		     
+    COLUMN VAL camProcessedExp  iq_m4_err         PS_DATA_F32    IQ_M4_ERR	     
+    COLUMN VAL camProcessedExp  iq_m4_lq          PS_DATA_F32    IQ_M4_LQ	     
+    COLUMN VAL camProcessedExp  iq_m4_uq          PS_DATA_F32    IQ_M4_UQ	     
+    COLUMN VAL camProcessedExp  deteff            PS_DATA_F32    DETEFF
+    COLUMN VAL camProcessedExp  quality           PS_DATA_S32    CAMRUN_QUALITY
+END
+
Index: /branches/eam_branches/ippconfig.20240412/recipes/dvocorr.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/dvocorr.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/dvocorr.config	(revision 42661)
@@ -0,0 +1,1 @@
+# no recipe options defined yet...
Index: /branches/eam_branches/ippconfig.20240412/recipes/filerules-mef.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/filerules-mef.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/filerules-mef.mdc	(revision 42661)
@@ -0,0 +1,455 @@
+### File rules for PHU=FPA, EXT=CHIP (eg, Megacam)
+### this file specifies compression types for various output files
+### The image types are defined in fitstypes.mdc
+### The default type of NONE means no compression
+
+### Redirections (MEF)
+PPIMAGE.OUTPUT        STR PPIMAGE.OUTPUT.MEF
+PPIMAGE.OUTPUT.MASK   STR PPIMAGE.OUT.MK.MEF
+PPIMAGE.OUTPUT.VARIANCE STR PPIMAGE.OUT.WT.MEF
+
+PPIMAGE.CHIP          STR PPIMAGE.CHIP.MEF
+PPIMAGE.CHIP.MASK     STR PPIMAGE.CHIP.MK.MEF
+PPIMAGE.CHIP.VARIANCE STR PPIMAGE.CHIP.WT.MEF
+
+PPIMAGE.BIN1          STR PPIMAGE.BIN1.MEF
+PPIMAGE.BIN2          STR PPIMAGE.BIN2.MEF
+
+PSASTRO.OUTPUT        STR PSASTRO.OUT.CMF.MEF
+PSPHOT.OUTPUT         STR PSPHOT.OUT.CMF.MEF
+PSPHOT.PSF.SAVE       STR PSPHOT.PSF.RAW.SAVE
+
+FPCAMERA.OUTPUT       STR FPCAMERA.OUT.CMF.MEF
+
+### Redirections (SPL)
+# PPIMAGE.OUTPUT        STR PPIMAGE.OUTPUT.SPL
+# PPIMAGE.OUTPUT.MASK   STR PPIMAGE.OUT.MK.SPL
+# PPIMAGE.OUTPUT.VARIANCE STR PPIMAGE.OUT.WT.SPL
+# 
+# PPIMAGE.CHIP          STR PPIMAGE.CHIP.SPL
+# PPIMAGE.CHIP.MASK     STR PPIMAGE.CHIP.MK.SPL
+# PPIMAGE.CHIP.VARIANCE STR PPIMAGE.CHIP.WT.SPL
+# 
+# PPIMAGE.BIN1          STR PPIMAGE.BIN1.SPL
+# PPIMAGE.BIN2          STR PPIMAGE.BIN2.SPL
+# 
+# PSASTRO.OUTPUT        STR PSASTRO.OUT.CMF.SPL
+# PSPHOT.OUTPUT         STR PSPHOT.OUT.CMF.SPL
+
+### Redirections (common)
+
+PPIMAGE.OUTPUT.FPA1   STR PPIMAGE.OUTPUT.FPA1.MEF
+PPIMAGE.OUTPUT.FPA2   STR PPIMAGE.OUTPUT.FPA2.MEF
+PPSTAMP.CHIP          STR PPSTAMP.CHIP.MEF
+PSASTRO.INPUT         STR PSASTRO.INPUT.CMF
+PSASTRO.OUTPUT.MEF    STR PSASTRO.OUT.CMF.MEF
+#PSASTRO.OUTPUT.CMF    STR PSASTRO.OUT.CMF
+DVOCORR.OUTPUT        STR DVOCORR.MEF.OUTPUT
+DVOFLAT.OUTPUT        STR DVOFLAT.MEF.OUTPUT
+
+### input file definitions
+### use @DETDB entries to get the detrend images from the database
+### replace @DETDB with @FILES if you want to require it from the 
+### command line, or with an explicit name to require a specific file
+TYPE                    INPUT    FILENAME.RULE DATA.LEVEL FILE.TYPE
+
+## files used by ppImage
+PPIMAGE.INPUT           INPUT    @FILES        CHIP       IMAGE
+PPIMAGE.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PPIMAGE.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+PPIMAGE.INPUT.PSF       INPUT    @FILES        CHIP       PSF
+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
+PPIMAGE.SHUTTER         INPUT    @DETDB        CHIP       IMAGE     
+PPIMAGE.LINEARITY       INPUT    @DETDB        CHIP       LINEARITY
+PPIMAGE.PATTERN.ROW.AMP INPUT    @DETDB        FPA        PATTERN.ROW.AMP
+PPIMAGE.PATTERN.DEAD.CELLS INPUT @DETDB        FPA        PATTERN.DEAD.CELLS
+PPIMAGE.NEWNONLIN       INPUT    @DETDB        CHIP       NEWNONLIN
+
+## Files used by ppMerge
+PPMERGE.INPUT           INPUT    @FILES        CHIP       IMAGE
+PPMERGE.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PPMERGE.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+
+## files used to build and apply the flat-field correction images
+DVOCORR.INPUT           INPUT    @FILES        CHIP       IMAGE
+DVOCORR.REFHEAD         INPUT    @FILES        CHIP       HEADER
+DVOFLAT.INPUT           INPUT    @FILES        CHIP       IMAGE
+DVOFLAT.CORR            INPUT    @DETDB        CHIP       IMAGE
+
+## files used by psphot 
+PSPHOT.LOAD             INPUT    @FILES        CHIP       IMAGE
+PSPHOT.INPUT            INPUT    @FILES        CHIP       IMAGE
+PSPHOT.MASK             INPUT    @FILES        CHIP       MASK     
+PSPHOT.VARIANCE         INPUT    @FILES        CHIP       VARIANCE   
+PSPHOT.PSF.LOAD         INPUT    @FILES        CHIP       PSF       
+PSPHOT.INPUT.CMF        INPUT    @FILES        CHIP       CMF       
+PSPHOT.INPUT.CFF        INPUT    @FILES        CHIP       CFF
+PSPHOT.INPUT.TEXT       INPUT    @FILES        CHIP       SRCTEXT       
+PSPHOT.EXPNUM           INPUT    @FILES        CHIP       MASK       
+
+## files used by psphotStack
+PSPHOT.STACK.INPUT.RAW    INPUT    @FILES        CHIP       IMAGE
+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.BACKMDL.RAW    INPUT    @FILES        CHIP       IMAGE       
+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
+
+
+## files used by psastro 
+PSASTRO.INPUT.CMP       INPUT    @FILES        CHIP       CMP
+PSASTRO.INPUT.CMF       INPUT    @FILES        CHIP       CMF
+PSASTRO.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PSASTRO.REFMASK         INPUT    @DETDB        CHIP       MASK
+PSASTRO.WCS             INPUT    @FILES        CHIP       CMF
+PSASTRO.MODEL           INPUT    @DETDB        FPA        ASTROM
+PSASTRO.KH.CORRECT      INPUT    @DETDB        FPA        KH.CORRECT
+
+PSASTRO.EXTRACT.ASTROM  INPUT    @FILES        CHIP       CMF
+PSASTRO.EXTRACT.INPUT   INPUT    @FILES        CHIP       IMAGE
+
+## files used by pswarp
+PSWARP.INPUT            INPUT    @FILES        CHIP       IMAGE
+PSWARP.VARIANCE         INPUT    @FILES        CHIP       VARIANCE
+PSWARP.MASK             INPUT    @FILES        CHIP       MASK
+PSWARP.SKYCELL          INPUT    @FILES        CHIP       WCS
+PSWARP.ASTROM           INPUT    @FILES        CHIP       CMF
+# Note: if input astrometry does not have sources, either set the above file type to WCS and/or set pswarp.config:SOURCES to false
+PSWARP.BKGMODEL         INPUT    @FILES	       CHIP	  IMAGE
+
+## files used by ppsub
+PPSUB.INPUT             INPUT    @FILES        FPA        IMAGE
+PPSUB.INPUT.MASK        INPUT    @FILES        FPA        MASK
+PPSUB.INPUT.VARIANCE    INPUT    @FILES        FPA        VARIANCE
+PPSUB.INPUT.SOURCES     INPUT    @FILES        FPA        CMF
+PPSUB.REF               INPUT    @FILES        FPA        IMAGE
+PPSUB.REF.MASK          INPUT    @FILES        FPA        MASK
+PPSUB.REF.VARIANCE      INPUT    @FILES        FPA        VARIANCE
+PPSUB.REF.SOURCES       INPUT    @FILES        FPA        CMF
+PPSUB.INPUT.KERNEL      INPUT    @FILES        FPA        SUBKERNEL
+
+## files used by gdiff
+GDIFF.INPUT             INPUT    @FILES        FPA        IMAGE
+GDIFF.INPUT.MASK        INPUT    @FILES        FPA        MASK
+GDIFF.INPUT.VARIANCE    INPUT    @FILES        FPA        VARIANCE
+GDIFF.INPUT.SOURCES     INPUT    @FILES        FPA        CMF
+GDIFF.REF               INPUT    @FILES        FPA        IMAGE
+GDIFF.REF.MASK          INPUT    @FILES        FPA        MASK
+GDIFF.REF.VARIANCE      INPUT    @FILES        FPA        VARIANCE
+GDIFF.REF.SOURCES       INPUT    @FILES        FPA        CMF
+GDIFF.INPUT.KERNEL      INPUT    @FILES        FPA        SUBKERNEL
+
+## files used by ppstack
+PPSTACK.INPUT           INPUT    @FILES        FPA        IMAGE
+PPSTACK.INPUT.MASK      INPUT    @FILES        FPA        MASK
+PPSTACK.INPUT.VARIANCE  INPUT    @FILES        FPA        VARIANCE
+PPSTACK.INPUT.PSF       INPUT    @FILES        CHIP       PSF
+PPSTACK.INPUT.SOURCES   INPUT    @FILES        FPA        CMF
+PPSTACK.INPUT.BKGMODEL	  INPUT	   @FILES	 FPA	    IMAGE
+
+## files used by ppstamp
+PPSTAMP.INPUT           INPUT 	 @FILES        CHIP       IMAGE
+PPSTAMP.INPUT.MASK      INPUT 	 @FILES        CHIP       MASK
+PPSTAMP.INPUT.VARIANCE  INPUT 	 @FILES        CHIP       VARIANCE
+
+# files used by pparith
+PPARITH.INPUT.IMAGE     INPUT    @FILES        CHIP       IMAGE
+PPARITH.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+
+PPSKYCELL.IMAGE      	INPUT 	 @FILES        CHIP       IMAGE
+PPSKYCELL.MASK      	INPUT 	 @FILES        CHIP       MASK
+PPSKYCELL.WCSREF	INPUT	 @FILES	       CHIP	  IMAGE
+
+PPSIM.INPUT             INPUT    @FILES        FPA        IMAGE     
+PPSIM.REAL.SOURCES      INPUT    @FILES        CHIP       CMF       
+
+PPCOORD.ASTROM		INPUT	 @FILES	       FPA	  WCS
+PPCOORD.RAW		INPUT	 @FILES	       CHIP	  IMAGE
+
+## files used by ppNoiseMap
+PPNOISEMAP.INPUT        INPUT    @FILES        CHIP       IMAGE
+
+## files used by censorObject 
+CENSOR.INPUT       	INPUT    @FILES        CHIP       CMF
+CENSOR.INPUT.MASK       INPUT    @FILES        CHIP       MASK
+
+## Files used by ppSmooth
+PPSMOOTH.INPUT          INPUT    @FILES        CHIP       IMAGE
+PPSMOOTH.INPUT.MASK     INPUT    @FILES        CHIP       MASK
+PPSMOOTH.INPUT.VARIANCE INPUT    @FILES        CHIP       VARIANCE
+
+## Files used by ppbgrestore
+PPBGRESTORE.INPUT       INPUT    @FILES        CHIP       IMAGE
+PPBGRESTORE.BACKMDL     INPUT    @FILES        CHIP       IMAGE
+
+PPVIZPATTERN.INPUT        INPUT    @FILES        CHIP       PATTERN
+
+PPBACKGROUND.IMAGE	  INPUT    @FILES        CHIP       IMAGE
+PPBACKGROUND.MASK	  INPUT    @FILES        CHIP       MASK
+PPBACKGROUND.PATTERN	  INPUT    @FILES        CHIP       PATTERN
+PPBACKGROUND.BACKGROUND	  INPUT    @FILES        CHIP       IMAGE
+PPBACKGROUND.STACK        INPUT    @FILES        FPA        IMAGE
+
+## files used by fpcamera
+FPCAMERA.INPUT           INPUT    @FILES        CHIP       IMAGE
+FPCAMERA.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+FPCAMERA.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+FPCAMERA.INPUT.ASTROM    INPUT    @FILES        CHIP       WCS
+
+### output file definitions
+TYPE                    OUTPUT FILENAME.RULE                     FILE.TYPE FITS.TYPE  DATA.LEVEL FILE.SAVE FILE.FORMAT
+PPIMAGE.OUTPUT.MEF      OUTPUT {OUTPUT}.b0.fits                  IMAGE     COMP_IMG   CHIP       TRUE      MEF
+PPIMAGE.OUT.MK.MEF      OUTPUT {OUTPUT}.mk.fits                  MASK      COMP_MASK  CHIP       TRUE      MEF
+PPIMAGE.OUT.WT.MEF      OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    CHIP       TRUE      MEF
+PPIMAGE.OUTPUT.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.b0.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+PPIMAGE.OUT.MK.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK      NONE       CHIP       TRUE      SPLIT
+PPIMAGE.OUT.WT.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.wt.fits      VARIANCE  NONE       CHIP       TRUE      SPLIT
+PPIMAGE.OUTPUT.DETMASK  OUTPUT {OUTPUT}.fits                     IMAGE     MASK       CHIP       TRUE      MEF
+PPIMAGE.OUTPUT.DETREND  OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      MEF
+PPIMAGE.OUTPUT.RESID    OUTPUT {OUTPUT}.b0.fits                  IMAGE     NONE       CHIP       TRUE      MEF
+PPIMAGE.CONFIG          OUTPUT {OUTPUT}.{CHIP.NAME}.ppImage.mdc  TEXT      NONE       CHIP       TRUE      NONE
+                                                                                             
+PPIMAGE.CHIP.MEF        OUTPUT {OUTPUT}.ch.fits                  IMAGE     COMP_IMG   CHIP       TRUE      MEF
+PPIMAGE.CHIP.MK.MEF     OUTPUT {OUTPUT}.ch.mk.fits               MASK      COMP_MASK  CHIP       TRUE      MEF
+PPIMAGE.CHIP.WT.MEF     OUTPUT {OUTPUT}.ch.wt.fits               VARIANCE  COMP_WT    CHIP       TRUE      MEF
+PPIMAGE.CHIP.SPL        OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+PPIMAGE.CHIP.MK.SPL     OUTPUT {OUTPUT}.{CHIP.NAME}.ch.mk.fits   MASK      NONE       CHIP       TRUE      SPLIT
+PPIMAGE.CHIP.WT.SPL     OUTPUT {OUTPUT}.{CHIP.NAME}.ch.wt.fits   VARIANCE  NONE       CHIP       TRUE      SPLIT
+                                                                                     
+PPIMAGE.OUTPUT.FPA1.MEF OUTPUT {OUTPUT}.b1.fits                  IMAGE     COMP_IMG   FPA        TRUE      MEF
+PPIMAGE.OUTPUT.FPA2.MEF OUTPUT {OUTPUT}.b2.fits                  IMAGE     COMP_IMG   FPA        TRUE      MEF
+PPIMAGE.OUTPUT.FPA1.SPL OUTPUT {OUTPUT}.{CHIP.NAME}.b1.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+PPIMAGE.OUTPUT.FPA2.SPL OUTPUT {OUTPUT}.{CHIP.NAME}.b2.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+                                                                                     
+PPIMAGE.BIN1.MEF        OUTPUT {OUTPUT}.b1c.fits                 IMAGE     COMP_IMG   CHIP       TRUE      MEF
+PPIMAGE.BIN2.MEF        OUTPUT {OUTPUT}.b2c.fits                 IMAGE     COMP_IMG   CHIP       TRUE      MEF
+PPIMAGE.BIN1.SPL        OUTPUT {OUTPUT}.{CHIP.NAME}.b1.fits      IMAGE     COMP_IMG   CHIP       TRUE      SPLIT
+PPIMAGE.BIN2.SPL        OUTPUT {OUTPUT}.{CHIP.NAME}.b2.fits      IMAGE     COMP_IMG   CHIP       TRUE      SPLIT
+                                                                                     
+PPIMAGE.JPEG1           OUTPUT {OUTPUT}.b1.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPIMAGE.JPEG2           OUTPUT {OUTPUT}.b2.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPIMAGE.PATTERN         OUTPUT {OUTPUT}.ptn                      PATTERN   NONE       CHIP       TRUE      MEF
+PPIMAGE.STATS           OUTPUT {OUTPUT}.stats                    STATS     NONE       FPA        TRUE      MEF
+PPIMAGE.BACKMDL              OUTPUT {OUTPUT}.{CHIP.NAME}.mdl.fits     IMAGE           NONE       CHIP       TRUE      NONE
+
+## note: these use the same output naming convention since they are used for different ppMerge runs
+PPMERGE.OUTPUT.MASK     OUTPUT {OUTPUT}.fits                     MASK      NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.BIAS     OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.DARK     OUTPUT {OUTPUT}.fits                     DARK      NONE       CHIP       TRUE      NONE
+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
+PPMERGE.OUTPUT.COUNT    OUTPUT {OUTPUT}.count.fits               IMAGE     NONE       CHIP       TRUE      NONE
+                                                                                     
+DVOCORR.MEF.OUTPUT      OUTPUT {OUTPUT}.fc.fits                  IMAGE     NONE       CHIP       TRUE      MEF
+DVOCORR.SPL.OUTPUT      OUTPUT {OUTPUT}.{CHIP.NAME}.fc.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+DVOFLAT.MEF.OUTPUT      OUTPUT {OUTPUT}.co.fits                  IMAGE     NONE       CHIP       TRUE      MEF
+DVOFLAT.SPL.OUTPUT      OUTPUT {OUTPUT}.{CHIP.NAME}.co.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+                                                                                     
+PSPHOT.RESID            OUTPUT {OUTPUT}.res.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+PSPHOT.BACKGND          OUTPUT {OUTPUT}.bck.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+PSPHOT.BACKSUB          OUTPUT {OUTPUT}.sub.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+PSPHOT.BACKMDL          OUTPUT {OUTPUT}.mdl.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+PSPHOT.BACKMDL.STDEV    OUTPUT {OUTPUT}.mdl.std.fits             IMAGE     NONE       CHIP       FALSE     MEF
+PSPHOT.BACKMDL.MEF      OUTPUT {OUTPUT}.mdl.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+                                                                                     
+PSPHOT.OUTPUT.RAW       OUTPUT {OUTPUT}.{CHIP.NAME}              RAW       NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.SX        OUTPUT {OUTPUT}.{CHIP.NAME}.sx           SX        NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.OBJ       OUTPUT {OUTPUT}.{CHIP.NAME}.obj          OBJ       NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.CMP       OUTPUT {OUTPUT}.{CHIP.NAME}.cmp          CMP       NONE       CHIP       TRUE      NONE
+PSPHOT.OUT.CMF.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.cmf          CMF       NONE       CHIP       TRUE      SPLIT
+PSPHOT.OUT.CMF.MEF      OUTPUT {OUTPUT}.cmf                      CMF       NONE       CHIP       TRUE      MEF
+PSPHOT.OUTPUT.CFF       OUTPUT {OUTPUT}.cff                      CFF       NONE       CHIP       TRUE      MEF
+PSPHOT.PSF.RAW.SAVE     OUTPUT {OUTPUT}.psf                      PSF       NONE       CHIP       TRUE      MEF
+PSPHOT.PSF.SKY.SAVE     OUTPUT {OUTPUT}.psf                      PSF       NONE       CHIP       TRUE      MEF
+
+# used by staticsky with single input
+PSPHOT.SKY.CONFIG       OUTPUT {OUTPUT}.psphot.mdc               TEXT      NONE       FPA        TRUE      NONE
+
+# outputs for psphotStack:
+PSPHOT.CHISQ.IMAGE           OUTPUT {OUTPUT}.chisq.im.fits            IMAGE           NONE       FPA        TRUE      NONE
+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}.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.PSF.SAVE        OUTPUT {OUTPUT}.stk.{FILE.ID}.psf        PSF             NONE       FPA        TRUE      NONE
+PSPHOT.STACK.BACKMDL         OUTPUT {OUTPUT}.stk.{FILE.ID}.mdl.fits   IMAGE           NONE       FPA        TRUE      NONE
+PSPHOT.STACK.BACKMDL.STDEV   OUTPUT {OUTPUT}.stk.{FILE.ID}.mdl.sdv.fits IMAGE         NONE       FPA        TRUE      NONE
+
+PSPHOT.STACK.CONFIG          OUTPUT {OUTPUT}.psphotStack.mdc          TEXT            NONE       FPA        TRUE      NONE
+
+PSPHOT.STACK.RESID           OUTPUT {OUTPUT}.stk.{FILE.ID}.res.fits   IMAGE           COMP_SUB   FPA        TRUE      NONE
+PSPHOT.STACK.BACKGND         OUTPUT {OUTPUT}.stk.{FILE.ID}.bck.fits   IMAGE           COMP_IMG   FPA        TRUE      NONE
+PSPHOT.STACK.BACKSUB         OUTPUT {OUTPUT}.stk.{FILE.ID}.sub.fits   IMAGE           COMP_SUB   FPA        TRUE      NONE
+                                                     
+# old outputs for psphotStack:
+# I think these are wrong
+#PSPHOT.CHISQ.IMAGE      OUTPUT {OUTPUT}.{CHIP.NAME}.chisq.im.fits IMAGE    NONE       FPA        TRUE      SIMPLE
+#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}.sky.{FILE.ID}.cmf CMF      NONE       FPA        TRUE      NONE
+                                                     
+SOURCE.PLOT.MOMENTS     OUTPUT {OUTPUT}.mnt.png                  KAPA      NONE       FPA        TRUE      NONE
+SOURCE.PLOT.PSFMODEL    OUTPUT {OUTPUT}.psf.png                  KAPA      NONE       FPA        TRUE      NONE
+SOURCE.PLOT.APRESID     OUTPUT {OUTPUT}.dap.png                  KAPA      NONE       FPA        TRUE      NONE
+                                                                                     
+PSASTRO.OUTPUT.CMP      OUTPUT {OUTPUT}.{CHIP.NAME}.smp          CMP       NONE       CHIP       TRUE      NONE
+PSASTRO.OUT.CMF.SPL     OUTPUT {OUTPUT}.{CHIP.NAME}.smf          CMF       NONE       CHIP       TRUE      SPLIT
+PSASTRO.OUT.CMF.MEF     OUTPUT {OUTPUT}.smf                      CMF       NONE       FPA        TRUE      MEF
+PSASTRO.OUTPUT.CMF      OUTPUT {OUTPUT}.cmf                      CMF       NONE       CHIP       TRUE      NONE
+#PSASTRO.OUT.CMF         OUTPUT {OUTPUT}.smf                      CMF       NONE       FPA        TRUE      NONE
+PSASTRO.OUT.MODEL       OUTPUT {OUTPUT}.asm                ASTROM.MODEL    NONE       FPA        TRUE      NONE
+PSASTRO.OUT.REFSTARS    OUTPUT {OUTPUT}.aref.fits          ASTROM.REFSTARS NONE       FPA        TRUE      NONE
+PSASTRO.STATS           OUTPUT {OUTPUT}.stats                    STATS     NONE       FPA        TRUE      NONE
+PSASTRO.CONFIG          OUTPUT {OUTPUT}.psastro.mdc              TEXT      NONE       FPA        TRUE      NONE
+PSASTRO.OUTPUT.MASK     OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK      COMP_MASK  CHIP       TRUE      NONE
+                                                                                     
+FPCAMERA.OUT.CMF.MEF    OUTPUT {OUTPUT}.cmf                      CMF       NONE       CHIP       TRUE      MEF
+FPCAMERA.RESID          OUTPUT {OUTPUT}.res.fits                 IMAGE     COMP_SUB   CHIP       TRUE      MEF
+FPCAMERA.STATS          OUTPUT {OUTPUT}.stats                    STATS     NONE       FPA        TRUE      NONE
+FPCAMERA.CONFIG         OUTPUT {OUTPUT}.mdc                      TEXT      NONE       FPA        TRUE      NONE
+
+PSWARP.OUTPUT           OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   FPA        TRUE      NONE
+PSWARP.OUTPUT.MASK      OUTPUT {OUTPUT}.mk.fits                  MASK      COMP_MASK  FPA        TRUE      NONE
+PSWARP.OUTPUT.VARIANCE  OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
+PSWARP.OUTPUT.SOURCES   OUTPUT {OUTPUT}.cmf                      CMF       NONE       FPA        TRUE      NONE
+PSWARP.BIN1             OUTPUT {OUTPUT}.b1.fits                  IMAGE     COMP_IMG   FPA        TRUE      NONE
+PSWARP.BIN2             OUTPUT {OUTPUT}.b2.fits                  IMAGE     COMP_IMG   FPA        TRUE      NONE
+PSWARP.CONFIG           OUTPUT {OUTPUT}.pswarp.mdc               TEXT      NONE       FPA        TRUE      NONE
+PSWARP.OUTPUT.BKGMODEL	OUTPUT {OUTPUT}.mdl.fits		 IMAGE     NONE       FPA        TRUE      NONE
+                                                                                     
+SKYCELL.STATS           OUTPUT {OUTPUT}.stats                    STATS     NONE       FPA        TRUE      NONE
+SKYCELL.STATS.UPDATE    OUTPUT {OUTPUT}.stats.update             STATS     NONE       FPA        TRUE      NONE
+SKYCELL.TEMPLATE        OUTPUT {OUTPUT}.skycell                  SKYCELL   NONE       FPA        TRUE      NONE
+                                                                                     
+PPSUB.OUTPUT            OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSUB.OUTPUT.MASK       OUTPUT {OUTPUT}.mk.fits                  MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.OUTPUT.VARIANCE   OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSUB.OUTPUT.SOURCES    OUTPUT {OUTPUT}.cmf                      CMF       NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.KERNELS    OUTPUT {OUTPUT}.subkernel                SUBKERNEL NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG1      OUTPUT {OUTPUT}.b1.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG2      OUTPUT {OUTPUT}.b2.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.RESID.JPEG OUTPUT {OUTPUT}.res.jpg                  JPEG      NONE       FPA        TRUE      NONE
+PPSUB.INVERSE           OUTPUT {OUTPUT}.inv.fits                 IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSUB.INVERSE.MASK      OUTPUT {OUTPUT}.inv.mask.fits            MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.INVERSE.VARIANCE  OUTPUT {OUTPUT}.inv.wt.fits              VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSUB.INVERSE.SOURCES   OUTPUT {OUTPUT}.inv.cmf                  CMF       NONE       FPA        TRUE      NONE
+PPSUB.CONFIG            OUTPUT {OUTPUT}.ppSub.mdc                TEXT      NONE       FPA        TRUE      NONE
+PPSUB.INPUT.CONV        OUTPUT {OUTPUT}.inConv.fits              IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSUB.INPUT.CONV.MASK   OUTPUT {OUTPUT}.inConv.mk.fits           MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.INPUT.CONV.VARIANCE OUTPUT {OUTPUT}.inConv.wt.fits         VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSUB.REF.CONV        	OUTPUT {OUTPUT}.refConv.fits             IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSUB.REF.CONV.MASK   	OUTPUT {OUTPUT}.refConv.mk.fits          MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.REF.CONV.VARIANCE	OUTPUT {OUTPUT}.refConv.wt.fits          VARIANCE  COMP_WT    FPA        TRUE      NONE
+		      						       		     
+PPSUB.FORCED1.SOURCES   OUTPUT {OUTPUT}.frc1.cmf             	 CMF       NONE       FPA        TRUE      NONE
+PPSUB.FORCED2.SOURCES   OUTPUT {OUTPUT}.frc2.cmf             	 CMF       NONE       FPA        TRUE      NONE
+PPSUB.POS1.SOURCES      OUTPUT {OUTPUT}.pos1.cmf             	 CMF       NONE       FPA        TRUE      NONE
+PPSUB.POS2.SOURCES      OUTPUT {OUTPUT}.pos2.cmf             	 CMF       NONE       FPA        TRUE      NONE
+                                                                                     
+PPSTACK.OUTPUT          OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSTACK.OUTPUT.MASK     OUTPUT {OUTPUT}.mk.fits                  MASK      COMP_MASK  FPA        TRUE      NONE
+PPSTACK.OUTPUT.VARIANCE OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSTACK.OUTPUT.EXP	OUTPUT {OUTPUT}.exp.fits     		 IMAGE     EXP	      FPA	 TRUE      NONE
+PPSTACK.OUTPUT.EXPNUM	OUTPUT {OUTPUT}.num.fits     		 MASK      EXPNUM     FPA	 TRUE      NONE
+PPSTACK.OUTPUT.EXPWT	OUTPUT {OUTPUT}.expwt.fits               VARIANCE  EXP	      FPA	 TRUE      NONE
+PPSTACK.UNCONV          OUTPUT {OUTPUT}.unconv.fits              IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSTACK.UNCONV.MASK     OUTPUT {OUTPUT}.unconv.mask.fits         MASK      COMP_MASK  FPA        TRUE      NONE
+PPSTACK.UNCONV.VARIANCE OUTPUT {OUTPUT}.unconv.wt.fits           VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSTACK.UNCONV.EXP	OUTPUT {OUTPUT}.unconv.exp.fits 	 IMAGE     EXP	      FPA	 TRUE      NONE
+PPSTACK.UNCONV.EXPNUM	OUTPUT {OUTPUT}.unconv.num.fits 	 MASK  	   EXPNUM     FPA	 TRUE      NONE
+PPSTACK.UNCONV.EXPWT	OUTPUT {OUTPUT}.unconv.expwt.fits        VARIANCE  EXP	      FPA	 TRUE      NONE
+PPSTACK.TARGET.PSF      OUTPUT {OUTPUT}.target.psf               PSF       NONE       CHIP       TRUE      NONE
+PPSTACK.CONV.KERNEL     OUTPUT {OUTPUT}.{FILE.INDEX}.kernel      SUBKERNEL NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG1    OUTPUT {OUTPUT}.b1.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG2    OUTPUT {OUTPUT}.b2.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.BKGMODEL OUTPUT {OUTPUT}.mdl.fits		 IMAGE	   NONE	      FPA	 TRUE      NONE
+PPSTACK.OUTPUT.BKGREST  OUTPUT {OUTPUT}.bkgrest.fits		 IMAGE	   	  NONE	     FPA	TRUE      NONE
+PPSTACK.CONFIG          OUTPUT {OUTPUT}.ppStack.mdc              TEXT      NONE       FPA        TRUE      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.MEF        OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      NONE
+PPSIM.OUTPUT.SPL        OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     NONE       CHIP       TRUE      NONE
+PPSIM.FAKE.CHIP         OUTPUT {OUTPUT}.fake.fits                IMAGE     NONE       FPA        TRUE      NONE
+PPSIM.FORCE.CHIP        OUTPUT {OUTPUT}.force.fits               IMAGE     NONE       FPA        TRUE      NONE
+PPSIM.SOURCES           OUTPUT {OUTPUT}.cmf                      CMF       NONE       FPA        TRUE      NONE
+PPSIM.FAKE.SOURCES      OUTPUT {OUTPUT}.fake.cmf                 CMF       NONE       FPA        TRUE      NONE
+PPSIM.FORCE.SOURCES     OUTPUT {OUTPUT}.force.cmf                CMF       NONE       FPA        TRUE      NONE
+                                                                                     
+PPARITH.OUTPUT.IMAGE    OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   CHIP       TRUE      NONE
+PPARITH.OUTPUT.MASK     OUTPUT {OUTPUT}.fits                     MASK      COMP_MASK  CHIP       TRUE      NONE
+                                                                                     
+PPSKYCELL.JPEG1    	OUTPUT {OUTPUT}.{FILE.INDEX}.b1.jpeg     JPEG      NONE       CHIP       TRUE      NONE
+PPSKYCELL.JPEG2    	OUTPUT {OUTPUT}.{FILE.INDEX}.b2.jpeg     JPEG      NONE       CHIP       TRUE      NONE
+PPSKYCELL.BIN1    	OUTPUT {OUTPUT}.{FILE.INDEX}.b1.fits     IMAGE     NONE       FPA        TRUE      NONE
+PPSKYCELL.BIN2    	OUTPUT {OUTPUT}.{FILE.INDEX}.b2.fits     IMAGE     NONE       FPA        TRUE      NONE
+PPSKYCELL.BIN1.MASK    	     OUTPUT {OUTPUT}.{FILE.INDEX}.b1.mk.fits     MASK     COMP_MASK       FPA        TRUE      NONE
+PPSKYCELL.BIN2.MASK    	     OUTPUT {OUTPUT}.{FILE.INDEX}.b2.mk.fits     MASK     COMP_MASK       FPA       TRUE      NONE
+
+LOG.IMFILE              OUTPUT {OUTPUT}.{CHIP.NAME}.log          TEXT      NONE       CHIP       TRUE      NONE
+LOG.EXP                 OUTPUT {OUTPUT}.log                      TEXT      NONE       FPA        TRUE      NONE
+LOG.IMFILE.UPDATE       OUTPUT {OUTPUT}.{CHIP.NAME}.log.update   TEXT      NONE       CHIP       TRUE      NONE
+LOG.EXP.UPDATE          OUTPUT {OUTPUT}.log.update               TEXT      NONE       FPA        TRUE      NONE
+                                                                                     
+TRACE.IMFILE            OUTPUT {OUTPUT}.{CHIP.NAME}.trace        TEXT      NONE       CHIP       TRUE      NONE
+TRACE.EXP               OUTPUT {OUTPUT}.trace                    TEXT      NONE       FPA        TRUE      NONE
+TRACE.IMFILE.UPDATE     OUTPUT {OUTPUT}.{CHIP.NAME}.trace.update TEXT      NONE       CHIP       TRUE      NONE
+TRACE.EXP.UPDATE        OUTPUT {OUTPUT}.trace.update             TEXT      NONE       FPA        TRUE      NONE
+
+DBINFO.IMFILE                OUTPUT {OUTPUT}.{CHIP.NAME}.dbinfo       TEXT            NONE       CHIP       TRUE      NONE
+DBINFO.EXP                   OUTPUT {OUTPUT}.dbinfo                   TEXT            NONE       CHIP       TRUE      NONE
+
+PPNOISEMAP.OUTPUT       OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     NONE       CHIP       TRUE      NONE
+
+CENSOR.OUTPUT           OUTPUT {OUTPUT}.smf                      CMF       NONE       FPA        TRUE      MEF
+
+MAGIC.ORIGINAL.PNG      OUTPUT {OUTPUT}_original.png             JPEG      NONE       FPA        TRUE      NONE
+MAGIC.RESIDUAL.PNG      OUTPUT {OUTPUT}_residual.png             JPEG      NONE       FPA        TRUE      NONE
+MAGIC.MASK.PNG          OUTPUT {OUTPUT}_mask.png                 JPEG      NONE       FPA        TRUE      NONE
+MAGIC.DUPLICATE.PNG     OUTPUT {OUTPUT}_duplicate.png            JPEG      NONE       FPA        TRUE      NONE
+
+PPSMOOTH.OUTPUT          OUTPUT {OUTPUT}.{CHIP.NAME}.fits        IMAGE     NONE       CHIP       TRUE      MEF
+PPSMOOTH.OUTPUT.MASK     OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits     MASK      NONE       CHIP       TRUE      MEF
+PPSMOOTH.OUTPUT.VARIANCE OUTPUT {OUTPUT}.{CHIP.NAME}.wt.fits     VARIANCE  NONE       CHIP       TRUE      MEF
+
+PPBGRESTORE.OUTPUT      OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     COMP_IMG   CHIP       TRUE      NONE
+
+PPVIZPSF.OUTPUT              OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPVIZPATTERN.OUTPUT          OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPVIZPATTERN.CHIP            OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE           NONE       CHIP       TRUE      NONE
+
+PPBACKGROUND.OUTPUT	     OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           COMP_IMG   CHIP       TRUE      NONE
+PPBACKGROUND.OUTPUT.MASK     OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK            COMP_MASK  CHIP       TRUE      NONE
+PPBACKGROUND.CONFIG          OUTPUT {OUTPUT}.{CHIP.NAME}.ppBackground.mdc TEXT        NONE       CHIP       TRUE      NONE
+PPBACKGROUND.STATS           OUTPUT {OUTPUT}.{CHIP.NAME}.stats        STATS           NONE       CHIP       TRUE      NONE
+
+PPBACKGROUND.STACK.OUTPUT    OUTPUT {OUTPUT}.bkgrest.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.STACK.MODEL     OUTPUT {OUTPUT}.bkgmdl.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.OTA.SOLUTION    OUTPUT {OUTPUT}.{CHIP.NAME}.OTAS.fits IMAGE  COMP_IMG   CHIP       TRUE      NONE
Index: /branches/eam_branches/ippconfig.20240412/recipes/filerules-simple.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/filerules-simple.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/filerules-simple.mdc	(revision 42661)
@@ -0,0 +1,434 @@
+### File rules for PHU=FPA, EXT=NONE
+### The default type of NONE means no compression
+
+PSASTRO.INPUT      STR PSASTRO.INPUT.CMF
+PSASTRO.OUTPUT     STR PSASTRO.OUTPUT.CMF
+PSPHOT.OUTPUT      STR PSPHOT.OUTPUT.CMF
+PSPHOT.PSF.SAVE    STR PSPHOT.PSF.RAW.SAVE
+
+PPSTACK.OUTPUT     STR PPSTACK.OUTPUT.RAW
+PPSTACK.UNCONV     STR PPSTACK.UNCONV.RAW
+
+### input file definitions
+### use @DETDB entries to get the detrend images from the database
+### replace @DETDB with @FILES if you want to require it from the 
+### command line, or with an explicit name to require a specific file
+TYPE                    INPUT    FILENAME.RULE DATA.LEVEL FILE.TYPE
+
+## files used by ppImage
+PPIMAGE.INPUT             INPUT    @FILES        FPA        IMAGE     
+PPIMAGE.INPUT.MASK        INPUT    @FILES        FPA        MASK      
+PPIMAGE.INPUT.VARIANCE    INPUT    @FILES        FPA        VARIANCE  
+PPIMAGE.INPUT.PSF         INPUT    @FILES        READOUT    PSF       
+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
+PPIMAGE.SHUTTER           INPUT    @DETDB        CHIP       IMAGE     
+PPIMAGE.LINEARITY         INPUT    @DETDB        CHIP       LINEARITY
+PPIMAGE.NEWNONLIN         INPUT    @DETDB        CHIP       NEWNONLIN
+
+FPCAMERA.OUTPUT          STR FPCAMERA.OUT.CMF
+
+## Files used by psvideophot
+PSVIDEOPHOT.INPUT             INPUT    @FILES        CHIP       IMAGE
+PSVIDEOPHOT.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+PSVIDEOPHOT.INPUT.VARIANCE    INPUT    @FILES        CHIP       VARIANCE
+PSVIDEOPHOT.INPUT.PSF         INPUT    @FILES        CHIP       PSF
+PSVIDEOPHOT.INPUT.SRC         INPUT    @FILES        CHIP       CMF
+                          
+## Files used by ppMerge  
+PPMERGE.INPUT             INPUT    @FILES        CHIP       IMAGE
+PPMERGE.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+PPMERGE.INPUT.VARIANCE    INPUT    @FILES        CHIP       VARIANCE
+
+## files used to build and apply the flat-field correction images
+DVOCORR.INPUT             INPUT    @FILES        CHIP       IMAGE
+DVOCORR.REFHEAD           INPUT    @FILES        CHIP       HEADER
+DVOFLAT.INPUT             INPUT    @FILES        CHIP       IMAGE
+DVOFLAT.CORR              INPUT    @DETDB        CHIP       IMAGE
+                          
+## files used by psphot   
+PSPHOT.LOAD               INPUT    @FILES        CHIP       IMAGE
+PSPHOT.INPUT              INPUT    @FILES        CHIP       IMAGE     
+PSPHOT.MASK               INPUT    @FILES        CHIP       MASK     
+PSPHOT.VARIANCE           INPUT    @FILES        CHIP       VARIANCE   
+PSPHOT.PSF.LOAD           INPUT    @FILES        CHIP       PSF       
+PSPHOT.INPUT.CMF          INPUT    @FILES        CHIP       CMF       
+PSPHOT.INPUT.CFF          INPUT    @FILES        CHIP       CFF
+PSPHOT.INPUT.TEXT         INPUT    @FILES        CHIP       SRCTEXT       
+PSPHOT.EXPNUM             INPUT    @FILES        CHIP       MASK
+
+## files used by psphotStack
+PSPHOT.STACK.INPUT.RAW    INPUT    @FILES        CHIP       IMAGE
+PSPHOT.STACK.MASK.RAW     INPUT    @FILES        CHIP       MASK     
+PSPHOT.STACK.VARIANCE.RAW INPUT    @FILES        CHIP       VARIANCE     
+PSPHOT.STACK.EXPNUM.RAW   INPUT    @FILES        CHIP       MASK     
+PSPHOT.STACK.PSF.RAW      INPUT    @FILES        CHIP       PSF       
+PSPHOT.STACK.BACKMDL.RAW  INPUT    @FILES        CHIP       IMAGE       
+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       MASK     
+PSPHOT.STACK.PSF.CNV      INPUT    @FILES        CHIP       PSF       
+PSPHOT.STACK.SOURCES      INPUT    @FILES        FPA        CMF
+
+## files used by psastro 
+PSASTRO.INPUT.CMP         INPUT    @FILES        CHIP       CMP       
+PSASTRO.INPUT.CMF         INPUT    @FILES        CHIP       CMF       
+PSASTRO.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+PSASTRO.REFMASK           INPUT    @DETDB        CHIP       MASK
+PSASTRO.WCS               INPUT    @FILES        CHIP       CMF
+PSASTRO.MODEL             INPUT    @DETDB        FPA        ASTROM
+PSASTRO.KH.CORRECT        INPUT    @DETDB        FPA        KH.CORRECT
+
+PSASTRO.EXTRACT.ASTROM    INPUT    @FILES        CHIP       CMF
+PSASTRO.EXTRACT.INPUT     INPUT    @FILES        CHIP       IMAGE
+
+## files used by pswarp
+PSWARP.INPUT              INPUT    @FILES        FPA        IMAGE     
+PSWARP.VARIANCE           INPUT    @FILES        FPA        VARIANCE
+PSWARP.MASK               INPUT    @FILES        FPA        MASK
+PSWARP.SKYCELL            INPUT    @FILES        FPA        WCS
+PSWARP.ASTROM             INPUT    @FILES        FPA        CMF
+# Note: if input astrometry does not have sources, either set the above file type to WCS and/or set pswarp.config:SOURCES to false
+PSWARP.BKGMODEL		  INPUT	   @FILES	 CHIP	    IMAGE
+
+## files used by ppsub
+PPSUB.INPUT               INPUT    @FILES        FPA        IMAGE
+PPSUB.INPUT.MASK          INPUT    @FILES        FPA        MASK
+PPSUB.INPUT.VARIANCE      INPUT    @FILES        FPA        VARIANCE
+PPSUB.INPUT.SOURCES       INPUT    @FILES        FPA        CMF
+PPSUB.INPUT.KERNEL        INPUT    @FILES        FPA        SUBKERNEL
+PPSUB.REF                 INPUT    @FILES        FPA        IMAGE
+PPSUB.REF.MASK            INPUT    @FILES        FPA        MASK
+PPSUB.REF.VARIANCE        INPUT    @FILES        FPA        VARIANCE
+PPSUB.REF.SOURCES         INPUT    @FILES        FPA        CMF
+
+## files used by gdiff
+GDIFF.INPUT               INPUT    @FILES        FPA        IMAGE
+GDIFF.INPUT.MASK          INPUT    @FILES        FPA        MASK
+GDIFF.INPUT.VARIANCE      INPUT    @FILES        FPA        VARIANCE
+GDIFF.INPUT.SOURCES       INPUT    @FILES        FPA        CMF
+GDIFF.INPUT.KERNEL        INPUT    @FILES        FPA        SUBKERNEL
+GDIFF.REF                 INPUT    @FILES        FPA        IMAGE
+GDIFF.REF.MASK            INPUT    @FILES        FPA        MASK
+GDIFF.REF.VARIANCE        INPUT    @FILES        FPA        VARIANCE
+GDIFF.REF.SOURCES         INPUT    @FILES        FPA        CMF
+
+## files used by ppstack
+PPSTACK.INPUT             INPUT    @FILES        FPA        IMAGE
+PPSTACK.INPUT.MASK        INPUT    @FILES        FPA        MASK
+PPSTACK.INPUT.VARIANCE    INPUT    @FILES        FPA        VARIANCE
+PPSTACK.INPUT.PSF         INPUT    @FILES        CHIP       PSF
+PPSTACK.INPUT.SOURCES     INPUT    @FILES        FPA        CMF
+PPSTACK.INPUT.BKGMODEL	  INPUT	   @FILES	 FPA	    IMAGE
+
+## files used by ppstamp
+PPSTAMP.INPUT             INPUT    @FILES        FPA        IMAGE
+PPSTAMP.INPUT.MASK        INPUT    @FILES        FPA        MASK
+PPSTAMP.INPUT.VARIANCE    INPUT    @FILES        FPA        VARIANCE
+
+# files used by pparith
+PPARITH.INPUT.IMAGE       INPUT    @FILES        CHIP       IMAGE
+PPARITH.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+
+PPSKYCELL.IMAGE           INPUT    @FILES        CHIP       IMAGE
+PPSKYCELL.MASK            INPUT    @FILES        CHIP       MASK
+PPSKYCELL.WCSREF	  INPUT	   @FILES	 CHIP	    IMAGE
+
+PPSIM.INPUT               INPUT    @FILES        FPA        IMAGE     
+PPSIM.REAL.SOURCES        INPUT    @FILES        CHIP       CMF       
+
+PPCOORD.ASTROM		  INPUT	   @FILES	 FPA	    WCS
+PPCOORD.RAW		  INPUT	   @FILES	 CHIP	    IMAGE
+
+## files used by ppNoiseMap
+PPNOISEMAP.INPUT          INPUT    @FILES        CHIP       IMAGE
+
+## files used by censorObject 
+CENSOR.INPUT              INPUT    @FILES        CHIP       CMF
+CENSOR.INPUT.MASK         INPUT    @FILES        CHIP       MASK
+
+## Files used by ppSmooth
+PPSMOOTH.INPUT            INPUT    @FILES        CHIP       IMAGE
+PPSMOOTH.INPUT.MASK       INPUT    @FILES        CHIP       MASK
+PPSMOOTH.INPUT.VARIANCE   INPUT    @FILES        CHIP       VARIANCE
+
+## Files used by ppbgrestore
+PPBGRESTORE.INPUT         INPUT    @FILES        FPA        IMAGE
+PPBGRESTORE.BACKMDL       INPUT    @FILES        FPA        IMAGE
+
+PPVIZPATTERN.INPUT        INPUT    @FILES        CHIP       PATTERN
+
+PPBACKGROUND.IMAGE	  INPUT    @FILES        CHIP       IMAGE
+PPBACKGROUND.MASK	  INPUT    @FILES        CHIP       MASK
+PPBACKGROUND.PATTERN	  INPUT    @FILES        CHIP       PATTERN
+PPBACKGROUND.BACKGROUND	  INPUT    @FILES        CHIP       IMAGE
+PPBACKGROUND.STACK        INPUT    @FILES        FPA        IMAGE
+
+## files used by fpcamera
+FPCAMERA.INPUT           INPUT    @FILES        CHIP       IMAGE
+FPCAMERA.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+FPCAMERA.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+FPCAMERA.INPUT.ASTROM    INPUT    @FILES        CHIP       WCS
+
+### output file definitions
+TYPE                         OUTPUT FILENAME.RULE                 FILE.TYPE       FITS.TYPE  DATA.LEVEL FILE.SAVE FILE.FORMAT
+PPIMAGE.OUTPUT               OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.MASK          OUTPUT {OUTPUT}.mk.fits              MASK            NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.VARIANCE      OUTPUT {OUTPUT}.wt.fits              VARIANCE        NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.DETMASK       OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.DETREND       OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.RESID         OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
+PPIMAGE.CONFIG               OUTPUT {OUTPUT}.ppImage.mdc          TEXT            NONE       FPA        TRUE      NONE
+                                                     
+PPIMAGE.CHIP                 OUTPUT {OUTPUT}.ch.fits              IMAGE           NONE       FPA        TRUE      SIMPLE
+PPIMAGE.CHIP.DETMASK         OUTPUT {OUTPUT}.ch.fits              IMAGE           NONE       FPA        TRUE      SIMPLE
+PPIMAGE.CHIP.MASK            OUTPUT {OUTPUT}.ch.mk.fits           MASK            NONE       FPA        TRUE      SIMPLE
+PPIMAGE.CHIP.VARIANCE        OUTPUT {OUTPUT}.ch.wt.fits           VARIANCE        NONE       FPA        TRUE      SIMPLE
+PPIMAGE.CHIP.RESID           OUTPUT {OUTPUT}.ch.fits              IMAGE           NONE       FPA        TRUE      SIMPLE
+                                                     
+PPIMAGE.OUTPUT.FPA1          OUTPUT {OUTPUT}.b1.fits              IMAGE           NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.FPA2          OUTPUT {OUTPUT}.b2.fits              IMAGE           NONE       FPA        TRUE      SIMPLE
+                                                     
+PPIMAGE.BIN1                 OUTPUT {OUTPUT}.b1.fits              IMAGE           NONE       FPA        TRUE      SIMPLE
+PPIMAGE.BIN2                 OUTPUT {OUTPUT}.b2.fits              IMAGE           NONE       FPA        TRUE      SIMPLE
+                                                     
+PPIMAGE.JPEG1                OUTPUT {OUTPUT}.b1.jpg               JPEG            NONE       FPA        TRUE      NONE
+PPIMAGE.JPEG2                OUTPUT {OUTPUT}.b2.jpg               JPEG            NONE       FPA        TRUE      NONE
+PPIMAGE.PATTERN              OUTPUT {OUTPUT}.ptn                  PATTERN         NONE       FPA        TRUE      NONE
+PPIMAGE.STATS                OUTPUT {OUTPUT}.stats                STATS           NONE       FPA        TRUE      NONE
+PPIMAGE.BACKMDL              OUTPUT {OUTPUT}.{CHIP.NAME}.mdl.fits     IMAGE           NONE       CHIP       TRUE      NONE
+
+## note: these use the  same output naming convention since they are used for different ppMerge runs
+PPMERGE.OUTPUT.MASK          OUTPUT {OUTPUT}.fits                 MASK            NONE       FPA        TRUE      SIMPLE
+PPMERGE.OUTPUT.BIAS          OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
+PPMERGE.OUTPUT.DARK          OUTPUT {OUTPUT}.fits                 DARK            NONE       FPA        TRUE      SIMPLE
+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
+PPMERGE.OUTPUT.COUNT         OUTPUT {OUTPUT}.count.fits           IMAGE           NONE       FPA        TRUE      SIMPLE
+                                                     
+DVOCORR.OUTPUT               OUTPUT {OUTPUT}.fc.fits              IMAGE           NONE       FPA        TRUE      SIMPLE
+DVOFLAT.OUTPUT               OUTPUT {OUTPUT}.co.fits              IMAGE           NONE       FPA        TRUE      SIMPLE
+                                                     
+PSPHOT.RESID                 OUTPUT {OUTPUT}.res.fits             IMAGE           NONE       FPA        TRUE      SIMPLE
+PSPHOT.BACKGND               OUTPUT {OUTPUT}.bck.fits             IMAGE           NONE       FPA        TRUE      SIMPLE
+PSPHOT.BACKSUB               OUTPUT {OUTPUT}.sub.fits             IMAGE           NONE       FPA        TRUE      SIMPLE
+PSPHOT.BACKMDL               OUTPUT {OUTPUT}.mdl.fits             IMAGE           NONE       FPA        TRUE      SIMPLE
+PSPHOT.BACKMDL.MEF           OUTPUT {OUTPUT}.mdl.fits             IMAGE           NONE       FPA        TRUE      SIMPLE
+PSPHOT.BACKMDL.STDEV         OUTPUT {OUTPUT}.mdl.std.fits         IMAGE           NONE       FPA        TRUE      SIMPLE
+                                                     
+PSPHOT.OUTPUT.RAW            OUTPUT {OUTPUT}                      RAW             NONE       FPA        TRUE      NONE
+PSPHOT.OUTPUT.SX             OUTPUT {OUTPUT}.sx                   SX              NONE       FPA        TRUE      NONE
+PSPHOT.OUTPUT.OBJ            OUTPUT {OUTPUT}.obj                  OBJ             NONE       FPA        TRUE      NONE
+PSPHOT.OUTPUT.CMP            OUTPUT {OUTPUT}.cmp                  CMP             NONE       FPA        TRUE      NONE
+PSPHOT.OUTPUT.CMF            OUTPUT {OUTPUT}.cmf                  CMF             NONE       CHIP       TRUE      NONE
+PSPHOT.OUT.CMF.MEF           OUTPUT {OUTPUT}.cmf                  CMF             NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.CFF            OUTPUT {OUTPUT}.cff                  CFF             NONE       CHIP       TRUE      NONE
+PSPHOT.PSF.RAW.SAVE          OUTPUT {OUTPUT}.psf                  PSF             NONE       FPA        TRUE      NONE
+PSPHOT.PSF.SKY.SAVE          OUTPUT {OUTPUT}.psf                  PSF             NONE       FPA        TRUE      NONE
+
+#psvideophot
+PSVIDEOPHOT.OUTPUT           OUTPUT {OUTPUT}.{CHIP.NAME}.vid          OBJ NONE CHIP TRUE NONE
+PSVIDEOPHOT.CHIP             OUTPUT {OUTPUT}.{CHIP.NAME}.vid          OBJ NONE CHIP TRUE NONE
+
+# used by staticsky with single input
+PSPHOT.SKY.CONFIG       OUTPUT {OUTPUT}.psphot.mdc               TEXT      NONE       FPA        TRUE      NONE
+
+# outputs for psphotStack:
+PSPHOT.CHISQ.IMAGE           OUTPUT {OUTPUT}.chisq.im.fits            IMAGE           NONE       FPA        TRUE      NONE
+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}.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.PSF.SAVE        OUTPUT {OUTPUT}.stk.{FILE.ID}.psf        PSF             NONE       FPA        TRUE      NONE
+PSPHOT.STACK.BACKMDL         OUTPUT {OUTPUT}.stk.{FILE.ID}.mdl.fits   IMAGE           NONE       FPA        TRUE      NONE
+PSPHOT.STACK.BACKMDL.STDEV   OUTPUT {OUTPUT}.stk.{FILE.ID}.mdl.sdv.fits IMAGE         NONE       FPA        TRUE      NONE
+PSPHOT.STACK.BACKGND         OUTPUT {OUTPUT}.stk.{FILE.ID}.bck.fits   IMAGE           COMP_IMG   FPA        TRUE      NONE
+PSPHOT.STACK.BACKSUB         OUTPUT {OUTPUT}.stk.{FILE.ID}.sub.fits   IMAGE           COMP_SUB   FPA        TRUE      NONE
+PSPHOT.STACK.RESID           OUTPUT {OUTPUT}.stk.{FILE.ID}.res.fits   IMAGE           COMP_SUB   FPA        TRUE      NONE
+PSPHOT.STACK.CONFIG          OUTPUT {OUTPUT}.psphotStack.mdc          TEXT            NONE       FPA        TRUE      NONE
+                                                     
+                                                     
+SOURCE.PLOT.MOMENTS          OUTPUT {OUTPUT}.mnt.png              KAPA            NONE       FPA        TRUE      NONE
+SOURCE.PLOT.PSFMODEL         OUTPUT {OUTPUT}.psf.png              KAPA            NONE       FPA        TRUE      NONE
+SOURCE.PLOT.APRESID          OUTPUT {OUTPUT}.dap.png              KAPA            NONE       FPA        TRUE      NONE
+                                                     
+PSASTRO.OUTPUT.CMP           OUTPUT {OUTPUT}.smp                  CMP             NONE       FPA        TRUE      NONE
+PSASTRO.OUTPUT.CMF           OUTPUT {OUTPUT}.smf                  CMF             NONE       FPA        TRUE      NONE
+PSASTRO.OUT.MODEL            OUTPUT {OUTPUT}.asm                  ASTROM.MODEL    NONE       FPA        TRUE      NONE
+PSASTRO.OUT.REFSTARS         OUTPUT {OUTPUT}.aref.fits            ASTROM.REFSTARS NONE       FPA        TRUE      NONE
+PSASTRO.STATS                OUTPUT {OUTPUT}.stats                STATS           NONE       FPA        TRUE      NONE
+PSASTRO.CONFIG               OUTPUT {OUTPUT}.psastro.mdc          TEXT            NONE       FPA        TRUE      NONE
+PSASTRO.OUTPUT.MASK          OUTPUT {OUTPUT}.mk.fits              MASK            COMP_MASK  CHIP       TRUE      NONE
+                                                     
+FPCAMERA.OUT.CMF             OUTPUT {OUTPUT}.cmf                  CMF             NONE       CHIP       TRUE      NONE
+FPCAMERA.RESID               OUTPUT {OUTPUT}.{CHIP.NAME}.res.fits IMAGE           COMP_SUB   CHIP       TRUE      NONE
+FPCAMERA.STATS               OUTPUT {OUTPUT}.stats                STATS           NONE       FPA        TRUE      NONE
+FPCAMERA.CONFIG              OUTPUT {OUTPUT}.mdc                  TEXT            NONE       FPA        TRUE      NONE
+
+PSWARP.OUTPUT                OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      NONE
+PSWARP.OUTPUT.MASK           OUTPUT {OUTPUT}.mask.fits            MASK            NONE       FPA        TRUE      NONE
+PSWARP.OUTPUT.VARIANCE       OUTPUT {OUTPUT}.wt.fits              VARIANCE        NONE       FPA        TRUE      NONE
+PSWARP.OUTPUT.SOURCES        OUTPUT {OUTPUT}.cmf                  CMF             NONE       FPA        TRUE      NONE
+PSWARP.BIN1                  OUTPUT {OUTPUT}.b1.fits              IMAGE           NONE       FPA        TRUE      NONE
+PSWARP.BIN2                  OUTPUT {OUTPUT}.b2.fits              IMAGE           NONE       FPA        TRUE      NONE
+PSWARP.CONFIG                OUTPUT {OUTPUT}.pswarp.mdc           TEXT            NONE       FPA        TRUE      NONE
+PSWARP.OUTPUT.BKGMODEL	     OUTPUT {OUTPUT}.mdl.fits		  IMAGE	      	  NONE	 FPA	    TRUE      NONE
+                                                     
+SKYCELL.STATS                OUTPUT {OUTPUT}.stats                STATS           NONE       FPA        TRUE      NONE
+SKYCELL.STATS.UPDATE         OUTPUT {OUTPUT}.stats.update         STATS           NONE       FPA        TRUE      NONE
+SKYCELL.TEMPLATE             OUTPUT {OUTPUT}.skycell              SKYCELL         NONE       FPA        TRUE      NONE
+                                                     
+PPSUB.OUTPUT                 OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.MASK            OUTPUT {OUTPUT}.mask.fits            MASK            NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.VARIANCE        OUTPUT {OUTPUT}.wt.fits              VARIANCE        NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.SOURCES         OUTPUT {OUTPUT}.cmf                  CMF             NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.KERNELS         OUTPUT {OUTPUT}.subkernel            SUBKERNEL       NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG1           OUTPUT {OUTPUT}.b1.jpg               JPEG            NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG2           OUTPUT {OUTPUT}.b2.jpg               JPEG            NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.RESID.JPEG      OUTPUT {OUTPUT}.res.jpg              JPEG            NONE       FPA        TRUE      NONE
+PPSUB.INVERSE                OUTPUT {OUTPUT}.inv.fits             IMAGE           NONE       FPA        TRUE      NONE
+PPSUB.INVERSE.MASK           OUTPUT {OUTPUT}.inv.mask.fits        MASK            NONE       FPA        TRUE      NONE
+PPSUB.INVERSE.VARIANCE       OUTPUT {OUTPUT}.inv.wt.fits          VARIANCE        NONE       FPA        TRUE      NONE
+PPSUB.INVERSE.SOURCES        OUTPUT {OUTPUT}.inv.cmf              CMF             NONE       FPA        TRUE      NONE
+PPSUB.CONFIG                 OUTPUT {OUTPUT}.ppSub.mdc            TEXT            NONE       FPA        TRUE      NONE
+PPSUB.INPUT.CONV             OUTPUT {OUTPUT}.inConv.fits          IMAGE           NONE       FPA        TRUE      NONE
+PPSUB.INPUT.CONV.MASK        OUTPUT {OUTPUT}.inConv.mk.fits       MASK            NONE       FPA        TRUE      NONE
+PPSUB.INPUT.CONV.VARIANCE    OUTPUT {OUTPUT}.inConv.wt.fits       VARIANCE        NONE       FPA        TRUE      NONE
+PPSUB.REF.CONV               OUTPUT {OUTPUT}.refConv.fits         IMAGE           NONE       FPA        TRUE      NONE
+PPSUB.REF.CONV.MASK          OUTPUT {OUTPUT}.refConv.mk.fits      MASK            NONE       FPA        TRUE      NONE
+PPSUB.REF.CONV.VARIANCE      OUTPUT {OUTPUT}.refConv.wt.fits      VARIANCE        NONE       FPA        TRUE      NONE
+                                             
+PPSUB.FORCED1.SOURCES        OUTPUT {OUTPUT}.frc1.cmf             CMF             NONE       FPA        TRUE      NONE
+PPSUB.FORCED2.SOURCES        OUTPUT {OUTPUT}.frc2.cmf             CMF             NONE       FPA        TRUE      NONE
+PPSUB.POS1.SOURCES           OUTPUT {OUTPUT}.pos1.cmf             CMF             NONE       FPA        TRUE      NONE
+PPSUB.POS2.SOURCES           OUTPUT {OUTPUT}.pos2.cmf             CMF             NONE       FPA        TRUE      NONE
+
+# output files for gdiff
+GDIFF.OUTPUT                 OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      NONE
+GDIFF.OUTPUT.MASK            OUTPUT {OUTPUT}.mask.fits            MASK            NONE       FPA        TRUE      NONE
+GDIFF.OUTPUT.VARIANCE        OUTPUT {OUTPUT}.wt.fits              VARIANCE        NONE       FPA        TRUE      NONE
+GDIFF.OUTPUT.SOURCES         OUTPUT {OUTPUT}.cmf                  CMF             NONE       FPA        TRUE      NONE
+GDIFF.OUTPUT.KERNELS         OUTPUT {OUTPUT}.subkernel            SUBKERNEL       NONE       FPA        TRUE      NONE
+GDIFF.OUTPUT.JPEG1           OUTPUT {OUTPUT}.b1.jpg               JPEG            NONE       FPA        TRUE      NONE
+GDIFF.OUTPUT.JPEG2           OUTPUT {OUTPUT}.b2.jpg               JPEG            NONE       FPA        TRUE      NONE
+GDIFF.OUTPUT.RESID.JPEG      OUTPUT {OUTPUT}.res.jpg              JPEG            NONE       FPA        TRUE      NONE
+GDIFF.INVERSE                OUTPUT {OUTPUT}.inv.fits             IMAGE           NONE       FPA        TRUE      NONE
+GDIFF.INVERSE.MASK           OUTPUT {OUTPUT}.inv.mask.fits        MASK            NONE       FPA        TRUE      NONE
+GDIFF.INVERSE.VARIANCE       OUTPUT {OUTPUT}.inv.wt.fits          VARIANCE        NONE       FPA        TRUE      NONE
+GDIFF.INVERSE.SOURCES        OUTPUT {OUTPUT}.inv.cmf              CMF             NONE       FPA        TRUE      NONE
+GDIFF.CONFIG                 OUTPUT {OUTPUT}.gDiff.mdc            TEXT            NONE       FPA        TRUE      NONE
+GDIFF.INPUT.CONV             OUTPUT {OUTPUT}.inConv.fits          IMAGE           NONE       FPA        TRUE      NONE
+GDIFF.INPUT.CONV.MASK        OUTPUT {OUTPUT}.inConv.mk.fits       MASK            NONE       FPA        TRUE      NONE
+GDIFF.INPUT.CONV.VARIANCE    OUTPUT {OUTPUT}.inConv.wt.fits       VARIANCE        NONE       FPA        TRUE      NONE
+GDIFF.REF.CONV               OUTPUT {OUTPUT}.refConv.fits         IMAGE           NONE       FPA        TRUE      NONE
+GDIFF.REF.CONV.MASK          OUTPUT {OUTPUT}.refConv.mk.fits      MASK            NONE       FPA        TRUE      NONE
+GDIFF.REF.CONV.VARIANCE      OUTPUT {OUTPUT}.refConv.wt.fits      VARIANCE        NONE       FPA        TRUE      NONE
+                                             
+GDIFF.FORCED1.SOURCES        OUTPUT {OUTPUT}.frc1.cmf             CMF             NONE       FPA        TRUE      NONE
+GDIFF.FORCED2.SOURCES        OUTPUT {OUTPUT}.frc2.cmf             CMF             NONE       FPA        TRUE      NONE
+GDIFF.POS1.SOURCES           OUTPUT {OUTPUT}.pos1.cmf             CMF             NONE       FPA        TRUE      NONE
+GDIFF.POS2.SOURCES           OUTPUT {OUTPUT}.pos2.cmf             CMF             NONE       FPA        TRUE      NONE
+
+PPSTACK.OUTPUT.COMP          OUTPUT {OUTPUT}.fits                 IMAGE           COMP_IMG   FPA        TRUE      NONE
+PPSTACK.OUTPUT.RAW           OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.MASK          OUTPUT {OUTPUT}.mask.fits            MASK            COMP_MASK  FPA        TRUE      NONE
+PPSTACK.OUTPUT.VARIANCE      OUTPUT {OUTPUT}.weight.fits          VARIANCE        COMP_WT    FPA        TRUE      NONE
+PPSTACK.OUTPUT.EXP           OUTPUT {OUTPUT}.exp.fits             IMAGE           EXP        FPA        TRUE      NONE
+PPSTACK.OUTPUT.EXPNUM        OUTPUT {OUTPUT}.num.fits             MASK            EXPNUM     FPA        TRUE      NONE
+PPSTACK.OUTPUT.EXPWT         OUTPUT {OUTPUT}.expwt.fits           VARIANCE        EXP        FPA        TRUE      NONE
+
+PPSTACK.UNCONV.COMP          OUTPUT {OUTPUT}.unconv.fits          IMAGE           COMP_IMG   FPA        TRUE      NONE
+PPSTACK.UNCONV.RAW           OUTPUT {OUTPUT}.unconv.fits          IMAGE           NONE       FPA        TRUE      NONE
+PPSTACK.UNCONV.MASK          OUTPUT {OUTPUT}.unconv.mask.fits     MASK            COMP_MASK  FPA        TRUE      NONE
+PPSTACK.UNCONV.VARIANCE      OUTPUT {OUTPUT}.unconv.wt.fits       VARIANCE        COMP_WT    FPA        TRUE      NONE
+PPSTACK.UNCONV.EXP           OUTPUT {OUTPUT}.unconv.exp.fits      IMAGE           EXP        FPA        TRUE      NONE
+PPSTACK.UNCONV.EXPNUM        OUTPUT {OUTPUT}.unconv.num.fits      MASK            EXPNUM     FPA        TRUE      NONE
+PPSTACK.UNCONV.EXPWT         OUTPUT {OUTPUT}.unconv.expwt.fits    VARIANCE        EXP        FPA        TRUE      NONE
+PPSTACK.TARGET.PSF           OUTPUT {OUTPUT}.target.psf           PSF             NONE       CHIP       TRUE      NONE
+PPSTACK.CONV.KERNEL          OUTPUT {OUTPUT}.{FILE.INDEX}.kernel  SUBKERNEL       NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG1         OUTPUT {OUTPUT}.b1.jpg               JPEG            NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG2         OUTPUT {OUTPUT}.b2.jpg               JPEG            NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.BKGMODEL      OUTPUT {OUTPUT}.mdl.fits		  IMAGE	   	  NONE	     FPA	TRUE      NONE
+PPSTACK.OUTPUT.BKGREST       OUTPUT {OUTPUT}.bkgrest.fits	  IMAGE	   	  NONE       FPA	TRUE      NONE
+PPSTACK.CONFIG               OUTPUT {OUTPUT}.ppStack.mdc          TEXT            NONE       FPA        TRUE      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                   OUTPUT {OUTPUT}.ch.fits           IMAGE     NONE       CHIP       FALSE     NONE
+                                                     
+PPSIM.OUTPUT                 OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
+PPSIM.FAKE.CHIP              OUTPUT {OUTPUT}.fake.fits            IMAGE           NONE       FPA        TRUE      SIMPLE
+PPSIM.FORCE.CHIP             OUTPUT {OUTPUT}.force.fits           IMAGE           NONE       FPA        TRUE      SIMPLE
+PPSIM.SOURCES                OUTPUT {OUTPUT}.cmf                  CMF             NONE       FPA        TRUE      NONE
+PPSIM.FAKE.SOURCES           OUTPUT {OUTPUT}.fake.cmf             CMF             NONE       FPA        TRUE      NONE
+PPSIM.FORCE.SOURCES          OUTPUT {OUTPUT}.force.cmf            CMF             NONE       FPA        TRUE      NONE
+                                                     
+PPARITH.OUTPUT.IMAGE         OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      NONE
+PPARITH.OUTPUT.MASK          OUTPUT {OUTPUT}.fits                 MASK            NONE       FPA        TRUE      NONE
+
+PPSKYCELL.JPEG1              OUTPUT {OUTPUT}.{FILE.INDEX}.b1.jpeg JPEG            NONE       CHIP       TRUE      NONE
+PPSKYCELL.JPEG2              OUTPUT {OUTPUT}.{FILE.INDEX}.b2.jpeg JPEG            NONE       CHIP       TRUE      NONE
+PPSKYCELL.BIN1    	     OUTPUT {OUTPUT}.{FILE.INDEX}.b1.fits     IMAGE     NONE       FPA        TRUE      NONE
+PPSKYCELL.BIN2    	     OUTPUT {OUTPUT}.{FILE.INDEX}.b2.fits     IMAGE     NONE       FPA        TRUE      NONE
+PPSKYCELL.BIN1.MASK    	     OUTPUT {OUTPUT}.b1.mk.fits     MASK     COMP_MASK       FPA        TRUE      NONE
+PPSKYCELL.BIN2.MASK    	     OUTPUT {OUTPUT}.b2.mk.fits     MASK     COMP_MASK       FPA       TRUE      NONE
+
+LOG.IMFILE                   OUTPUT {OUTPUT}.imfile.log           TEXT            NONE       FPA        TRUE      NONE
+LOG.EXP                      OUTPUT {OUTPUT}.exp.log              TEXT            NONE       FPA        TRUE      NONE
+LOG.IMFILE.UPDATE            OUTPUT {OUTPUT}.imfile.log.update    TEXT            NONE       FPA        TRUE      NONE
+LOG.EXP.UPDATE               OUTPUT {OUTPUT}.exp.log.update       TEXT            NONE       FPA        TRUE      NONE
+
+TRACE.IMFILE                 OUTPUT {OUTPUT}.imfile.trace         TEXT            NONE       FPA        TRUE      NONE
+TRACE.EXP                    OUTPUT {OUTPUT}.exp.trace            TEXT            NONE       FPA        TRUE      NONE
+TRACE.IMFILE.UPDATE          OUTPUT {OUTPUT}.imfile.trace.update  TEXT            NONE       FPA        TRUE      NONE
+TRACE.EXP.UPDATE             OUTPUT {OUTPUT}.exp.trace.update     TEXT            NONE       FPA        TRUE      NONE
+
+DBINFO.IMFILE                OUTPUT {OUTPUT}.{CHIP.NAME}.dbinfo       TEXT            NONE       CHIP       TRUE      NONE
+DBINFO.EXP                   OUTPUT {OUTPUT}.dbinfo                   TEXT            NONE       CHIP       TRUE      NONE
+
+PPNOISEMAP.OUTPUT            OUTPUT {OUTPUT}.{CHIP.NAME}.fits     IMAGE           NONE       CHIP       TRUE      NONE
+
+CENSOR.OUTPUT                OUTPUT {OUTPUT}.smf                  CMF             NONE       FPA        TRUE      MEF
+
+MAGIC.ORIGINAL.PNG           OUTPUT {OUTPUT}_original.png         JPEG            NONE       FPA        TRUE      NONE
+MAGIC.RESIDUAL.PNG           OUTPUT {OUTPUT}_residual.png         JPEG            NONE       FPA        TRUE      NONE
+MAGIC.MASK.PNG               OUTPUT {OUTPUT}_mask.png             JPEG            NONE       FPA        TRUE      NONE
+MAGIC.DUPLICATE.PNG          OUTPUT {OUTPUT}_duplicate.png        JPEG            NONE       FPA        TRUE      NONE
+
+PPSMOOTH.OUTPUT              OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      SIMPLE
+PPSMOOTH.OUTPUT.MASK         OUTPUT {OUTPUT}.mk.fits              MASK            NONE       FPA        TRUE      SIMPLE
+PPSMOOTH.OUTPUT.VARIANCE     OUTPUT {OUTPUT}.wt.fits              VARIANCE        NONE       FPA        TRUE      SIMPLE
+
+PPBGRESTORE.OUTPUT           OUTPUT {OUTPUT}.fits                 IMAGE           NONE       FPA        TRUE      NONE
+
+PPVIZPSF.OUTPUT              OUTPUT {OUTPUT}.fits                     IMAGE           NONE       CHIP       TRUE      NONE
+PPVIZPATTERN.OUTPUT          OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPVIZPATTERN.CHIP            OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE           NONE       CHIP       TRUE      NONE
+
+PPBACKGROUND.OUTPUT	     OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       FPA        TRUE      NONE
+PPBACKGROUND.OUTPUT.MASK     OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK            NONE       FPA        TRUE      NONE
+PPBACKGROUND.CONFIG          OUTPUT {OUTPUT}.{CHIP.NAME}.ppBackground.mdc TEXT        NONE       CHIP       TRUE      NONE
+PPBACKGROUND.STATS           OUTPUT {OUTPUT}.{CHIP.NAME}.stats        STATS           NONE       CHIP       TRUE      NONE
+
+PPBACKGROUND.STACK.OUTPUT    OUTPUT {OUTPUT}.bkgrest.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.STACK.MODEL     OUTPUT {OUTPUT}.bkgmdl.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.OTA.SOLUTION    OUTPUT {OUTPUT}.{CHIP.NAME}.OTAS.fits IMAGE  COMP_IMG   CHIP       TRUE      NONE
Index: /branches/eam_branches/ippconfig.20240412/recipes/filerules-split.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/filerules-split.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/filerules-split.mdc	(revision 42661)
@@ -0,0 +1,479 @@
+### File rules for PHU=CHIP, EXT=CELL (eg, GPC1)
+### this file specifies compression types for various output files
+### The default type of NONE means no compression
+
+# for basic chip analysis, psphot should produce SPLIT output
+# for basic camera analysis, psastro should produce MEF output
+PSPHOT.OUTPUT        STR PSPHOT.OUT.CMF.SPL
+PSASTRO.INPUT        STR PSASTRO.INPUT.CMF
+PSPHOT.PSF.SAVE      STR PSPHOT.PSF.RAW.SAVE
+
+SOURCE.PLOT.MOMENTS  STR SOURCE.PLOT.RAW.MOMENTS
+SOURCE.PLOT.PSFMODEL STR SOURCE.PLOT.RAW.PSFMODEL
+SOURCE.PLOT.APRESID  STR SOURCE.PLOT.RAW.APRESID
+
+PSASTRO.OUTPUT     STR PSASTRO.OUT.CMF.MEF
+PSASTRO.OUTPUT.ORIGINAL     STR PSASTRO.OUT.ORIGINAL.CMF.MEF
+# PSASTRO.OUTPUT.SPL STR PSASTRO.OUT.CMF.SPL
+# PSASTRO.OUTPUT.MEF STR PSASTRO.OUT.CMF.MEF
+
+# ppStack outputs default to compressed images
+PPSTACK.OUTPUT           STR PPSTACK.OUTPUT.COMP
+PPSTACK.OUTPUT.MASK      STR PPSTACK.OUTPUT.MASK.COMP
+PPSTACK.OUTPUT.VARIANCE  STR PPSTACK.OUTPUT.VARIANCE.COMP
+PPSTACK.OUTPUT.EXPWT     STR PPSTACK.OUTPUT.EXPWT.COMP
+PPSTACK.UNCONV           STR PPSTACK.UNCONV.COMP
+PPSTACK.UNCONV.MASK      STR PPSTACK.UNCONV.MASK.COMP
+PPSTACK.UNCONV.VARIANCE  STR PPSTACK.UNCONV.VARIANCE.COMP
+PPSTACK.UNCONV.EXPWT     STR PPSTACK.UNCONV.EXPWT.COMP
+
+FPCAMERA.OUTPUT          STR FPCAMERA.OUT.CMF.MEF
+
+### input file definitions
+### use @DETDB entries to get the detrend images from the database
+### replace @DETDB with @FILES if you want to require it from the 
+### command line, or with an explicit name to require a specific file
+TYPE                      INPUT    FILENAME.RULE DATA.LEVEL FILE.TYPE
+
+## files used by ppImage
+PPIMAGE.INPUT             INPUT    @FILES        CHIP       IMAGE
+PPIMAGE.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+PPIMAGE.VIDEOMASK         INPUT    @DETDB        CHIP       MASK
+PPIMAGE.AUXMASK           INPUT    @DETDB        CHIP       MASK
+PPIMAGE.INPUT.VARIANCE    INPUT    @FILES        CHIP       VARIANCE
+PPIMAGE.INPUT.PSF         INPUT    @FILES        CHIP       PSF
+PPIMAGE.INPUT.SRC         INPUT    @FILES        CHIP       CMF
+PPIMAGE.MASK              INPUT    @DETDB        CHIP       MASK
+PPIMAGE.BIAS              INPUT    @DETDB        CHIP       IMAGE
+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
+PPIMAGE.SHUTTER           INPUT    @DETDB        CHIP       IMAGE
+PPIMAGE.LINEARITY         INPUT    @DETDB        CHIP       LINEARITY
+PPIMAGE.NEWNONLIN         INPUT    @DETDB        CHIP       NEWNONLIN
+PPIMAGE.PATTERN.ROW.AMP   INPUT    @DETDB        FPA        PATTERN.ROW.AMP
+PPIMAGE.PATTERN.DEAD.CELLS INPUT   @DETDB        FPA        PATTERN.DEAD.CELLS
+
+## Files used by psvideophot
+PSVIDEOPHOT.INPUT             INPUT    @FILES        CHIP       IMAGE
+PSVIDEOPHOT.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+PSVIDEOPHOT.INPUT.VARIANCE    INPUT    @FILES        CHIP       VARIANCE
+PSVIDEOPHOT.INPUT.PSF         INPUT    @FILES        CHIP       PSF
+PSVIDEOPHOT.INPUT.SRC         INPUT    @FILES        CHIP       CMF
+
+## Files used by ppMerge
+PPMERGE.INPUT             INPUT    @FILES        CHIP       IMAGE
+PPMERGE.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+PPMERGE.INPUT.VARIANCE    INPUT    @FILES        CHIP       VARIANCE
+
+## files used to build and apply the flat-field correction images
+DVOCORR.INPUT             INPUT    @FILES        CHIP       IMAGE
+DVOCORR.REFHEAD           INPUT    @FILES        CHIP       HEADER
+DVOFLAT.INPUT             INPUT    @FILES        CHIP       IMAGE
+DVOFLAT.CORR              INPUT    @DETDB        CHIP       IMAGE
+
+## files used by psphot
+PSPHOT.LOAD               INPUT    @FILES        CHIP       IMAGE
+PSPHOT.INPUT              INPUT    @FILES        CHIP       IMAGE
+PSPHOT.MASK               INPUT    @FILES        CHIP       MASK     
+PSPHOT.VARIANCE           INPUT    @FILES        CHIP       VARIANCE     
+PSPHOT.PSF.LOAD           INPUT    @FILES        CHIP       PSF       
+PSPHOT.INPUT.CMF          INPUT    @FILES        CHIP       CMF       
+PSPHOT.INPUT.CFF          INPUT    @FILES        CHIP       CFF
+PSPHOT.INPUT.TEXT         INPUT    @FILES        CHIP       SRCTEXT       
+PSPHOT.EXPNUM             INPUT    @FILES        CHIP       EXPNUM
+
+## files used by psphotStack
+PSPHOT.STACK.INPUT.RAW    INPUT    @FILES        CHIP       IMAGE
+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.BACKMDL.RAW  INPUT    @FILES        CHIP       IMAGE       
+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
+
+## files used by psastro 
+PSASTRO.INPUT.CMP         INPUT    @FILES        CHIP       CMP
+PSASTRO.INPUT.CMF         INPUT    @FILES        CHIP       CMF
+PSASTRO.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+PSASTRO.REFMASK           INPUT    @DETDB        CHIP       MASK
+PSASTRO.WCS               INPUT    @FILES        CHIP       WCS
+PSASTRO.MODEL             INPUT    @DETDB        FPA        ASTROM
+PSASTRO.KH.CORRECT        INPUT    @DETDB        FPA        KH.CORRECT
+                          
+PSASTRO.EXTRACT.ASTROM    INPUT    @FILES        CHIP       CMF
+PSASTRO.EXTRACT.INPUT     INPUT    @FILES        CHIP       IMAGE
+                          
+## files used by pswarp   
+PSWARP.INPUT              INPUT    @FILES        CHIP       IMAGE
+PSWARP.VARIANCE           INPUT    @FILES        CHIP       VARIANCE
+PSWARP.MASK               INPUT    @FILES        CHIP       MASK
+PSWARP.SKYCELL            INPUT    @FILES        CHIP       WCS
+PSWARP.ASTROM             INPUT    @FILES        CHIP       CMF
+# Note: if input astrometry does not have sources, either set the above file type to WCS and/or set pswarp.config:SOURCES to false
+PSWARP.BKGMODEL		  INPUT	   @FILES	 CHIP	    IMAGE
+                          
+## files used by ppsub    
+PPSUB.INPUT               INPUT    @FILES        FPA        IMAGE
+PPSUB.INPUT.MASK          INPUT    @FILES        FPA        MASK
+PPSUB.INPUT.VARIANCE      INPUT    @FILES        FPA        VARIANCE
+PPSUB.INPUT.SOURCES       INPUT    @FILES        FPA        CMF
+PPSUB.INPUT.KERNEL        INPUT    @FILES        FPA        SUBKERNEL
+PPSUB.REF                 INPUT    @FILES        FPA        IMAGE
+PPSUB.REF.MASK            INPUT    @FILES        FPA        MASK
+PPSUB.REF.VARIANCE        INPUT    @FILES        FPA        VARIANCE
+PPSUB.REF.SOURCES         INPUT    @FILES        FPA        CMF
+                          
+## files used by ppstack  
+PPSTACK.INPUT             INPUT    @FILES        FPA        IMAGE
+PPSTACK.INPUT.MASK        INPUT    @FILES        FPA        MASK
+PPSTACK.INPUT.VARIANCE    INPUT    @FILES        FPA        VARIANCE
+PPSTACK.INPUT.PSF         INPUT    @FILES        CHIP       PSF
+PPSTACK.INPUT.SOURCES     INPUT    @FILES        FPA        CMF
+PPSTACK.INPUT.BKGMODEL	  INPUT	   @FILES	 FPA	    IMAGE
+                          
+## files used by ppstamp  
+PPSTAMP.INPUT             INPUT    @FILES        CHIP       IMAGE
+PPSTAMP.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+PPSTAMP.INPUT.VARIANCE    INPUT    @FILES        CHIP       VARIANCE
+PPSTAMP.INPUT.SOURCES     INPUT    @FILES        CHIP       CMF
+                          
+# files used by pparith   
+PPARITH.INPUT.IMAGE       INPUT    @FILES        CHIP       IMAGE
+PPARITH.INPUT.MASK        INPUT    @FILES        CHIP       MASK
+                          
+PPSKYCELL.IMAGE           INPUT    @FILES        CHIP       IMAGE
+PPSKYCELL.MASK            INPUT    @FILES        CHIP       MASK
+PPSKYCELL.WCSREF	  INPUT	   @FILES	 CHIP	    IMAGE
+                          
+PPSIM.INPUT               INPUT    @FILES        CHIP       IMAGE     
+PPSIM.REAL.SOURCES        INPUT    @FILES        CHIP       CMF       
+
+PPCOORD.ASTROM		  INPUT	   @FILES	 FPA	    WCS
+PPCOORD.RAW		  INPUT	   @FILES	 CHIP	    IMAGE
+
+## files used by ppNoiseMap
+PPNOISEMAP.INPUT          INPUT    @FILES        CHIP       IMAGE
+
+## files used by censorObject 
+CENSOR.INPUT              INPUT    @FILES        CHIP       CMF
+CENSOR.INPUT.MASK         INPUT    @FILES        CHIP       MASK
+
+## Files used by ppSmooth
+PPSMOOTH.INPUT            INPUT    @FILES        CHIP       IMAGE
+PPSMOOTH.INPUT.MASK       INPUT    @FILES        CHIP       MASK
+PPSMOOTH.INPUT.VARIANCE   INPUT    @FILES        CHIP       VARIANCE
+
+## Files used by ppbgrestore
+PPBGRESTORE.INPUT         INPUT    @FILES        CHIP       IMAGE
+PPBGRESTORE.BACKMDL       INPUT    @FILES        CHIP       IMAGE
+                          
+PPVIZPATTERN.INPUT        INPUT    @FILES        CHIP       PATTERN
+
+PPBACKGROUND.IMAGE	  INPUT    @FILES        CHIP       IMAGE
+PPBACKGROUND.MASK	  INPUT    @FILES        CHIP       MASK
+PPBACKGROUND.VARIANCE	  INPUT    @FILES        CHIP       VARIANCE
+PPBACKGROUND.AUXMASK	  INPUT    @FILES        CHIP       EXPNUM
+PPBACKGROUND.PATTERN	  INPUT    @FILES        CHIP       PATTERN
+PPBACKGROUND.BACKGROUND	  INPUT    @FILES        CHIP       IMAGE
+PPBACKGROUND.STACK        INPUT    @FILES        FPA        IMAGE
+
+## files used by fpcamera
+FPCAMERA.INPUT           INPUT    @FILES        CHIP       IMAGE
+FPCAMERA.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+FPCAMERA.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+FPCAMERA.INPUT.ASTROM    INPUT    @FILES        CHIP       WCS
+
+### output file definitions
+TYPE                         OUTPUT FILENAME.RULE                     FILE.TYPE       FITS.TYPE  DATA.LEVEL FILE.SAVE FILE.FORMAT
+PPIMAGE.OUTPUT               OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           COMP_IMG   CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.MASK          OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK            COMP_MASK  CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.VARIANCE      OUTPUT {OUTPUT}.{CHIP.NAME}.wt.fits      VARIANCE        COMP_WT    CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.DETMASK       OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           DET_MASK   CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.DETREND       OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.RESID         OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPIMAGE.CONFIG               OUTPUT {OUTPUT}.{CHIP.NAME}.ppImage.mdc  TEXT            NONE       CHIP       TRUE      NONE
+                                                                                                      
+PPIMAGE.OUTPUT.NOCOMP        OUTPUT {OUTPUT}.{CHIP.NAME}.raw.fits     IMAGE           RAW_IMG    CHIP       TRUE      NONE
+# PPIMAGE.OUTPUT.NOCOMP        OUTPUT {OUTPUT}.{CHIP.NAME}.fits            IMAGE           RAW_IMG    CHIP       TRUE      NONE
+
+PPIMAGE.CHIP                 OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE           COMP_IMG   CHIP       TRUE      NONE
+PPIMAGE.CHIP.DETMASK         OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE           NONE       CHIP       TRUE      NONE
+PPIMAGE.CHIP.MASK            OUTPUT {OUTPUT}.{CHIP.NAME}.ch.mk.fits   MASK            COMP_MASK  CHIP       TRUE      NONE
+PPIMAGE.CHIP.VARIANCE        OUTPUT {OUTPUT}.{CHIP.NAME}.ch.wt.fits   VARIANCE        COMP_WT    CHIP       TRUE      NONE
+PPIMAGE.CHIP.RESID           OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE           NONE       CHIP       TRUE      NONE
+PPIMAGE.CHIP.UNCOMPRESSED    OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE	      NONE	 CHIP	    TRUE      NONE
+
+PPIMAGE.OUTPUT.FPA1          OUTPUT {OUTPUT}.b1.fits                  IMAGE           NONE       FPA        TRUE      NONE
+PPIMAGE.OUTPUT.FPA2          OUTPUT {OUTPUT}.b2.fits                  IMAGE           NONE       FPA        TRUE      NONE
+                                                                                                              
+PPIMAGE.BIN1                 OUTPUT {OUTPUT}.{CHIP.NAME}.b1.fits      IMAGE           NONE       CHIP       TRUE      NONE
+PPIMAGE.BIN2                 OUTPUT {OUTPUT}.{CHIP.NAME}.b2.fits      IMAGE           NONE       CHIP       TRUE      NONE
+                                                                                                              
+PPIMAGE.JPEG1                OUTPUT {OUTPUT}.b1.jpg                   JPEG            NONE       FPA        TRUE      NONE
+PPIMAGE.JPEG2                OUTPUT {OUTPUT}.b2.jpg                   JPEG            NONE       FPA        TRUE      NONE
+PPIMAGE.PATTERN              OUTPUT {OUTPUT}.{CHIP.NAME}.ptn          PATTERN         NONE       CHIP       TRUE      NONE
+PPIMAGE.STATS                OUTPUT {OUTPUT}.{CHIP.NAME}.stats        STATS           NONE       CHIP       TRUE      NONE
+PPIMAGE.BACKMDL              OUTPUT {OUTPUT}.{CHIP.NAME}.mdl.fits     IMAGE           NONE       CHIP       TRUE      NONE
+
+## note: these use the  same output naming convention since they are used for different ppMerge runs
+PPMERGE.OUTPUT.MASK          OUTPUT {OUTPUT}.{CHIP.NAME}.fits         MASK            DET_MASK   CHIP       TRUE      NONE
+PPMERGE.OUTPUT.BIAS          OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.DARK          OUTPUT {OUTPUT}.{CHIP.NAME}.fits         DARK            NONE       CHIP       TRUE      NONE
+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
+PPMERGE.OUTPUT.COUNT         OUTPUT {OUTPUT}.{CHIP.NAME}.count.fits   IMAGE           NONE       CELL       TRUE      NONE
+                                                                                                              
+DVOCORR.OUTPUT               OUTPUT {OUTPUT}.{CHIP.NAME}.fc.fits      IMAGE           NONE       CHIP       TRUE      NONE
+DVOFLAT.OUTPUT               OUTPUT {OUTPUT}.{CHIP.NAME}.co.fits      IMAGE           NONE       CHIP       TRUE      NONE
+                                                                                                              
+PSPHOT.RESID                 OUTPUT {OUTPUT}.{CHIP.NAME}.res.fits     IMAGE           COMP_SUB   CHIP       TRUE      NONE
+PSPHOT.BACKGND               OUTPUT {OUTPUT}.{CHIP.NAME}.bck.fits     IMAGE           COMP_IMG   CHIP       TRUE      NONE
+PSPHOT.BACKSUB               OUTPUT {OUTPUT}.{CHIP.NAME}.sub.fits     IMAGE           COMP_SUB   CHIP       TRUE      NONE
+PSPHOT.BACKMDL               OUTPUT {OUTPUT}.{CHIP.NAME}.mdl.fits     IMAGE           NONE       CHIP       TRUE      NONE
+PSPHOT.BACKMDL.STDEV         OUTPUT {OUTPUT}.{CHIP.NAME}.mdl.std.fits  IMAGE           NONE       CHIP       TRUE      NONE
+PSPHOT.BACKMDL.MEF           OUTPUT {OUTPUT}.mdl.fits                 IMAGE           NONE       CHIP       TRUE      NONE
+                                                                                                              
+PSPHOT.OUTPUT.RAW            OUTPUT {OUTPUT}.{CHIP.NAME}              RAW             NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.SX             OUTPUT {OUTPUT}.{CHIP.NAME}.sx           SX              NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.OBJ            OUTPUT {OUTPUT}.{CHIP.NAME}.obj          OBJ             NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.CMP            OUTPUT {OUTPUT}.{CHIP.NAME}.cmp          CMP             NONE       CHIP       TRUE      NONE
+PSPHOT.OUT.CMF.SPL           OUTPUT {OUTPUT}.{CHIP.NAME}.cmf          CMF             NONE       CHIP       TRUE      NONE
+PSPHOT.OUT.CMF.MEF           OUTPUT {OUTPUT}.cmf                      CMF             NONE       FPA        TRUE      MEF
+PSPHOT.OUTPUT.CFF            OUTPUT {OUTPUT}.cff                      CFF             NONE       CHIP       TRUE      NONE
+PSPHOT.PSF.RAW.SAVE          OUTPUT {OUTPUT}.{CHIP.NAME}.psf          PSF             NONE       CHIP       TRUE      MEF
+PSPHOT.PSF.SKY.SAVE          OUTPUT {OUTPUT}.psf                      PSF             NONE       FPA        TRUE      MEF
+
+#psvideophot
+PSVIDEOPHOT.OUTPUT           OUTPUT {OUTPUT}.vpt                      OBJ             NONE       CELL       TRUE      NONE
+
+# used by staticsky with single input
+PSPHOT.SKY.CONFIG       OUTPUT {OUTPUT}.psphot.mdc               TEXT      NONE       FPA        TRUE      NONE
+                                                                                                              
+# outputs for psphotStack:
+PSPHOT.CHISQ.IMAGE           OUTPUT {OUTPUT}.chisq.im.fits            IMAGE           NONE       FPA        TRUE      NONE
+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}.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.PSF.SAVE        OUTPUT {OUTPUT}.stk.{FILE.ID}.psf        PSF             NONE       FPA        TRUE      NONE
+PSPHOT.STACK.BACKMDL         OUTPUT {OUTPUT}.stk.{FILE.ID}.mdl.fits   IMAGE           NONE       FPA        TRUE      NONE
+
+PSPHOT.STACK.BACKMDL.STDEV   OUTPUT {OUTPUT}.stk.{FILE.ID}.mdl.sdv.fits IMAGE         NONE       FPA        TRUE      NONE
+PSPHOT.STACK.BACKGND         OUTPUT {OUTPUT}.stk.{FILE.ID}.bck.fits   IMAGE           COMP_IMG   FPA        TRUE      NONE
+PSPHOT.STACK.BACKSUB         OUTPUT {OUTPUT}.stk.{FILE.ID}.sub.fits   IMAGE           COMP_SUB   FPA        TRUE      NONE
+PSPHOT.STACK.RESID           OUTPUT {OUTPUT}.stk.{FILE.ID}.res.fits   IMAGE           COMP_SUB   FPA        TRUE      NONE
+PSPHOT.STACK.CONFIG          OUTPUT {OUTPUT}.psphotStack.mdc          TEXT            NONE       FPA        TRUE      NONE
+
+PSPHOT.FULLFORCE.OUTPUT      OUTPUT {OUTPUT}.cmf                      CMF             NONE       FPA        TRUE      NONE
+                                                     
+SOURCE.PLOT.RAW.MOMENTS      OUTPUT {OUTPUT}.{CHIP.NAME}.mnt.png      KAPA            NONE       CHIP       TRUE      NONE
+SOURCE.PLOT.RAW.PSFMODEL     OUTPUT {OUTPUT}.{CHIP.NAME}.psf.png      KAPA            NONE       CHIP       TRUE      NONE
+SOURCE.PLOT.RAW.APRESID      OUTPUT {OUTPUT}.{CHIP.NAME}.dap.png      KAPA            NONE       CHIP       TRUE      NONE
+                                                                                                              
+SOURCE.PLOT.SKY.MOMENTS      OUTPUT {OUTPUT}.mnt.png                  KAPA            NONE       CHIP       TRUE      NONE
+SOURCE.PLOT.SKY.PSFMODEL     OUTPUT {OUTPUT}.psf.png                  KAPA            NONE       CHIP       TRUE      NONE
+SOURCE.PLOT.SKY.APRESID      OUTPUT {OUTPUT}.dap.png                  KAPA            NONE       CHIP       TRUE      NONE
+
+# PSASTRO.OUTPUT.CMP         OUTPUT {OUTPUT}.{CHIP.NAME}.smp          CMP             NONE       CHIP       TRUE      NONE
+# PSASTRO.OUT.CMF.SPL        OUTPUT {OUTPUT}.{CHIP.NAME}.smf          CMF             NONE       CHIP       TRUE      NONE
+PSASTRO.OUT.MODEL            OUTPUT {OUTPUT}.asm                      ASTROM.MODEL    NONE       FPA        TRUE      NONE
+PSASTRO.OUT.REFSTARS         OUTPUT {OUTPUT}.aref.fits                ASTROM.REFSTARS NONE       FPA        TRUE      NONE
+PSASTRO.OUT.CMF.MEF          OUTPUT {OUTPUT}.smf                      CMF             NONE       FPA        TRUE      MEF
+PSASTRO.OUTPUT.CMF           OUTPUT {OUTPUT}.cmf                      CMF             NONE       FPA        TRUE      NONE
+PSASTRO.STATS                OUTPUT {OUTPUT}.stats                    STATS           NONE       FPA        TRUE      NONE
+PSASTRO.CONFIG               OUTPUT {OUTPUT}.psastro.mdc              TEXT            NONE       FPA        TRUE      NONE
+PSASTRO.OUTPUT.MASK          OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK            COMP_MASK  CHIP       TRUE      NONE
+
+PSASTRO.OUT.ORIGINAL.CMF.MEF OUTPUT {OUTPUT}.smf.original             CMF             NONE       FPA        TRUE      MEF
+                                                                                                              
+FPCAMERA.OUT.CMF.MEF         OUTPUT {OUTPUT}.cmf                      CMF             NONE       CHIP       TRUE      MEF
+FPCAMERA.RESID               OUTPUT {OUTPUT}.{CHIP.NAME}.res.fits     IMAGE           COMP_SUB   CHIP       TRUE      NONE
+FPCAMERA.STATS               OUTPUT {OUTPUT}.stats                    STATS           NONE       FPA        TRUE      NONE
+FPCAMERA.CONFIG              OUTPUT {OUTPUT}.mdc                      TEXT            NONE       FPA        TRUE      NONE
+
+# XXX need to use CHIP for tc3 tests, but why?
+#PSWARP.OUTPUT                OUTPUT {OUTPUT}.fits                     IMAGE           COMP_IMG   CHIP       TRUE      NONE
+#PSWARP.OUTPUT.MASK           OUTPUT {OUTPUT}.mask.fits                MASK            COMP_MASK  CHIP       TRUE      NONE
+#PSWARP.OUTPUT.VARIANCE       OUTPUT {OUTPUT}.wt.fits                  VARIANCE        COMP_WT    CHIP       TRUE      NONE
+PSWARP.OUTPUT                OUTPUT {OUTPUT}.fits                     IMAGE           COMP_IMG   FPA        TRUE      NONE
+PSWARP.OUTPUT.MASK           OUTPUT {OUTPUT}.mask.fits                MASK            COMP_MASK  FPA        TRUE      NONE
+PSWARP.OUTPUT.VARIANCE       OUTPUT {OUTPUT}.wt.fits                  VARIANCE        COMP_WT    FPA        TRUE      NONE
+PSWARP.OUTPUT.SOURCES        OUTPUT {OUTPUT}.cmf                      CMF             NONE       FPA        TRUE      NONE
+PSWARP.BIN1                  OUTPUT {OUTPUT}.b1.fits                  IMAGE           NONE       FPA        TRUE      NONE
+PSWARP.BIN2                  OUTPUT {OUTPUT}.b2.fits                  IMAGE           NONE       FPA        TRUE      NONE
+PSWARP.CONFIG                OUTPUT {OUTPUT}.pswarp.mdc               TEXT            NONE       FPA        TRUE      NONE
+PSWARP.OUTPUT.UNCOMPRESSED   OUTPUT {OUTPUT}.fits		      IMAGE	      NONE	 FPA	    TRUE      NONE
+PSWARP.OUTPUT.BKGMODEL	     OUTPUT {OUTPUT}.mdl.fits		      IMAGE	      NONE	 FPA	    TRUE      NONE
+                                                                                                   
+SKYCELL.STATS                OUTPUT {OUTPUT}.stats                    STATS           NONE       FPA        TRUE      NONE
+SKYCELL.STATS.UPDATE         OUTPUT {OUTPUT}.stats.update             STATS           NONE       FPA        TRUE      NONE
+SKYCELL.TEMPLATE             OUTPUT {OUTPUT}.skycell                  SKYCELL         NONE       FPA        TRUE      NONE
+                                                                                                              
+PPSUB.OUTPUT                 OUTPUT {OUTPUT}.fits                     IMAGE           COMP_SUB   FPA        TRUE      NONE
+PPSUB.OUTPUT.MASK            OUTPUT {OUTPUT}.mask.fits                MASK            COMP_MASK  FPA        TRUE      NONE
+PPSUB.OUTPUT.VARIANCE        OUTPUT {OUTPUT}.wt.fits                  VARIANCE        COMP_WT    FPA        TRUE      NONE
+PPSUB.OUTPUT.SOURCES         OUTPUT {OUTPUT}.cmf                      CMF             NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.KERNELS         OUTPUT {OUTPUT}.subkernel                SUBKERNEL       NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG1           OUTPUT {OUTPUT}.b1.jpg                   JPEG            NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG2           OUTPUT {OUTPUT}.b2.jpg                   JPEG            NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.RESID.JPEG      OUTPUT {OUTPUT}.res.jpg                  JPEG            NONE       FPA        TRUE      NONE
+PPSUB.INVERSE                OUTPUT {OUTPUT}.inv.fits                 IMAGE           COMP_SUB   FPA        TRUE      NONE
+PPSUB.INVERSE.MASK           OUTPUT {OUTPUT}.inv.mask.fits            MASK            COMP_MASK  FPA        TRUE      NONE
+PPSUB.INVERSE.VARIANCE       OUTPUT {OUTPUT}.inv.wt.fits              VARIANCE        COMP_WT    FPA        TRUE      NONE
+PPSUB.INVERSE.SOURCES        OUTPUT {OUTPUT}.inv.cmf                  CMF             NONE       FPA        TRUE      NONE
+PPSUB.CONFIG                 OUTPUT {OUTPUT}.ppSub.mdc                TEXT            NONE       FPA        TRUE      NONE
+PPSUB.INPUT.CONV             OUTPUT {OUTPUT}.inConv.fits              IMAGE           COMP_IMG   FPA        FALSE      NONE
+PPSUB.INPUT.CONV.MASK        OUTPUT {OUTPUT}.inConv.mk.fits           MASK            COMP_MASK  FPA        FALSE      NONE
+PPSUB.INPUT.CONV.VARIANCE    OUTPUT {OUTPUT}.inConv.wt.fits           VARIANCE        COMP_WT    FPA        FALSE      NONE
+PPSUB.REF.CONV               OUTPUT {OUTPUT}.refConv.fits             IMAGE           COMP_IMG   FPA        FALSE      NONE
+PPSUB.REF.CONV.MASK          OUTPUT {OUTPUT}.refConv.mk.fits          MASK            COMP_MASK  FPA        FALSE      NONE
+PPSUB.REF.CONV.VARIANCE      OUTPUT {OUTPUT}.refConv.wt.fits          VARIANCE        COMP_WT    FPA        FALSE      NONE
+                                                                                                      
+PPSUB.FORCED1.SOURCES        OUTPUT {OUTPUT}.frc1.cmf                 CMF             NONE       FPA        TRUE      NONE
+PPSUB.FORCED2.SOURCES        OUTPUT {OUTPUT}.frc2.cmf                 CMF             NONE       FPA        TRUE      NONE
+PPSUB.POS1.SOURCES           OUTPUT {OUTPUT}.pos1.cmf                 CMF             NONE       FPA        TRUE      NONE
+PPSUB.POS2.SOURCES           OUTPUT {OUTPUT}.pos2.cmf                 CMF             NONE       FPA        TRUE      NONE
+
+PPSTACK.OUTPUT.COMP          OUTPUT {OUTPUT}.fits                     IMAGE           COMP_IMG   FPA        TRUE      NONE
+PPSTACK.OUTPUT.NOCOMP        OUTPUT {OUTPUT}.fits                     IMAGE           NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.MASK.COMP     OUTPUT {OUTPUT}.mask.fits                MASK            COMP_MASK  FPA        TRUE      NONE
+PPSTACK.OUTPUT.MASK.NOCCOMP  OUTPUT {OUTPUT}.mask.fits                MASK            NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.VARIANCE.COMP OUTPUT {OUTPUT}.wt.fits                  VARIANCE        COMP_WT    FPA        TRUE      NONE
+PPSTACK.OUTPUT.VARIANCE.NOCOMP OUTPUT {OUTPUT}.wt.fits                VARIANCE        NONE       FPA        TRUE      NONE
+
+PPSTACK.OUTPUT.EXP           OUTPUT {OUTPUT}.exp.fits                 IMAGE           EXP        FPA        TRUE      NONE
+PPSTACK.OUTPUT.EXP.NOCOMP    OUTPUT {OUTPUT}.exp.fits                 IMAGE           NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.EXPNUM        OUTPUT {OUTPUT}.num.fits                 MASK            EXPNUM     FPA        TRUE      NONE
+PPSTACK.OUTPUT.EXPWT.COMP    OUTPUT {OUTPUT}.expwt.fits               VARIANCE        EXP        FPA        TRUE      NONE
+PPSTACK.OUTPUT.EXPWT.NOCOMP  OUTPUT {OUTPUT}.expwt.fits               VARIANCE        NONE       FPA        TRUE      NONE
+PPSTACK.UNCONV.COMP          OUTPUT {OUTPUT}.unconv.fits              IMAGE           COMP_IMG   FPA        TRUE      NONE
+PPSTACK.UNCONV.NOCOMP        OUTPUT {OUTPUT}.unconv.fits              IMAGE           NONE       FPA        TRUE      NONE
+PPSTACK.UNCONV.MASK.COMP     OUTPUT {OUTPUT}.unconv.mask.fits         MASK            COMP_MASK  FPA        TRUE      NONE
+PPSTACK.UNCONV.MASK.NOCOMP   OUTPUT {OUTPUT}.unconv.mask.fits         MASK            NONE       FPA        TRUE      NONE
+PPSTACK.UNCONV.VARIANCE.COMP OUTPUT {OUTPUT}.unconv.wt.fits           VARIANCE        COMP_WT    FPA        TRUE      NONE
+PPSTACK.UNCONV.VARIANCE.NOCOMP OUTPUT {OUTPUT}.unconv.wt.fits         VARIANCE        NONE       FPA        TRUE      NONE
+PPSTACK.UNCONV.EXP           OUTPUT {OUTPUT}.unconv.exp.fits          IMAGE           EXP        FPA        TRUE      NONE
+PPSTACK.UNCONV.EXP.NOCOMP    OUTPUT {OUTPUT}.unconv.exp.fits          IMAGE           NONE        FPA        TRUE      NONE
+PPSTACK.UNCONV.EXPNUM        OUTPUT {OUTPUT}.unconv.num.fits          MASK            EXPNUM     FPA        TRUE      NONE
+PPSTACK.UNCONV.EXPWT.COMP    OUTPUT {OUTPUT}.unconv.expwt.fits        VARIANCE        EXP        FPA        TRUE      NONE
+PPSTACK.UNCONV.EXPWT.NOCOMP  OUTPUT {OUTPUT}.unconv.expwt.fits        VARIANCE        NONE       FPA        TRUE      NONE
+PPSTACK.TARGET.PSF           OUTPUT {OUTPUT}.target.psf               PSF             NONE       CHIP       TRUE      NONE
+PPSTACK.CONV.KERNEL          OUTPUT {OUTPUT}.{FILE.INDEX}.kernel      SUBKERNEL       NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG1         OUTPUT {OUTPUT}.b1.jpg                   JPEG            NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG2         OUTPUT {OUTPUT}.b2.jpg                   JPEG            NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.BKGMODEL      OUTPUT {OUTPUT}.mdl.fits		      IMAGE	      NONE	 FPA	    TRUE      NONE
+PPSTACK.OUTPUT.BKGREST       OUTPUT {OUTPUT}.bkgrest.fits	      IMAGE	      NONE	 FPA	    TRUE      NONE
+PPSTACK.CONFIG               OUTPUT {OUTPUT}.ppStack.mdc              TEXT            NONE       FPA        TRUE      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.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.VARIANCE.NOCOMP OUTPUT {OUTPUT}.wt.fits                VARIANCE        NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.JPEG          OUTPUT {OUTPUT}.jpg                      JPEG            NONE       FPA        TRUE      NONE
+PPSTAMP.OUTPUT.SOURCES       OUTPUT {OUTPUT}.cmf                      CMF             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
+                                                                                                              
+PPSIM.OUTPUT                 OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      SPLIT
+PPSIM.FAKE.CHIP              OUTPUT {OUTPUT}.{CHIP.NAME}.fake.fits    IMAGE           NONE       CHIP       TRUE      NONE
+PPSIM.FORCE.CHIP             OUTPUT {OUTPUT}.{CHIP.NAME}.force.fits   IMAGE           NONE       CHIP       TRUE      NONE
+PPSIM.SOURCES                OUTPUT {OUTPUT}.{CHIP.NAME}.cmf          CMF             NONE       CHIP       TRUE      NONE
+PPSIM.FAKE.SOURCES           OUTPUT {OUTPUT}.{CHIP.NAME}.fake.cmf     CMF             NONE       CHIP       TRUE      NONE
+PPSIM.FORCE.SOURCES          OUTPUT {OUTPUT}.{CHIP.NAME}.force.cmf    CMF             NONE       CHIP       TRUE      NONE
+
+PPARITH.OUTPUT.IMAGE         OUTPUT {OUTPUT}.fits                     IMAGE           COMP_IMG   CHIP       TRUE      NONE
+PPARITH.OUTPUT.MASK          OUTPUT {OUTPUT}.fits                     MASK            COMP_MASK  CHIP       TRUE      NONE
+                                                                                                        
+PPSKYCELL.JPEG1              OUTPUT {OUTPUT}.0.b1.jpeg     JPEG            NONE       CHIP       TRUE      NONE
+PPSKYCELL.JPEG2              OUTPUT {OUTPUT}.0.b2.jpeg     JPEG            NONE       CHIP       TRUE      NONE
+PPSKYCELL.BIN1    	     OUTPUT {OUTPUT}.b1.fits     IMAGE     NONE       FPA        TRUE      NONE
+PPSKYCELL.BIN2    	     OUTPUT {OUTPUT}.b2.fits     IMAGE     NONE       FPA       TRUE      NONE
+PPSKYCELL.BIN1.MASK    	     OUTPUT {OUTPUT}.b1.mk.fits     MASK     COMP_MASK       FPA        TRUE      NONE
+PPSKYCELL.BIN2.MASK    	     OUTPUT {OUTPUT}.b2.mk.fits     MASK     COMP_MASK       FPA       TRUE      NONE
+
+LOG.IMFILE                   OUTPUT {OUTPUT}.{CHIP.NAME}.log          TEXT            NONE       CHIP       TRUE      NONE
+LOG.EXP                      OUTPUT {OUTPUT}.log                      TEXT            NONE       FPA        TRUE      NONE
+LOG.IMFILE.UPDATE            OUTPUT {OUTPUT}.{CHIP.NAME}.log.update   TEXT            NONE       CHIP       TRUE      NONE
+LOG.EXP.UPDATE               OUTPUT {OUTPUT}.log.update               TEXT            NONE       FPA        TRUE      NONE
+                                                                                                              
+TRACE.IMFILE                 OUTPUT {OUTPUT}.{CHIP.NAME}.trace        TEXT            NONE       CHIP       TRUE      NONE
+TRACE.EXP                    OUTPUT {OUTPUT}.trace                    TEXT            NONE       FPA        TRUE      NONE
+TRACE.IMFILE.UPDATE          OUTPUT {OUTPUT}.{CHIP.NAME}.trace.update TEXT            NONE       CHIP       TRUE      NONE
+TRACE.EXP.UPDATE             OUTPUT {OUTPUT}.trace.update             TEXT            NONE       FPA        TRUE      NONE
+
+DBINFO.IMFILE                OUTPUT {OUTPUT}.{CHIP.NAME}.dbinfo       TEXT            NONE       CHIP       TRUE      NONE
+DBINFO.EXP                   OUTPUT {OUTPUT}.dbinfo                   TEXT            NONE       CHIP       TRUE      NONE
+
+PPNOISEMAP.OUTPUT            OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+
+CENSOR.OUTPUT                OUTPUT {OUTPUT}.smf                      CMF             NONE       FPA        TRUE      MEF
+
+MAGIC.ORIGINAL.PNG           OUTPUT {OUTPUT}.original.png             JPEG            NONE       FPA        TRUE      NONE
+MAGIC.RESIDUAL.PNG           OUTPUT {OUTPUT}.residual.png             JPEG            NONE       FPA        TRUE      NONE
+MAGIC.MASK.PNG               OUTPUT {OUTPUT}.mask.png                 JPEG            NONE       FPA        TRUE      NONE
+MAGIC.DUPLICATE.PNG          OUTPUT {OUTPUT}.duplicate.png            JPEG            NONE       FPA        TRUE      NONE
+
+# TYPE                         OUTPUT FILENAME.RULE                     FILE.TYPE       FITS.TYPE  DATA.LEVEL FILE.SAVE FILE.FORMAT
+DIST.OUTPUT.CHIP.BUNDLE      OUTPUT {OUTPUT}.{CHIP.NAME}.tgz          TEXT            NONE       CHIP       TRUE      NONE
+DIST.OUTPUT.BUNDLE           OUTPUT {OUTPUT}.tgz                      TEXT            NONE       FPA        TRUE      NONE
+DIST.OUTPUT.DBINFO           OUTPUT {OUTPUT}.mdc                      TEXT            NONE       FPA        TRUE      NONE
+DIST.OUTPUT.DIRINFO          OUTPUT {OUTPUT}.mdc                      TEXT            NONE       FPA        TRUE      NONE
+
+PPSMOOTH.OUTPUT              OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      MEF
+PPSMOOTH.OUTPUT.MASK         OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK            NONE       CHIP       TRUE      MEF
+PPSMOOTH.OUTPUT.VARIANCE     OUTPUT {OUTPUT}.{CHIP.NAME}.wt.fits      VARIANCE        NONE       CHIP       TRUE      MEF
+
+PPBGRESTORE.OUTPUT           OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPBGRESTORE.BACKGROUND       OUTPUT {OUTPUT}.{CHIP.NAME}.bg.fits      IMAGE           NONE       CHIP       FALSE     NONE
+
+PPVIZPSF.OUTPUT              OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPVIZPATTERN.OUTPUT          OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPVIZPATTERN.CHIP            OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE           NONE       CHIP       TRUE      NONE
+
+PPBACKGROUND.OUTPUT	     OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE           NONE       CHIP       TRUE      NONE
+PPBACKGROUND.OUTPUT.MASK     OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK            COMP_MASK  CHIP       TRUE      NONE
+PPBACKGROUND.OUTPUT.VARIANCE OUTPUT {OUTPUT}.{CHIP.NAME}.wt.fits      VARIANCE        COMP_WT    CHIP       TRUE      NONE
+PPBACKGROUND.CONFIG          OUTPUT {OUTPUT}.{CHIP.NAME}.ppBackground.mdc TEXT        NONE       CHIP       TRUE      NONE
+PPBACKGROUND.STATS           OUTPUT {OUTPUT}.{CHIP.NAME}.stats        STATS           NONE       CHIP       TRUE      NONE
+
+PPBACKGROUND.STACK.OUTPUT    OUTPUT {OUTPUT}.bkgrest.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.STACK.MODEL     OUTPUT {OUTPUT}.bkgmdl.fits        IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPBACKGROUND.OTA.SOLUTION    OUTPUT {OUTPUT}.{CHIP.NAME}.OTAS.fits IMAGE  COMP_IMG   CHIP       TRUE      NONE
+
+
+# FILERULE naming operators:
+# {FPA.OBS}
+# {FPA.NAME}
+# {CHIP.NAME}
+# {CHIP.ID}
+# {CHIP.N}
+# {CHIP.NUM}
+# {CELL.NAME}
+# {CELL.N}
+# {CELL.NUM}
+# {EXTNAME}
+# {FILTER}
+# {FILTER.ID}
+# {CAMERA}
+# {INSTRUMENT}
+# {DETECTOR}
+# {TELESCOPE}
Index: /branches/eam_branches/ippconfig.20240412/recipes/fitstypes.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/fitstypes.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/fitstypes.mdc	(revision 42661)
@@ -0,0 +1,206 @@
+
+# BITPIX is the bits per pixel for writing the output data
+# COMP = NONE|RICE|GZIP|HCOMPRESS|PLIO is the compression algorithm
+# TILE.[XYZ] are the tile sizes.  0 means entire the dimension, so (0,1,1) forms tiles from rows
+# NOISE [0..16] is the number of "noise bits" to preserve when quantising floating point data; 16 for no loss
+# HSCALE is the scale factor for lossy compression with HCOMPRESS; 0 or 1 for none; 2*RMS --> 10x compression
+# HSMOOTH is the smoothing to apply to HCOMPRESSed data when decompressing; 0 for none
+
+# BITPIX(S32) is the bits per pixel for writing the output data
+# COMPRESSION(STR) = NONE|RICE|GZIP|HCOMPRESS|PLIO is the compression algorithm
+# TILE.[XYZ](S32) are the tile sizes.  0 means entire the dimension, so (0,1,1) forms tiles from rows
+# NOISE(S32) [0..16] is the number of "noise bits" to preserve when quantising floating point data
+# HSCALE(S32) is the scale factor for lossy compression with HCOMPRESS; 0 or 1 for none; 2*RMS --> 10x compression
+# HSMOOTH(S32) is the smoothing to apply to HCOMPRESSed data when decompressing; 0 for none
+# SCALING(STR) = NONE|RANGE|STDEV_POSITIVE|STDEV_NEGATIVE|STDEV_BOTH|MANUAL is the scaling scheme
+# BSCALE(F32) is the manual scaling to apply (when SCALING = MANUAL)
+# BZERO(F32) is the manual zero-point to apply (when SCALING = MANUAL)
+# STDEV.BITS(S32) is the number of bits to map to a standard deviation (when SCALING = STDEV_*)
+# STDEV.NUM(F32) is the number of standard deviations to the edge (when SCALING = STDEV_NEGATIVE|STDEV_POSITIVE)
+# FLOAT(STR) is the name of a custom floating-point type
+
+# Compressed detrend
+COMP_FLAT	METADATA
+	BITPIX		S32	16
+	SCALING		STR	MANUAL
+	BSCALE		F32	1.0
+	BZERO		F32	32768.0
+	COMPRESSION	STR	RICE
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+
+DET_IMAGE	METADATA
+	BITPIX		S32	-32
+END
+DET_MASK	METADATA
+	BITPIX		S32	16
+END
+DET_WEIGHT	METADATA
+	BITPIX		S32	-32
+END
+
+SKY_IMAGE	METADATA
+	BITPIX		S32	-32
+END
+SKY_MASK	METADATA
+	BITPIX		S32	16
+END
+SKY_WEIGHT	METADATA
+	BITPIX		S32	-32
+END
+
+# Uncompressed positive image
+RAW_IMG	METADATA
+#	BITPIX		S32	-32
+	BITPIX		S32	16
+	SCALING		STR	MANUAL
+	BSCALE		F32	1.0
+	BZERO		F32	32768.0
+	STDEV.BITS	S32	4
+	STDEV.NUM	F32	10
+	COMPRESSION	STR	NONE
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+
+# Compressed positive image
+COMP_IMG	METADATA
+	BITPIX		S32	16
+	SCALING		STR	STDEV_POSITIVE
+	STDEV.BITS	S32	4
+	STDEV.NUM	F32	10
+	COMPRESSION	STR	RICE
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+
+# Compressed mask
+COMP_MASK	METADATA
+	BITPIX		S32	16
+	COMPRESSION	STR	GZIP
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+# Compressed weight image
+COMP_WT		METADATA
+	BITPIX		S32	16
+	SCALING		STR	STDEV_POSITIVE
+	STDEV.BITS	S32	4
+	STDEV.NUM	F32	10
+	COMPRESSION	STR	RICE
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+# Compressed subtraction image
+COMP_SUB	METADATA
+	BITPIX		S32	16
+	SCALING		STR	STDEV_BOTH
+	STDEV.BITS	S32	4
+	STDEV.NUM	F32	5
+	COMPRESSION	STR	RICE
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+# Compressed log flux image for stacks.
+COMP_STACK     METADATA
+        BITPIX          S32     16
+        SCALING         STR     ASINH_RANGE
+#	 SCALING        STR      LOG_RANGE
+#        STDEV.BITS      S32     4
+#        STDEV.NUM       F32     100
+	COMPRESSION     STR     RICE
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+
+# Compressed exposure image
+# NOTE: only allows exposure times up to 6553.6 seconds
+# (too small for UNIONS and other deep stacks)
+EXP	METADATA
+	BITPIX		S32	16
+	SCALING		STR	MANUAL
+	FUZZ		BOOL	FALSE
+	# Note: TRUE = BZERO + BSCALE * DISK
+	BSCALE		F32	0.1	# Disk is stored as 1/10th sec
+	BZERO		F32	3276.8	# Store unsigned zero as zero
+	# switch to NONE to work around ticket 1411
+	#COMPRESSION	STR	NONE
+	COMPRESSION	STR	GZIP
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+
+# Deep Compressed log flux image for stacks.
+# allows real images values up to 10^8 DN
+STK_UNIONS_RAW     METADATA
+	BITPIX		S32	-32
+	SCALING		STR	MANUAL
+	BSCALE		F32	1.0
+	BZERO		F32	0.0
+	COMPRESSION	STR	NONE
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+
+STK_UNIONS_COMP     METADATA
+        BITPIX          S32     16
+        SCALING         STR     ASINH_MANUAL
+	BSCALE		F32	0.00061	# 2^15 ~ 100M DN
+	BZERO		F32	0.0	# symmetric about 0.0 DN
+	BOFFSET		F32	0.0	# symmetric about 0.0 DN
+	BSOFTEN		F32	1.0	# bend the curve at 1 DN
+	COMPRESSION     STR     RICE
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+
+# Deep compressed exposure image
+# NOTE: only allows exposure times up to 65536 seconds
+# (OK for UNIONS but not MD deep stacks)
+EXP_UNIONS METADATA
+	BITPIX		S32	16
+	SCALING		STR	MANUAL
+	FUZZ		BOOL	FALSE
+	# Note: TRUE = BZERO + BSCALE * DISK
+	BSCALE		F32	1	# Disk is stored as 1/10th sec
+	BZERO		F32	32768	# Store unsigned zero as zero
+	# switch to NONE to work around ticket 1411
+	#COMPRESSION	STR	NONE
+	COMPRESSION	STR	GZIP
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+
+# Compressed number image
+EXPNUM	METADATA
+	BITPIX		S32	16
+	COMPRESSION	STR	GZIP
+	TILE.X		S32	0
+	TILE.Y		S32	1
+	TILE.Z		S32	1
+	NOISE		S32	8
+END
+
Index: /branches/eam_branches/ippconfig.20240412/recipes/fpcamera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/fpcamera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/fpcamera.config	(revision 42661)
@@ -0,0 +1,19 @@
+
+FPCAMERA.TEST  F32  1.0
+
+# nominal plate scale (units / pixel)
+# NOTE: we are using pixels here because of the limited dynamic range for 
+# NAXIS1,2 when loaded by addstar.  
+FPCAMERA.PIXEL.SCALE  F32  1.0
+
+# extra field for ref stars:
+FPCAMERA.FIELD.PADDING  F32     0.25   # pad by this fraction of the full mosaic (may need to be larger for single chips)
+
+# path or name (in site:FPCAMERA.CATDIRS) to catdir
+FPCAMERA.CATDIR               STR     PS1.REF.20170919
+
+DVO.GETSTAR                   STR      getstar
+DVO.GETSTAR.OUTFORMAT         STR      PS1_DEV_0
+
+DEFAULT_RECIPE METADATA
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/gDiff.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/gDiff.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/gDiff.config	(revision 42661)
@@ -0,0 +1,383 @@
+### Recipe file for gDiff
+
+KERNEL.TYPE	STR	ISIS     	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+KERNEL.SIZE     S32	20		# Kernel half-size (pixels)
+SPATIAL.ORDER   S32	1		# Spatial polynomial order
+REGION.SIZE	F32	0		# Iso-kernel region size (pixels)
+SOURCE.RADIUS	F32	3.0		# Source matching radius (pixels)
+STAMP.SPACING   F32	200		# Typical spacing between stamps (pixels)
+STAMP.FOOTPRINT S32	20		# Size of stamps (pixels)
+STAMP.THRESHOLD F32	5		# Flux threshold for stamps (stdev above background)
+STRIDE		S32	128		# Size of convolution patches (pixels)
+ITER            S32	2		# Number of rejection iterations
+REJ             F32	2.5		# Rejection level (std dev)
+KERNEL.ERR	F32	0.05		# Relative systematic error in kernel
+SYS.ERR		F32	0.1		# Relative systematic error in images
+SKY.ERR		F32	0.0		# Relative systematic error in images
+NORM.FRAC	F32	0.02		# Fraction of window for normalisation window
+COVAR.FRAC	F32	0.01		# Fraction of kernel to truncate before calculating covariance
+APPLY.PIXELNAN	BOOL	TRUE		# Apply NAN'ing of pixels underneath masks
+
+MASK.VAL	STR	MASK.VALUE,CONV.BAD	# Mask value for input
+MASK.BAD        STR	CONV.BAD	# Mask value to give bad pixels
+MASK.POOR       STR	CONV.POOR	# Mask value to give poor pixels
+MASK.BLANK      STR	BLANK           # Mask value to give empty pixels
+
+MASK.STATS         BOOL    TRUE            # calculate mask statistics.
+MASKSTAT.STATIC     U32 0x01f
+MASKSTAT.DYNAMIC    U32 0x060
+MASKSTAT.MAGIC      U32 0x800
+MASKSTAT.ADVISORY   U32 0x080
+
+INPUT.MATCH.RADIUS F32  50.0
+INPUT.MATCH.MIN.SN F32  10.0
+
+ADD.NOT.SUBTRACT BOOL   FALSE           # add the images instead of subtracting (ie, image + ref, not image - ref)
+
+LOW.THRESHOLD	F32	20.0	        # Mask pixels below this threshold (std dev)
+POOR.FRACTION	F32	0.20		# Maximum fraction of bad weight for poor pixels
+BADFRAC		F32	0.95		# Maximum fraction of bad pixels
+
+# photpipe kernels
+@ISIS.WIDTHS	F32	1.5  3.0  6.0   # Gaussian kernel FWHM values
+@ISIS.ORDERS	S32	6    4    2     # Polynomial orders for ISIS kernels
+
+#@ISIS.WIDTHS	F32	2.4  5.0  10.0  # Gaussian kernel FWHM values
+#@ISIS.ORDERS	S32	6    4    2     # Polynomial orders for ISIS kernels
+
+# for autoscaling, the above kernel widths are multiplied by the factor max(FWHM_1,FWHM_2) / SCALE.REF
+SCALE		BOOL	TRUE		# Scale kernel parameters by the seeing?
+SCALE.REF	F32     5.0		# FWHM reference for kernel parameter scaling
+SCALE.MIN	F32	0.5		# Minimum scale value
+SCALE.MAX	F32	2.0		# Maximum scale value
+
+SPAM.BINNING	S32	2		# Binning in outer region for SPAM kernels
+INNER		S32	5		# Inner half-size for SPAM and FRIES kernels
+RINGS.ORDER	S32	2		# Polynomial order for RINGS kernels
+PENALTY		F32	1.0		# 4.0e-6 for the updated code from 2010.09.19
+BIN1		S32	16		# Binning factor for first level
+BIN2		S32	16		# Binning factor for second level
+
+OPTIMUM		BOOL	FALSE		# Derive optimum parameters for ISIS and GUNK kernels
+OPTIMUM.MIN	F32	1.0		# Minimum width for optimum FWHM search
+OPTIMUM.MAX	F32	11.0		# Maximum width for optimum FWHM search
+OPTIMUM.STEP	F32	1.0		# Step in width for optimum FWHM search
+OPTIMUM.TOL	F32	3.0e-3		# Maximum difference in chi^2 between iterations to settle for
+OPTIMUM.ORDER	S32	2		# Maximum polynomial order for optimum search
+
+RENORM		BOOL	TRUE		# Renormalise weight maps?
+RENORM.NUM	S32	100000		# Number of samples for renormalisation
+RENORM.MIN	F32	0.2		# Minimum value for renormalization
+RENORM.MAX	F32	5.0		# Maximum value for renormalization
+
+INTERPOLATION	STR	LANCZOS3	# Interpolation mode for bad pixels
+
+DUAL		BOOL	FALSE		# Dual convolution?
+CONVOLVE.TARGET STR     SINGLE1		# convolution direction
+INVERSE		BOOL	FALSE		# Generate inverse subtraction?
+PHOTOMETRY	BOOL	FALSE		# Perform photometry?
+NOCONVOLVE      BOOL    FALSE           # Skip convolution?
+CHIP.MAP.FROM.POSITIVE BOOL FALSE       # use the warp for the chipmap, not subtrahend
+
+FORCED.PHOTOMETRY.BOTH BOOL FALSE       # forced photometry on input sources?
+FORCED.PHOTOMETRY.INPUT1 BOOL FALSE       # forced photometry on input sources?
+FORCED.PHOTOMETRY.INPUT2 BOOL FALSE       # forced photometry on input sources?
+
+# Recipe overrides for STACK
+STACK	METADATA
+	SYS.ERR         F32     0.0      # current use of SYS.ERR not appropriate for stacks
+END
+
+STACK_1DG METADATA
+	SYS.ERR		F32	0.0	 # current use of SYS.ERR not appropriate for stacks
+	KERNEL.TYPE	STR	SIMPLE	 # Use 1D Gaussian convolution.
+END	
+
+# Recipe overrides for DIFF
+DIFF	METADATA
+	DUAL		BOOL	TRUE	# Dual convolution?
+	INVERSE		BOOL	TRUE	# Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+
+	# penalty of 1.0
+	# DUAL convolution is more sensitive to the number of kernels
+	# do not provide as many orders as for SINGLE
+        # @ISIS.WIDTHS	F32	2.4  5.0  10.0  # Gaussian kernel FWHM values
+	@ISIS.WIDTHS	F32	1.5  3.0  6.0   # Gaussian kernel FWHM values
+	# @ISIS.WIDTHS	F32	2.0  3.0  5.0   # Gaussian kernel FWHM values
+        # @ISIS.WIDTHS	F32	2.1  4.2  8.4   # Gaussian kernel FWHM values
+	@ISIS.ORDERS	S32	2    2    2     # Polynomial orders for ISIS kernels
+
+	SCALE.REF	F32     5.0		# FWHM reference for kernel parameter scaling
+	KERNEL.SIZE     S32	15		# Kernel half-size (pixels)
+	STAMP.FOOTPRINT S32	15		# Size of stamps (pixels)
+
+        PENALTY         F32     0.01             # adjust to limit excessive conv for ut20181219
+END
+
+DIFF_1DG  METADATA
+	  KERNEL.TYPE	STR	SIMPLE	# Use 1D Gaussian Convolution
+	  DUAL		BOOL	TRUE    # Dual convolution?
+	  INVERSE	BOOL	TRUE	# Generate inverse subtraction?
+	  PHOTOMETRY	BOOL	TRUE	# Perform photometry
+
+	  # This is not really used with the SIMPLE kernel
+	  SCALE.REF	F32	5.0 	# FWHM reference for kernel parameter scalinng
+	  KERNEL.SIZE	S32	15	# Kernel half-size (pixels);
+	  STAMP.FOOTPRINT S32	15	# Size of stamps (pixels);
+END
+
+# test setup for nodual case
+DIFF_NODUAL    METADATA   
+        DUAL             BOOL    FALSE    # Dual convolution?
+        INVERSE          BOOL    TRUE    # Generate inverse subtraction?
+        PHOTOMETRY       BOOL    TRUE    # Perform photometry?
+        CONVOLVE.TARGET  STR     SINGLE_AUTO
+
+        @ISIS.WIDTHS    F32     1.5  3.0  6.0   # Gaussian kernel FWHM values
+        @ISIS.ORDERS    S32     6    4    2     # Polynomial orders for ISIS kernels
+
+        SCALE.REF       F32     5.0             # FWHM reference for kernel parameter scaling
+        KERNEL.SIZE     S32     20              # Kernel half-size (pixels)
+        STAMP.FOOTPRINT S32     20              # Size of stamps (pixels)
+END
+
+# Difference of two warps
+WARPWARP	METADATA
+	DUAL		BOOL	TRUE	# Dual convolution?
+	INVERSE		BOOL	TRUE	# Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+
+	# penalty of 1.0
+	# DUAL convolution is more sensitive to the number of kernels
+	# do not provide as many orders as for SINGLE
+        # @ISIS.WIDTHS	F32	2.4  5.0  10.0  # Gaussian kernel FWHM values
+	@ISIS.WIDTHS	F32	1.5  3.0  6.0   # Gaussian kernel FWHM values
+	# @ISIS.WIDTHS	F32	2.0  3.0  5.0   # Gaussian kernel FWHM values
+        # @ISIS.WIDTHS	F32	2.1  4.2  8.4   # Gaussian kernel FWHM values
+	@ISIS.ORDERS	S32	2    2    2     # Polynomial orders for ISIS kernels
+
+	SCALE.REF	F32     5.0		# FWHM reference for kernel parameter scaling
+	KERNEL.SIZE     S32	15		# Kernel half-size (pixels)
+	STAMP.FOOTPRINT S32	15		# Size of stamps (pixels)
+END
+
+WARPWARP_1DG	METADATA
+	  KERNEL.TYPE	STR	SIMPLE	# Use 1D Gaussian Convolution
+	  DUAL		BOOL	TRUE    # Dual convolution?
+	  INVERSE	BOOL	TRUE	# Generate inverse subtraction?
+	  PHOTOMETRY	BOOL	TRUE	# Perform photometry
+
+	  # This is not really used with the SIMPLE kernel
+	  SCALE.REF	F32	5.0 	# FWHM reference for kernel parameter scalinng
+	  KERNEL.SIZE	S32	15	# Kernel half-size (pixels);
+	  STAMP.FOOTPRINT S32	15	# Size of stamps (pixels);
+END
+
+
+
+# Difference of warp - stack
+WARPSTACK	METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+# WSdiff for PV3 to do inverse phot
+WARPSTACK_PV3       METADATA
+        DUAL                   BOOL    FALSE   # Dual convolution?
+        INVERSE                BOOL    TRUE    # Generate inverse subtraction?
+        PHOTOMETRY             BOOL    TRUE    # Perform photometry?
+        CONVOLVE.TARGET        STR     SINGLE2 # convolution direction
+	CHIP.MAP.FROM.POSITIVE BOOL    FALSE   # always use the warp for the chipmap, not subtrahend
+END
+
+WARPSTACK_1DG	METADATA
+	KERNEL.TYPE	STR	SIMPLE
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+# Difference of two stacks : uses SINGLE not DUAL convolution
+STACKSTACK	METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+STACKSTACK_1DG  METADATA
+	KERNEL.TYPE	STR	SIMPLE
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+STACKSTACK_CONV1      METADATA
+        DUAL            BOOL    FALSE   # Dual convolution?
+        INVERSE         BOOL    FALSE   # Generate inverse subtraction?
+        PHOTOMETRY      BOOL    TRUE    # Perform photometry?
+        CONVOLVE.TARGET STR     SINGLE1 # convolution direction
+END
+
+# Difference of two stacks : uses SINGLE not DUAL convolution
+STACKPHOT	METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+STACKPHOT_1DG	METADATA
+	KERNEL.TYPE	STR	SIMPLE
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+# Difference of warp - stack
+WARPSTACK_FORCED     METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+ FORCED.PHOTOMETRY.BOTH BOOL    TRUE    # forced photometry on input sources
+END
+
+# Difference of warp - quickstack
+WARPQSTACK	METADATA
+	DUAL		BOOL	TRUE	# Dual convolution?
+	INVERSE		BOOL	FALSE	# Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+
+	# penalty of 1.0
+	# DUAL convolution is more sensitive to the number of kernels
+	# do not provide as many orders as for SINGLE
+        # @ISIS.WIDTHS	F32	2.4  5.0  10.0  # Gaussian kernel FWHM values
+	@ISIS.WIDTHS	F32	1.5  3.0  6.0   # Gaussian kernel FWHM values
+	# @ISIS.WIDTHS	F32	2.0  3.0  5.0   # Gaussian kernel FWHM values
+        # @ISIS.WIDTHS	F32	2.1  4.2  8.4   # Gaussian kernel FWHM values
+	@ISIS.ORDERS	S32	2    2    2     # Polynomial orders for ISIS kernels
+
+	SCALE.REF	F32     5.0		# FWHM reference for kernel parameter scaling
+	KERNEL.SIZE     S32	15		# Kernel half-size (pixels)
+	STAMP.FOOTPRINT S32	15		# Size of stamps (pixels)
+END
+
+# Do no convolution
+UNCONVOLVED	METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	NOCONVOLVE      BOOL    TRUE
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+# Difference of warp - junkstack
+WARPJSTACK      METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE1	# convolution direction
+END
+
+
+#PR image class
+PR		METADATA
+	PHOTOMETRY	BOOL	FALSE
+END
+
+# Recipe overrides for DIFF
+DIFF.SINGLE1	METADATA
+  DUAL  	  BOOL    FALSE		# Dual convolution?
+  CONVOLVE.TARGET STR     SINGLE1		# convolution direction
+END
+
+# Recipe overrides for DIFF
+DIFF.SINGLE2	METADATA
+  DUAL  	  BOOL    FALSE		# Dual convolution?
+  CONVOLVE.TARGET STR     SINGLE2		# convolution direction
+END
+
+# Recipe overrides for DIFF
+DIFF_MAGICTEST_V0	METADATA
+	SPATIAL.ORDER   S32	0		# Spatial polynomial order
+END
+
+TEST.ISIS METADATA
+  KERNEL.TYPE	STR	ISIS_RADIAL	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  @ISIS.WIDTHS	F32	2.9 4.8 8.2     # Gaussian FWHMs for ISIS kernels
+  @ISIS.ORDERS	S32	4   2   2       # Polynomial orders for ISIS kernels
+END
+
+TEST.RADIAL METADATA
+END
+
+TEST.HERM METADATA
+END
+
+TEST.DECON METADATA
+END
+
+SSTF_DIFF METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	NOCONVOLVE      BOOL    TRUE
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+SSTF_DIFF_1DG METADATA 
+	KERNEL.TYPE     STR	SIMPLE
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	NOCONVOLVE      BOOL    TRUE
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+	      
+
+# Gene's choice: multiplying by 1.75
+#@ISIS.WIDTHS	F32	1.8 3.3 5.8 10.2 17.9	# Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	2 2 2 2 2		# Polynomial orders for ISIS kernels
+# (pi/2)^i
+#@ISIS.WIDTHS	F32	1.6 2.5 3.9 6.1 9.6 15.0	# Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	2 2 2 2 2 2		# Polynomial orders for ISIS kernels
+# (e/2)^i for even i
+#@ISIS.WIDTHS	F32	1.4 3.4 6.3 11.6	# Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	6 4 4 2		# Polynomial orders for ISIS kernels
+# 1.69^i
+#@ISIS.WIDTHS	F32	2.9 4.8 8.2 13.8 23.3 # Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	4 2 2 2 2	# Polynomial orders for ISIS kernels
+
+# Paul's values
+# @ISIS.WIDTHS	F32	2.9 4.8 8.2 13.8 # Gaussian FWHMs for ISIS kernels
+# @ISIS.ORDERS	S32	4 2 2 2		# Polynomial orders for ISIS kernels
+
+# Armin's values
+#@ISIS.WIDTHS	F32	1.5 3.0 6.0 12.0   # Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	6   4   2   2      # Polynomial orders for ISIS kernels
+
+# test
+#@ISIS.WIDTHS	F32	4.0  6.0 9.0     # Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	6    4   2       # Polynomial orders for ISIS kernels
+
+#@ISIS.WIDTHS	F32	1.8  3.2  5.7   # Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	2    4    2     # Polynomial orders for ISIS kernels
+
+# @ISIS.WIDTHS	F32	2.33 5.00  9.90   # hotpants values for test 01 - 00: 
+# @ISIS.WIDTHS	F32	2.47 5.29 10.86   # hotpants values for test 02 - 00: 
+# @ISIS.WIDTHS	F32	2.47 5.29 11.75   # hotpants values for test 03 - 00: 
+# @ISIS.WIDTHS	F32	2.47 5.29 13.54   # hotpants values for test 04 - 00: 
+# @ISIS.WIDTHS	F32	2.12 4.51 9.05    # hotpants values for test 07 - 00: 
+# @ISIS.ORDERS	S32	6    4    2       # Polynomial orders for ISIS kernels
+
+# @ISIS.WIDTHS	F32	1.90 4.07 8.11 16.22 # hotpants values for test 05 - 00: 
+# @ISIS.WIDTHS	F32	2.11 4.51 9.02 18.05 # hotpants values for test 06 - 00: 
+# @ISIS.ORDERS	S32	6    4    2    2    # Polynomial orders for ISIS kernels
+
Index: /branches/eam_branches/ippconfig.20240412/recipes/jpeg.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/jpeg.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/jpeg.mdc	(revision 42661)
@@ -0,0 +1,329 @@
+# This recipe file is used in a slightly different fashion from the others
+# The different programs define an output JPEG file (or files) for the binned
+# images with names based on the program and the binning level.
+
+# ppImage : PPIMAGE.JPEG1 & PPIMAGE.JPEG2
+# ppSub   : PPSUB.OUTPUT.JPEG1 & PPSUB.OUTPUT.JPEG2 & PPSUB.OUTPUT.RESID.JPEG
+# ppStack : PPSTACK.OUTPUT.JPEG1 & PPSTACK.OUTPUT.JPEG2
+# ppstamp : PPSTAMP.OUTPUT.JPEG
+
+# these names are the used to select the recipe metadata blocks below
+
+# alternate recipes can be defined by nesting those metadata blocks inside
+# additional named blocks, like the BIAS example below
+
+# JPEG options for files
+# Each METADATA entry should contain:
+# * COLORMAP: Name of colormap [grayscale,-grayscale,rainbow,heat]
+# * SCALE.MODE: Mode for scaling [RANGE,FRACTION,VALUE]
+# * SCALE.MIN: Minimum for scaling
+# * SCALE.MAX: Maximum for scaling
+# * OPTIONS: comma-separated list : -SB,+SB,+X,+Y,-X,-Y
+
+# to define the grayscale values, the image robust MEAN and STDEV are calculated
+# (if those cannot be calculated, a simple MEAN and STDEV are used)
+
+# the different SCALE.MODE values define the min and max colorscale values as:
+# RANGE    : MEAN - 2*STDEV*SCALE.MIN to MEAN + 2*STDEV*SCALE.MAX
+# FRACTION : MEAN*SCALE.MIN           to MEAN*SCALE.MAX
+# VALUE    : SCALE.MIN                to SCALE.MAX
+
+# COLORMAP values can be: greyscale, grayscale, -greyscale, -grayscale, heat, rainbow, 
+
+PPIMAGE.JPEG1  	        METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32	 -5.0
+	SCALE.MAX	F32	+10.0
+	OPTIONS		STR	+SB,-X,+Y
+END
+
+PPIMAGE.JPEG2	METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32	 -5.0
+	SCALE.MAX	F32	+10.0
+	OPTIONS		STR	-SB,-X,+Y
+END
+
+ALTCOLORS		METADATA
+    PPIMAGE.JPEG1           METADATA
+            COLORMAP        STR     rainbow
+            SCALE.MODE      STR     RANGE
+            SCALE.MIN       F32      -5.0
+            SCALE.MAX       F32     +10.0
+            OPTIONS         STR     +SB,-X,+Y
+    END
+    
+    PPIMAGE.JPEG2   METADATA
+            COLORMAP        STR     rainbow
+            SCALE.MODE      STR     RANGE
+            SCALE.MIN       F32      -5.0
+            SCALE.MAX       F32     +10.0
+            OPTIONS         STR     -SB,-X,+Y
+    END
+END
+
+PPIMAGE.JPEG1.HEAT	METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	FRACTION
+	SCALE.MIN	F32	0.5
+	SCALE.MAX	F32	1.5
+	OPTIONS		STR	+SB,+X,+Y
+END
+
+PPSUB.OUTPUT.JPEG1	METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32	 -8.0
+	SCALE.MAX	F32	 +8.0
+	OPTIONS		STR	+SB,-X,+Y
+END
+
+PPSUB.OUTPUT.JPEG2	METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32	 -8.0
+	SCALE.MAX	F32	 +8.0
+	OPTIONS		STR	-SB,-X,+Y
+END
+
+PPSUB.OUTPUT.RESID.JPEG	METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32	 -8.0
+	SCALE.MAX	F32	 +8.0
+	OPTIONS		STR	+SB,-X,+Y
+END
+
+PPSTACK.OUTPUT.JPEG1	METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32 	 -5.0
+	SCALE.MAX	F32	+10.0
+	OPTIONS		STR	+SB,-X,+Y
+END
+
+PPSTACK.OUTPUT.JPEG2	METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32 	 -5.0
+	SCALE.MAX	F32	+10.0
+	OPTIONS		STR	-SB,-X,+Y
+END
+
+BIAS	METADATA
+	PPIMAGE.JPEG1	 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	RANGE
+		SCALE.MIN	F32	-5.0
+		SCALE.MAX	F32	+5.0
+		OPTIONS		STR	+SB,-X,+Y
+	END
+
+	PPIMAGE.JPEG2	 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	RANGE
+		SCALE.MIN	F32	-5.0
+		SCALE.MAX	F32	+5.0
+		OPTIONS		STR	-SB,-X,+Y
+	END
+END
+
+
+FLAT	METADATA
+	PPIMAGE.JPEG1	 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	RANGE
+		SCALE.MIN	F32	-5.0
+		SCALE.MAX	F32	+5.0
+		OPTIONS		STR	+SB,-X,+Y
+	END
+
+	PPIMAGE.JPEG2	 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	RANGE
+		SCALE.MIN	F32	-5.0
+		SCALE.MAX	F32	+5.0
+		OPTIONS		STR	-SB,-X,+Y
+	END
+END
+
+
+FRINGE	METADATA
+	PPIMAGE.JPEG1	 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	RANGE
+		SCALE.MIN	F32	-2.0
+		SCALE.MAX	F32	+3.0
+		OPTIONS		STR	+SB,-X,+Y
+	END
+
+	PPIMAGE.JPEG2	 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	RANGE
+		SCALE.MIN	F32	-2.0
+		SCALE.MAX	F32	+3.0
+		OPTIONS		STR	-SB,-X,+Y
+	END
+END
+
+
+MASK	METADATA
+	PPIMAGE.JPEG1		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	FRACTION
+		SCALE.MIN	F32	0.90
+		SCALE.MAX	F32	1.10
+		OPTIONS		STR	+SB,-X,+Y
+	END
+
+	PPIMAGE.JPEG2		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	FRACTION
+		SCALE.MIN	F32	0.95
+		SCALE.MAX	F32	1.05
+		OPTIONS		STR	-SB,-X,+Y
+	END
+END
+
+BIAS_RESID	METADATA
+	PPIMAGE.JPEG1		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	VALUE
+		SCALE.MIN	F32	-5.0
+		SCALE.MAX	F32	+5.0
+		OPTIONS		STR	+SB,-X,+Y
+	END
+
+	PPIMAGE.JPEG2		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	VALUE
+		SCALE.MIN	F32	-5.0
+		SCALE.MAX	F32	+5.0
+		OPTIONS		STR	-SB,-X,+Y
+	END
+END
+
+FLAT_RESID	METADATA
+	PPIMAGE.JPEG1		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	FRACTION
+		SCALE.MIN	F32	0.99
+		SCALE.MAX	F32	1.01
+		OPTIONS		STR	+SB,-X,+Y
+	END
+
+	PPIMAGE.JPEG2		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	FRACTION
+		SCALE.MIN	F32	0.99
+		SCALE.MAX	F32	1.01
+		OPTIONS		STR	-SB,-X,+Y
+	END
+END
+
+
+FRINGE_RESID	METADATA
+	PPIMAGE.JPEG1		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	RANGE
+		SCALE.MIN	F32	-2.0
+		SCALE.MAX	F32	+3.0
+		OPTIONS		STR	+SB,-X,+Y
+	END
+
+	PPIMAGE.JPEG2		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	RANGE
+		SCALE.MIN	F32	-2.0
+		SCALE.MAX	F32	+3.0
+		OPTIONS		STR	-SB,-X,+Y
+	END
+END
+
+MASK_RESID	METADATA
+	PPIMAGE.JPEG1		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	FRACTION
+		SCALE.MIN	F32	0.95
+		SCALE.MAX	F32	1.05
+		OPTIONS		STR	+SB,-X,+Y
+	END
+
+	PPIMAGE.JPEG2		 METADATA
+		COLORMAP	STR	-greyscale
+		SCALE.MODE	STR	FRACTION
+		SCALE.MIN	F32	0.95
+		SCALE.MAX	F32	1.05
+		OPTIONS		STR	-SB,-X,+Y
+	END
+END
+
+CTEMAP	METADATA
+	PPIMAGE.JPEG1		 METADATA
+		COLORMAP	STR	rainbow
+		SCALE.MODE	STR	VALUE
+		SCALE.MIN	F32	0.0
+		SCALE.MAX	F32	5.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	5.0
+		OPTIONS		STR	-SB,-X,+Y
+	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
+
+
+PPSKYCELL.JPEG1		METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32	 -8.0
+	SCALE.MAX	F32	 +8.0
+	OPTIONS		STR	+SB,+X,+Y
+END
+
+PPSKYCELL.JPEG2		METADATA
+	COLORMAP	STR	-greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32	 -8.0
+	SCALE.MAX	F32	 +8.0
+	OPTIONS		STR	-SB,+X,+Y
+END
+
+PPSTAMP.OUTPUT.JPEG  	        METADATA
+	COLORMAP	STR	greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32	 -5.0
+	SCALE.MAX	F32	+10.0
+	OPTIONS		STR	-SB,+X,+Y
+END
+
+PPSTAMP.OUTPUT.JPEG.FLIP        METADATA
+	COLORMAP	STR	greyscale
+	SCALE.MODE	STR	RANGE
+	SCALE.MIN	F32	 -5.0
+	SCALE.MAX	F32	+10.0
+	OPTIONS		STR	-SB,-X,+Y
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/masks.16bit.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/masks.16bit.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/masks.16bit.config	(revision 42661)
@@ -0,0 +1,35 @@
+### Recipe specifying values for various mask concepts
+
+# This file defines bit values for various abstract mask concepts.  It
+# is not necessary for all bit values to be unique.
+
+# Note that it is necessary to leave at least a single unassigned bit
+# for internal marking (or ppImage will complain)
+
+# Mask values which represent features of the detector
+DETECTOR	U16	0x0001		# Something is wrong with the detector
+FLAT		U16	0x0002		# Pixel doesn't flat-field properly
+DARK		U16	0x0004		# Pixel doesn't dark-subtract properly
+BLANK		U16	0x0008		# Pixel doesn't contain valid data
+CTE		U16	0x0010		# Pixel has poor Charge Transfer Efficiency
+
+# Mask values which represent invalid signal ranges
+SAT		U16	0x0020		# Pixel is saturated or non-linear
+LOW		U16	0x0040		# Pixel is low
+SUSPECT		U16	0x0080		# Pixel is suspected of being bad
+
+# Mask values which represent non-astronomical structures
+BURNTOOL        U16     0x0080          # Pixel may contain uncorrected streak.
+CR		U16	0x0100		# Pixel contains a cosmic ray
+SPIKE		U16	0x0200		# Pixel contains a diffraction spike
+GHOST		U16	0x0400		# Pixel contains an optical ghost
+STREAK		U16	0x0800		# Pixel contains a streak
+CROSSTALK	U16	0x0800		# Pixel contains electronic crosstalk
+STARCORE	U16	0x1000		# Pixel contains a bright star core
+
+# Mask values which identify pixels badly affected by convolutions and interpolations
+CONV.BAD	U16	0x2000		# Pixel is bad after convolution with a bad pixel
+CONV.POOR	U16	0x4000		# Pixel is poor after convolution with a bad pixel
+
+# Spare value for temporary marking
+# MARK		U16	0x8000		# Pixel is temporarily marked
Index: /branches/eam_branches/ippconfig.20240412/recipes/masks.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/masks.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/masks.config	(revision 42661)
@@ -0,0 +1,55 @@
+### Recipe specifying values for various mask concepts
+
+# This file defines bit values for various abstract mask concepts.  It
+# is not necessary for all bit values to be unique.
+
+# Note that it is necessary to leave at least a single unassigned bit
+# for internal marking (or ppImage will complain)
+
+
+# The following values are TEMPORARY, to be used only until we can get
+# the masking situation sorted out (PAP, 2008-09-09)
+# The following values are constrained by the fact that the GPC1 mask values are set:
+DETECTOR	U8	0x02		# Something is wrong with the detector =2
+FLAT		U8	0x04		# Pixel doesn't flat-field properly =4
+DARK		U8	0x40		# Pixel doesn't dark-subtract properly =64
+CTE		U8	0x40		# Pixel has poor cte
+
+# Filling in the rest with whatever makes some sense
+BLANK		U8	0x01		# Pixel doesn't contain valid data
+RANGE		U8	0x01		# Pixel is out-of-range of linearity
+SAT		U8	0x01		# Pixel is saturated
+BAD		U8	0x01		# Pixel is low
+POOR.WARP	U8	0x08		# Pixel is poor after convolution with a bad pixel
+BAD.WARP	U8	0x10		# Pixel is bad after convolution with a bad pixel
+CR		U8	0x20		# Pixel contains a cosmic ray
+GHOST		U8	0x20		# Pixel contains an optical ghost
+STREAK		U16	0x20		# Pixel contains a streak
+CROSSTALK	U16	0x20		# Pixel contains electronic crosstalk
+
+SPIKE		U8	0x20		# Pixel contains a diffraction spike
+STARCORE	U8	0x20		# Pixel contains a streak
+
+###### The following values are what I'm aiming to have in the long term (PAP, 2008-09-09)
+###
+#### Detector-intrinsic; these will default to DETECTOR
+###DETECTOR	U8	0x01		# Something is wrong with the detector
+###DARK		U8	0x01		# Pixel doesn't dark-subtract properly
+###FLAT		U8	0x01		# Pixel doesn't flat-field properly
+###BLANK	U8	0x01		# Pixel doesn't contain valid data
+###
+#### Detector-extrinsic; these will default to RANGE
+###RANGE	U8	0x02		# Pixel is out-of-range of linearity
+###SAT		U8	0x02		# Pixel is saturated
+###LOW		U8	0x02		# Pixel is low
+###
+#### Convolution: pixels that touched a bad pixel
+###POOR		U8	0x04		# Pixel is poor after convolution with a bad pixel
+###CONV		U8	0x08		# Pixel is bad after convolution with a bad pixel
+###
+#### Objects: real signal that should be ignored
+###CR		U8	0x10		# Pixel contains a cosmic ray
+###GHOST	U8	0x20		# Pixel contains an optical ghost
+###STREAK	U8	0x40		# Pixel contains a streak
+###
+####MARK	U8	0x80		# RESERVED for MARK
Index: /branches/eam_branches/ippconfig.20240412/recipes/nightly_science.config.template
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/nightly_science.config.template	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/nightly_science.config.template	(revision 42661)
@@ -0,0 +1,27 @@
+
+CLEAN_MODES MULTI
+CLEAN_MODES METADATA
+END
+
+END_OF_NIGHT MULTI
+END_OF_NIGHT METADATA
+END
+
+FILTERS MULTI
+FILTERS STR NONE
+
+UNRECOVERABLE_QUALITY MULTI
+UNRECOVERABLE_QUALITY S16 0
+
+MACRO_DEFINITIONS MULTI
+MACRO_DEFINITIONS METADATA
+END
+
+TARGETS MULTI
+TARGETS METADATA
+END
+
+## # Detrend verification data
+DETRENDS MULTI
+DETRENDS METADATA
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppBackground.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppBackground.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppBackground.mdc	(revision 42661)
@@ -0,0 +1,19 @@
+# Recipe options for ppBackground
+
+BINNING_RECIPE	STR	PSPHOT
+BINNING_XNAME	STR	BACKGROUND.XBIN
+BINNING_YNAME	STR	BACKGROUND.YBIN
+
+DEFAULT    METADATA
+END
+
+
+STACK	    METADATA
+  BINNING_RECIPE	STR	PSWARP
+  BINNING_XNAME	STR	BKG.XGRID	
+  BINNING_YNAME	STR	BKG.YGRID
+END
+	    
+
+BACKGROUND	 METADATA
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppImage.config	(revision 42661)
@@ -0,0 +1,2803 @@
+### ppImage recipe configuration file
+### Here we have turned on our 'best guess' defaults for a simple camera
+### Camera-specific options may be turned on by recipes in the camera configuration
+
+# List of tasks to perform
+OVERSCAN           BOOL    TRUE            # Overscan subtraction
+NONLIN             BOOL    FALSE           # Non-linearity correction; not implemented
+NEWNONLIN          BOOL    FALSE           # Non-linearity correction (v2023)
+NOISEMAP           BOOL    FALSE           # Apply read noise map
+BIAS               BOOL    TRUE            # 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    FALSE           # Mask bad pixels
+MASK.BUILD         BOOL    FALSE           # Build internal mask image
+MASK.SATURATED     BOOL    TRUE            # Mask the saturated pixels
+MASK.LOW           BOOL    TRUE            # Mask pixels below valid range
+MASK.BURNTOOL      BOOL    FALSE           # Mask potential burntool trails
+MASK.AUXMASK       BOOL    FALSE           # augment mask with auxillary mask
+AUX.VIDEO.MASK     STR     NULL            # name of aditional masking for video cells
+APPLY.BURNTOOL     BOOL    FALSE           # apply burntool coorection
+APPLY.PIXELZERO    BOOL    FALSE           # apply zero'ing of pixels underneath masks
+DETECT.CTE         BOOL    FALSE           # perform object detections in the CTE regions
+VARIANCE.BUILD     BOOL    FALSE           # Build internal variance image
+ADDNOISE           BOOL    FALSE           # Add noise to degrade an MD image to a 3pi image?
+PATTERN.ROW        BOOL    FALSE           # Row pattern correction (see options below)
+PATTERN.CELL       BOOL    FALSE           # Cell pattern correction (see options below)
+PATTERN.CONTINUITY BOOL    FALSE           # continuity corrections (see options below)
+PATTERN.DEAD.CELLS BOOL    FALSE           # continuity corrections (see options below)
+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?
+BACKGROUND         BOOL    FALSE           # Subtract model background?
+CHECK.CTE          BOOL    FALSE           # measure CTE errors?
+CHECK.NOISE        BOOL    FALSE         
+SQUASH.NANS        BOOL    FALSE         
+USE.DEBURNED.IMAGE BOOL    FALSE           # use burntool-repaired image?
+USE.BEST.BURNTOOL  BOOL    FALSE           # require the best burntooled data
+TILTYSTREAK.APPLY  BOOL    FALSE           # apply the 'tiltystreak' tool
+MASK.STATS         BOOL    FALSE           # calculate mask statistics.
+GAIN.OVERRIDE		BOOL	TRUE		# Override a non-finite gain?
+BACKGROUND.CONTINUITY BOOL FALSE           # Apply continuity correction to background models for an FPA.
+TILTYSTREAK.BY.CLASS METADATA              # apply the 'tiltystreak' tool
+END
+NO.COMPRESS        BOOL     FALSE
+
+# output data formats to save
+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    FALSE           # Save chip-mosaic-ed image? 
+CHIP.VARIANCE.FITS BOOL    FALSE           # Save chip-mosaic-ed image? 
+FPA1.FITS          BOOL    FALSE           # Save 1st binned fpa image? 
+FPA2.FITS          BOOL    FALSE           # Save 2nd binned fpa image? 
+BIN1.FITS          BOOL    FALSE           # Save 1st binned chip image?
+BIN2.FITS          BOOL    FALSE           # Save 2nd binned chip image?
+BIN1.JPEG          BOOL    FALSE           # Save 1st binned jpeg?
+BIN2.JPEG          BOOL    FALSE           # Save 2nd binned jpeg?
+
+# crosstalk measurements : only valid for GPC1 for now
+CROSSTALK.MEASURE  BOOL    FALSE           # Subtract model background?
+CROSSTALK.CORRECT  BOOL    FALSE           # Subtract model background?
+
+# apply the cell parity flips to the cells?
+APPLY.CELL.PARITY  BOOL    FALSE
+
+## if we use multithreaded detrending, detrend this number of rows per thread
+SCAN.ROWS        S32     100
+
+# Which regions identified by burntool to mask. 0x01 : only unfit trails, 0x02 "up" trails, 0x04 "down" trails
+BURNTOOL.TRAILS     U16 0x07
+
+MASKSTAT.STATIC     U32 0x01f
+MASKSTAT.DYNAMIC    U32 0x060
+MASKSTAT.MAGIC      U32 0x800
+MASKSTAT.ADVISORY   U32 0x080
+
+# Non-linearity correction
+NONLIN.SOURCE           STR     CHIP.NAME       # How to determine the source
+NONLIN.DATA             STR     nonlin.dat      # Filename for lookup table
+
+# Normalization class
+NORM.CLASS              STR     FPA             # How to find the per-class normalizations
+
+OLDDARK		BOOL	FALSE		# Use old-style darks?
+
+# examples of other possible non-linearity correction representations
+#@NONLIN.DATA           F32     0.0 1.001 0.001 # A polynomial
+#NONLIN.DATA            METADATA                # Source of non-linearity data
+#       ccd00           STR     nonlin00.dat    # A lookup table 
+#       @ccd01          F32     0.0 1.001 0.001 # A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE         BOOL    TRUE            # Reduce overscan to a single value?
+OVERSCAN.FIT            STR     NONE            # NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER          S32     5               # Order of polynomial fit
+OVERSCAN.STAT           STR     MEAN            # MEAN | MEDIAN
+OVERSCAN.BOXCAR		S32	0		# Boxcar smoothing radius
+OVERSCAN.GAUSS		F32	0.0		# Gaussian smoothing sigma
+OVERSCAN.CONSTANT	BOOL	FALSE		# Apply a known, fixed value?
+OVERSCAN.VALUE	        F32	0.0		# value to apply, if requested
+OVERSCAN.MIN.VALID      F32	0.0		# minimum valid overscan value 
+OVERSCAN.MAX.VALID      F32	65536.0		# maximum valid overscan value 
+
+# Pattern Row subtraction options
+PATTERN.ROW.ORDER      S32     2               # Polynomial order for row pattern
+PATTERN.ROW.ITER       S32     3               # Rejection iterations for row pattern
+PATTERN.ROW.REJ        F32     2.5             # Rejection threshold for row pattern
+PATTERN.ROW.THRESH     F32     3.0             # Ignore threshold for row pattern
+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.ROW.USE.BINNED BOOL    TRUE	       # pre-bin along the row before calculating (NOT yet respected r41656)
+PATTERN.ROW.POISSON    BOOL    TRUE	       # use Poisson stats on the sky to set threshold (NOT yet respected r41656)
+
+PATTERN.ROW.SUBSET     METADATA		       # Menu of chips and/or cells for row pattern correction
+END
+
+# NOTE: PATTERN.ROW.SUBSET is defined in the format_DATE.config files because
+# in different periods, the camera had different amounts of row-by-row bias drift
+# for a given cell.  It is necessary to make the choice of whether to correct the 
+# pattern based on the epoch the exposure was taken.
+
+# NOTE: if PATTERN.ROW.SUBSET entries are missing for a given chip, the default 
+# behavior is to NOT correct for the effect. (This makes sense since most camera
+# are not GPC1 and thus do not need the correction).
+
+# Pattern Cell options
+PATTERN.CELL.BG	       STR     FITTED_MEAN     # Statistic for background for cell pattern
+PATTERN.CELL.MEAN      STR     SAMPLE_MEDIAN   # Statistic for mean for cell pattern
+PATTERN.CELL.SUBSET    METADATA  	       # Menu of chips and/or cells for cell pattern correction
+END
+
+# Pattern Continuity options
+PATTERN.CONTINUITY.WIDTH S32  50
+PATTERN.CONTINUITY.SUBSET METADATA	   # Menu of chips and/or cells for cell pattern continuity correction
+END
+
+# r41656 : this does not appear to be used any more: superceded by PATTERN.ROW, .CELL, .CONTINUITY
+PATTERN.SUBSET	   METADATA
+END
+
+# Fringe subtraction options
+FRINGE.ITER     S32     10              # Number of rejection iterations for fringe solution
+FRINGE.REJ      F32     2.0             # Rejection threshold for fringe solution
+FRINGE.KEEP     F32     0.5             # Minimum fraction to keep in fringe solution
+
+# Remnance detection options
+REMNANCE.SIZE		S32	30		# Size for remnance detection
+REMNANCE.THRESH		F32	2.0		# Threshold for remnance detection
+
+# binned output image options
+BIN1.XBIN               S32      4
+BIN1.YBIN               S32      4
+BIN2.XBIN               S32     16
+BIN2.YBIN               S32     16
+
+CTE.XBIN                S32     20
+CTE.YBIN                S32     20
+
+NOISE.XBIN		S32     20
+NOISE.YBIN		S32	20
+
+PPIMAGE.JPEG1  METADATA
+  COLORMAP      STR     -greyscale
+  SCALE.MODE    STR     RANGE
+  SCALE.MIN     F32      -5.0
+  SCALE.MAX     F32     +10.0
+END
+
+PPIMAGE.JPEG2  METADATA
+  COLORMAP      STR     -greyscale
+  SCALE.MODE    STR     RANGE
+  SCALE.MIN     STR      -5.0
+  SCALE.MAX     STR     +10.0
+END
+
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS  STR UNDEF
+
+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
+END
+
+# Detrend database options
+
+DETREND.LOCATIONS METADATA
+  XY01    STR   stsci00.0
+  XY02    STR   stsci00.1
+  XY03    STR   stsci00.2
+  XY04    STR   stsci01.0
+  XY05    STR   stsci01.1
+  XY06    STR   stsci01.2
+
+  XY10    STR   stsci02.0
+  XY11    STR   stsci02.1
+  XY12    STR   stsci02.2
+  XY13    STR   stsci03.0
+  XY14    STR   stsci03.1
+  XY15    STR   stsci03.2
+  XY16    STR   stsci04.0
+  XY17    STR   stsci04.1
+
+  XY20    STR   stsci04.2
+  XY21    STR   stsci05.0
+  XY22    STR   stsci05.1
+  XY23    STR   stsci05.2
+  XY24    STR   stsci06.0
+  XY25    STR   stsci06.1
+  XY26    STR   stsci06.2
+  XY27    STR   stsci07.0
+
+  XY30    STR   stsci07.1
+  XY31    STR   stsci07.2
+  XY32    STR   stsci08.0
+  XY33    STR   stsci08.1
+  XY34    STR   stsci08.2
+  XY35    STR   stsci09.0
+  XY36    STR   stsci09.1
+  XY37    STR   stsci09.2
+
+  XY40    STR   stsci10.0
+  XY41    STR   stsci10.1
+  XY42    STR   stsci10.2
+  XY43    STR   stsci11.0
+  XY44    STR   stsci11.1
+  XY45    STR   stsci11.2
+  XY46    STR   stsci12.0
+  XY47    STR   stsci12.1
+
+  XY50    STR   stsci12.2
+  XY51    STR   stsci13.0
+  XY52    STR   stsci13.1
+  XY53    STR   stsci13.2
+  XY54    STR   stsci14.0
+  XY55    STR   stsci14.1
+  XY56    STR   stsci14.2
+  XY57    STR   stsci15.0
+
+  XY60    STR   stsci15.1
+  XY61    STR   stsci15.2
+  XY62    STR   stsci16.0
+  XY63    STR   stsci16.1
+  XY64    STR   stsci16.2
+  XY65    STR   stsci17.0
+  XY66    STR   stsci17.1
+  XY67    STR   stsci17.2
+
+  XY71    STR   stsci18.2
+  XY72    STR   stsci18.0
+  XY73    STR   stsci18.1
+  XY74    STR   stsci19.2
+  XY75    STR   stsci19.0
+  XY76    STR   stsci19.1
+END
+
+################################################################################
+# Diffferent processing options, which may be loaded symbolically
+################################################################################
+
+# Standard chip processing
+CHIP  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
+# Standard chip processing
+CHIP_NOCOMPRESS	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.
+  NO.COMPRESS        BOOL    TRUE
+END
+
+# Standard chip processing with auxillary masking
+CHIP_AUXMASK	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
+
+# Standard chip processing with heavy auxillary masking (same as CHIP_AUXMASK here, but different in gpc1)
+CHIP_AUXMASK_HEAVY	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
+
+# Standard chip processing
+CHIP_PATTERNTEST	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.
+  PATTERN.CELL	     BOOL    FALSE
+  PATTERN.ROW	     BOOL    FALSE
+END
+
+# Chip processing with DARKTEST 
+CHIP_DARKTEST 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.
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARKTEST
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END
+END
+
+CHIP_DARKTEST_CONTINUITY 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
+  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?
+  MASK.STATS         BOOL    TRUE            # Calculate Mask statistics.
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARKTEST
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END
+END
+
+#standard processing, testing new mask
+CHIP_MASKTEST 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.
+ 
+   DETREND.CONSTRAINTS  METADATA
+     MASK METADATA
+       DETTYPE STR MASKTEST
+     END
+     VIDEOMASK METADATA
+       DETTYPE STR VIDEOMASKTEST
+     END  
+   END   
+END
+
+CHIP_DARKTEST_MASKTEST 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.
+ 
+   DETREND.CONSTRAINTS  METADATA
+     DARK METADATA
+       DETTYPE STR DARKTEST
+       EXPTIME STR FPA.EXPOSURE
+     END
+     MASK METADATA
+       DETTYPE STR MASKTEST
+     END
+     VIDEOMASK METADATA
+       DETTYPE STR VIDEOMASKTEST
+     END  
+   END   
+END
+
+CHIP_TIMEDARK 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.
+ 
+   DETREND.CONSTRAINTS  METADATA
+     DARK METADATA
+       DETTYPE STR TIMEDARK
+       EXPTIME STR FPA.EXPOSURE
+     END
+     MASK METADATA
+       DETTYPE STR TIMEMASK
+       EXPTIME STR FPA.EXPOSURE
+     END
+     VIDEOMASK METADATA
+       DETTYPE STR VIDEOMASKTEST
+     END  
+   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    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
+
+
+
+# Standard chip processing with tiltystreak options (define by camera)
+TILTY	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?
+END
+
+# Standard chip processing with additional noise for tests (bigboss 20110215)
+CHIP_ADDNOISE        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
+  ADDNOISE           BOOL    TRUE            # Add noise to mimic shorter exposure
+  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
+
+# Standard chip processing with noisemap options (define by camera)
+NOISY	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?
+END
+
+# Standard chip processing for areas with high stellar density
+CHIP_DENSE_STARS	METADATA
+END
+
+# test for MOPS request reprocessing without masking -- may be different for gpc1/gpc2
+CHIP_NOMASKTEST        METADATA
+END
+
+# Overscan subtraction only
+QUICKMOSAIC        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    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
+  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    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  FPA1.FITS        BOOL    TRUE            # Save 1st binned fpa image? 
+  FPA2.FITS        BOOL    TRUE            # Save 2nd binned fpa image? 
+END
+
+# No operation except rebinning
+PPIMAGE_BIN        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    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    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?
+END
+
+# No operation except rebinning and potential normalisation
+PPIMAGE_N          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    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?
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+END
+
+# Overscan subtraction only
+PPIMAGE_O            METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended image?
+  BASE.MASK.FITS     BOOL    TRUE            # 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    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?
+END
+
+# Bias subtraction only
+PPIMAGE_B          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    TRUE            # 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?
+END
+
+# Dark subtraction only
+PPIMAGE_D          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    TRUE            # 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?
+END
+
+# Dark & Overscan subtraction only
+PPIMAGE_OD          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    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    TRUE            # 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?
+END
+
+# Dark subtraction only
+PPIMAGE_M          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?
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Shutter correction only
+PPIMAGE_S          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    TRUE            # 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?
+END
+
+# Flat-fielding only
+PPIMAGE_F          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    TRUE           # 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?
+END
+
+# Fringe correction only
+PPIMAGE_R          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    TRUE		   # Build internal mask?
+  FRINGE           BOOL    TRUE            # 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?
+END
+
+# Photometry only
+PPIMAGE_P          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    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    FALSE           # Mask bad pixels
+  MASK.BUILD       BOOL    TRUE  	   # Build internal mask?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PHOTOM           BOOL    TRUE            # 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?
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  # MASK.STATS       BOOL    TRUE            # Calculate Mask statistics.
+END
+
+# Photometry & Astrometry
+PPIMAGE_A          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    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    FALSE           # Mask bad pixels
+  MASK.BUILD       BOOL    FALSE	   # Build internal mask?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PHOTOM           BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astromtery 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?
+END
+
+# Overscan, bias
+PPIMAGE_OB         METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended image?
+  BASE.MASK.FITS   BOOL    TRUE            # 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    TRUE            # Overscan subtraction
+  NONLIN           BOOL    FALSE           # Non-linearity correction; not implemented
+  BIAS             BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD        METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark -- search for DARK_PREMASK
+PPIMAGE_DARKMASK_PROCESS METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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    TRUE            # Bias subtraction
+  DARK               BOOL    TRUE            # 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?
+END
+
+# used for the pre-mask version of flat-field processing
+PPIMAGE_FLATPROC_PREMASK     METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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    TRUE            # Bias subtraction
+  DARK               BOOL    TRUE            # 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?
+  MASK.SATURATED     BOOL    FALSE           # DO NOT Mask the saturated pixels
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_FLATMASK_PROCESS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+
+  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
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD       BOOL    FALSE	   # Build internal mask?
+  FRINGE           BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_DET_ONLY   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
+  MASK.BUILD       BOOL    TRUE 	   # Build internal mask?
+  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    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP    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
+  MASK.BUILD       BOOL    TRUE 	   # Build internal mask?
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATCORR    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
+  MASK.BUILD       BOOL    TRUE 	   # Build internal mask?
+  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?
+
+  DETREND.CONSTRAINTS  METADATA
+    FLAT METADATA
+      DETTYPE STR FLAT_RAW
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATTEST   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
+  MASK.BUILD       BOOL    TRUE 	   # Build internal mask?
+  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?
+
+  DETREND.CONSTRAINTS  METADATA
+    FLAT METADATA
+      DETTYPE STR FLATTEST
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA    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
+  MASK.BUILD       BOOL    TRUE 	   # Build internal mask?
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_MASKPHOT   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    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    TRUE 	   # Build internal mask?
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Save JPEG from BIN1
+PPIMAGE_JPEG       METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  MASK.SATURATED   BOOL    FALSE           # DO NOT Mask the saturated pixels
+  MASK.LOW         BOOL    FALSE           # DO NOT Mask the saturated pixels
+END
+
+# Save JPEG from BIN1
+PPIMAGE_J1         METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+  MASK.SATURATED   BOOL    FALSE           # DO NOT Mask the saturated pixels
+  MASK.LOW         BOOL    FALSE           # DO NOT Mask the saturated pixels
+END
+
+# Save JPEG from BIN2
+PPIMAGE_J2         METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+  MASK.SATURATED   BOOL    FALSE           # DO NOT Mask the saturated pixels
+  MASK.LOW         BOOL    FALSE           # DO NOT Mask the saturated pixels
+END
+
+# Calculate new background models with continuity correction applied
+PPIMAGE_BKGCONT    METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+  MASK.SATURATED   BOOL    FALSE           # DO NOT Mask the saturated pixels
+  MASK.LOW         BOOL    FALSE           # DO NOT Mask the saturated pixels
+  BACKGROUND.CONTINUITY BOOL TRUE
+  PATTERN.CONTINUITY.WIDTH S32 2
+END
+
+# Overscan, bias, photometry, astrometry (for, eg, summit ISP analysis)
+PPIMAGE_OA         METADATA
+  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
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE          # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE          # Save 2nd binned jpeg?
+  PHOTOM           BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, photometry (for quick analysis)
+PPIMAGE_OP         METADATA
+  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
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  PHOTOM           BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Photometry and astrometry only (for pre-reduced data)
+PPIMAGE_PA         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    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    FALSE           # Mask bad pixels
+  MASK.BUILD         BOOL    FALSE 	   # Build internal mask?
+  FRINGE             BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  BIN1.JPEG          BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG          BOOL    TRUE            # Save 2nd binned jpeg?
+  PHOTOM             BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# JPEG images for different types of residual images
+# Save JPEG from BIN1 for bias
+PPIMAGE_J1_RESID_B      METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     VALUE
+    SCALE.MIN      F32     -5.0
+    SCALE.MAX      F32     +5.0
+  END
+END
+
+# Save JPEG from BIN2 for bias
+PPIMAGE_J2_RESID_B        METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     VALUE
+    SCALE.MIN      F32     -5.0
+    SCALE.MAX      F32     +5.0
+  END
+END
+
+# Save JPEG from BIN1 for flat
+PPIMAGE_J1_RESID_F      METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.95
+    SCALE.MAX      F32     1.05
+  END
+END
+
+# Save JPEG from BIN2 for flat
+PPIMAGE_J2_RESID_F        METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+		   
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.95
+    SCALE.MAX      F32     1.05
+  END
+END
+
+# Save JPEG from BIN1 for flat
+PPIMAGE_J1_RESID_R      METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+		   
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     RANGE
+    SCALE.MIN      F32     -2.0
+    SCALE.MAX      F32     +3.0
+  END
+END
+
+# Save JPEG from BIN2 for flat
+PPIMAGE_J2_RESID_R        METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+		   
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     RANGE
+    SCALE.MIN      F32     -2.0
+    SCALE.MAX      F32     +3.0
+  END
+END
+
+# JPEG images for different types of positive images
+# Save JPEG from BIN1 for bias
+PPIMAGE_J1_IMAGE_B      METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+		   
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     RANGE
+    SCALE.MIN      F32     -5.0
+    SCALE.MAX      F32     +5.0
+  END
+END
+
+# Save JPEG from BIN2 for bias
+PPIMAGE_J2_IMAGE_B        METADATA
+  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    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?
+  BASE.FITS       BOOL    FALSE           # Save base 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? 
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+
+  PPIMAGE.JPEG2  METADATA
+    COLORMAP      STR     -greyscale
+    SCALE.MODE    STR     RANGE
+    SCALE.MIN     F32     -5.0
+    SCALE.MAX     F32     +5.0
+  END
+END
+
+# Save JPEG from BIN1 for flat
+PPIMAGE_J1_IMAGE_F      METADATA
+  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    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?
+  BASE.FITS       BOOL    FALSE           # Save base 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? 
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+
+  PPIMAGE.JPEG1  METADATA
+    COLORMAP      STR     -greyscale
+    SCALE.MODE    STR     RANGE
+    SCALE.MIN     F32     -5.0
+    SCALE.MAX     F32     +5.0
+  END
+END
+
+# Save JPEG from BIN2 for flat
+PPIMAGE_J2_IMAGE_F        METADATA
+  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    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?
+  BASE.FITS       BOOL    FALSE           # Save base 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? 
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+
+  PPIMAGE.JPEG2  METADATA
+    COLORMAP      STR     -greyscale
+    SCALE.MODE    STR     RANGE
+    SCALE.MIN     F32     -5.0
+    SCALE.MAX     F32     +5.0
+  END
+END
+
+# Save JPEG from BIN1 for flat
+PPIMAGE_J1_IMAGE_R      METADATA
+  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    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?
+  BASE.FITS       BOOL    FALSE           # Save base 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? 
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+
+  PPIMAGE.JPEG1  METADATA
+    COLORMAP      STR     -greyscale
+    SCALE.MODE    STR     RANGE
+    SCALE.MIN     F32     -2.0
+    SCALE.MAX     F32     +3.0
+  END
+END
+
+# Save JPEG from BIN2 for flat
+PPIMAGE_J2_IMAGE_R        METADATA
+  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    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?
+  BASE.FITS       BOOL    FALSE           # Save base 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? 
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+
+  PPIMAGE.JPEG2  METADATA
+    COLORMAP      STR     -greyscale
+    SCALE.MODE    STR     RANGE
+    SCALE.MIN     F32     -2.0
+    SCALE.MAX     F32     +3.0
+  END
+END
+
+# Save JPEG from BIN1 for mask
+PPIMAGE_J1_IMAGE_M        METADATA
+  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    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?
+  BASE.FITS       BOOL    FALSE           # Save base 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? 
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.90
+    SCALE.MAX      F32     1.10
+  END
+END
+
+# Save JPEG from BIN2 for mask
+PPIMAGE_J2_IMAGE_M        METADATA
+  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    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?
+  BASE.FITS       BOOL    FALSE           # Save base 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? 
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.95
+    SCALE.MAX      F32     1.05
+  END
+END
+
+# Save JPEG from BIN1 for mask
+PPIMAGE_J1_RESID_M        METADATA
+  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    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?
+  BASE.FITS       BOOL    FALSE           # Save base 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? 
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.95
+    SCALE.MAX      F32     1.05
+  END
+END
+
+# Save JPEG from BIN2 for mask
+PPIMAGE_J2_RESID_M        METADATA
+  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    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?
+  BASE.FITS       BOOL    FALSE           # Save base 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? 
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.95
+    SCALE.MAX      F32     1.05
+  END
+END
+
+# JPEG images for different types of residual images
+# Save JPEG from BIN1 for bias
+PPIMAGE_MOSAIC     METADATA
+  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    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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  FPA1.FITS        BOOL    TRUE            # Save 1st binned fpa image? 
+  FPA2.FITS        BOOL    FALSE           # Save 2nd binned fpa image? 
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+END
+
+# generate chip-mosaiced image
+PPIMAGE_CHIPMOSAIC     METADATA
+  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.BUILD       BOOL    FALSE 	   # Build internal mask?
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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    FALSE           # Save chip-mosaic-ed image? 
+  CHIP.VARIANCE.FITS BOOL  FALSE           # Save chip-mosaic-ed image? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  FPA1.FITS        BOOL    FALSE            # Save 1st binned fpa image? 
+  FPA2.FITS        BOOL    FALSE           # Save 2nd binned fpa image? 
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+END
+
+# generate CTE map image
+PPIMAGE_CTEMAP     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    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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    TRUE            # measure CTE errors?
+
+  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_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
+PPIMAGE_OA_SOFT   METADATA
+END
+
+PPIMAGE_OP_SOFT   METADATA
+END
+
+#For PR images
+PR_DARKTEST_NOSUB	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           # Overscan subtraction
+  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
+  MASK.BUILD         BOOL    TRUE 	     # Build internal mask?
+  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    FALSE            # Subtract background?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARKTEST
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END   
+END
+
+PR               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           # Overscan subtraction
+  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
+  MASK.BUILD         BOOL    TRUE 	     # Build internal mask?
+  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    FALSE            # Subtract background?
+END
+
+PR_NOPATTERN      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           # Overscan subtraction
+  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?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  PATTERN.ROW      BOOL    FALSE           # Subtract pattern noise
+  PATTERN.CELL     BOOL    FALSE           # Subtract pattern noise
+  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    FALSE            # Subtract background?
+  CROSSTALK.MEASURE  BOOL  TRUE            # Subtract model background?
+END
+
+# Standard chip processing without any background removal
+CHIP_PRESERVE_BG	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           # Overscan subtraction
+  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
+  MASK.BUILD         BOOL    TRUE 	     # Build internal mask?
+  PATTERN.ROW        BOOL    FALSE           # Subtract pattern noise
+  PATTERN.CELL       BOOL    FALSE           # Subtract pattern noise
+  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    FALSE           # Subtract background?
+  MASK.STATS         BOOL    TRUE	     # Calculate Mask statistics
+END
+
+
+# Standard chip processing with the background able to be readded
+CHIP_RESTORE_BG	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           # Overscan subtraction
+  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
+  MASK.BUILD         BOOL    TRUE 	     # Build internal mask?
+  PATTERN.ROW        BOOL    FALSE           # Subtract pattern noise
+  PATTERN.CELL       BOOL    FALSE           # Subtract pattern noise
+  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
+
+# Standard chip processing with auxiliary mask but without any background removal or pattern correction
+CHIP_PRESERVE_BG_AUXMASK	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           # Overscan subtraction
+  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
+  MASK.BUILD         BOOL    TRUE 	     # Build internal mask?
+  MASK.AUXMASK       BOOL    TRUE 	     # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Subtract pattern noise
+  PATTERN.CELL       BOOL    FALSE           # Subtract pattern noise
+  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    FALSE           # Subtract background?
+  MASK.STATS         BOOL    TRUE	     # Calculate Mask statistics
+END
+
+# Standard chip processing
+CHIP_NOPATTERN	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           # Overscan subtraction
+  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
+  MASK.BUILD         BOOL    TRUE 	     # Build internal mask?
+  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
+
+# Standard chip processing for old pre-run5 data
+CHIP_PATTERN	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           # Overscan subtraction
+  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
+  MASK.BUILD         BOOL    TRUE 	     # Build internal mask?
+  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
+  PATTERN.ROW        BOOL    FALSE           # Subtract pattern noise
+  PATTERN.CELL       BOOL    FALSE           # Subtract pattern noise
+
+  PATTERN.ROW.SUBSET	METADATA	# List of chips and whether to do row pattern correction
+	XY01	BOOL	TRUE
+	XY02	BOOL	TRUE
+	XY03	BOOL	TRUE
+	XY04	BOOL	TRUE
+	XY05	BOOL	TRUE
+	XY06	BOOL	TRUE
+	XY10	BOOL	TRUE
+	XY11	BOOL	TRUE
+	XY12	BOOL	TRUE
+	XY13	BOOL	TRUE
+	XY14	BOOL	TRUE
+	XY15	BOOL	TRUE
+	XY16	BOOL	TRUE
+	XY17	BOOL	TRUE
+	XY20	BOOL	TRUE
+	XY21	BOOL	TRUE
+	XY22	BOOL	TRUE
+	XY23	BOOL	TRUE
+	XY24	BOOL	TRUE
+	XY25	BOOL	TRUE
+	XY26	BOOL	TRUE
+	XY27	BOOL	TRUE
+	XY30	BOOL	TRUE
+	XY31	BOOL	TRUE
+	XY32	BOOL	TRUE
+	XY33	BOOL	TRUE
+	XY34	BOOL	TRUE
+	XY35	BOOL	TRUE
+	XY36	BOOL	TRUE
+	XY37	BOOL	TRUE
+	XY40	BOOL	TRUE
+	XY41	BOOL	TRUE
+	XY42	BOOL	TRUE
+	XY43	BOOL	TRUE
+	XY44	BOOL	TRUE
+	XY45	BOOL	TRUE
+	XY46	BOOL	TRUE
+	XY47	BOOL	TRUE
+	XY50	BOOL	TRUE
+	XY51	BOOL	TRUE
+	XY52	BOOL	TRUE
+	XY53	BOOL	TRUE
+	XY54	BOOL	TRUE
+	XY55	BOOL	TRUE
+	XY56	BOOL	TRUE
+	XY57	BOOL	TRUE
+	XY60	BOOL	TRUE
+	XY61	BOOL	TRUE
+	XY62	BOOL	TRUE
+	XY63	BOOL	TRUE
+	XY64	BOOL	TRUE
+	XY65	BOOL	TRUE
+	XY66	BOOL	TRUE
+	XY67	BOOL	TRUE
+	XY71	BOOL	TRUE
+	XY72	BOOL	TRUE
+	XY73	BOOL	TRUE
+	XY74	BOOL	TRUE
+	XY75	BOOL	TRUE
+	XY76	BOOL	TRUE
+  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    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    FALSE           # Mask potential burntool trails
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE           # Cell pattern correction
+  FRINGE             BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  MASK.STATS         BOOL    FALSE           # Calculate Mask statistics.
+  CROSSTALK.MEASURE  BOOL    FALSE           # Subtract model background?
+
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  PATTERN.DEAD.CELLS BOOL    TRUE            # continuity corrections (see options below)
+  OVERSCAN.MIN.VALID F32     100.0           # Overscan subtraction
+  OVERSCAN.MAX.VALID F32   64000.0           # Overscan subtraction
+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    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    FALSE           # Mask bad pixels
+  MASK.BUILD	     BOOL    FALSE	     # Build internal mask?
+  MASK.BURNTOOL      BOOL    FALSE           # Mask potential burntool trails
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL	     BOOL    FALSE           # Cell pattern correction
+  FRINGE             BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+  MASK.STATS         BOOL    FALSE           # Calculate Mask statistics.
+  CROSSTALK.MEASURE  BOOL    FALSE           # Subtract model background?
+
+  BACKGROUND         BOOL    TRUE            # Subtract background?
+  PATTERN.DEAD.CELLS BOOL    TRUE            # continuity corrections (see options below)
+  OVERSCAN.MIN.VALID F32     100.0           # Overscan subtraction
+  OVERSCAN.MAX.VALID F32   64000.0           # Overscan subtraction
+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
+
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_PREMASK_PROCESS      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    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?
+
+  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
+
+# for localhost test without bias, dark, flat, mask - ccl 2019.11.06
+CHIP_LOCALHOSTTEST      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?
+  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    TRUE            # Build internal mask image
+  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?
+END
+
+# https://jira.ipp.ifa.hawaii.edu/browse/IPP-1451
+# burntool turned off for manual reprocessing of problematic exposures
+# add by CCL 2021.09.30
+CHIP_NOBURNTOOL 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           # apply non-linearity correction
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  NOISEMAP           BOOL    FALSE
+  REMNANCE           BOOL    FALSE           # Remnance masking
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD         BOOL    FALSE           # Build internal mask?
+  MASK.BURNTOOL      BOOL    FALSE           # Mask potential burntool trails
+  MASK.AUXMASK       BOOL    FALSE           # augment mask with more restrictive auxiliary mask
+  PATTERN.ROW        BOOL    FALSE           # Row pattern correction
+  PATTERN.CELL       BOOL    FALSE           # Cell pattern correction
+  PATTERN.CONTINUITY BOOL    FALSE           # Cell pattern correction using edge continuity
+  FRINGE             BOOL    FALSE           # 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    FALSE           # Subtract model background? 
+  USE.DEBURNED.IMAGE BOOL    FALSE           # use burntool-repaired image?
+  USE.BEST.BURNTOOL  BOOL    FALSE           # require the best burntooled data
+END
+
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppMerge.config	(revision 42661)
@@ -0,0 +1,137 @@
+# Recipe configuration for ppMerge
+
+ROWS                S32     128             # Number of rows to read at once
+ELECTRONS           F32     100.0           # Minimum number of electrons for useful signal
+SAMPLE              S32     100000          # Sampling factor for measuring the background
+REJ                 F32     3.0             # Rejection threshold (sigma)
+ITER                S32     2               # Number of rejection iterations
+FRACHIGH            F32     0.0             # Fraction of high pixels to reject immediately
+FRACLOW             F32     0.0             # Fraction of low pixels to reject immediately
+NKEEP               S32     5               # Minimum number of pixels in stack to keep
+VARIANCES           BOOL    FALSE           # Use image variances in combination?
+
+FRINGE.NUM          S32     10000           # Number of fringe regions
+FRINGE.SIZE         S32     5               # Half-size of fringe regions
+FRINGE.XSMOOTH      S32     5               # Number of smoothing regions in x
+FRINGE.YSMOOTH      S32     11              # Number of smoothing regions in y
+FRINGE.SMOOTH       BOOL    FALSE           # Smooth the output image?
+FRINGE.SMOOTH.SIGMA F32     2.0             # Sigma of smoothing Gaussian
+
+CTE.MIN             F32     0.5             # regions lower than this in the CTE image are masked
+SHUTTER.SIZE        S32     128             # Size for shutter measurement regions
+
+INPUT.MASKS.USE	BOOL	TRUE		# respect the input mask data?
+
+COMBINE             STR     CLIPPED         # Statistic to use for combination
+MEAN                STR     ROBUST_MEDIAN   # Statistic to use to measure the mean
+STDEV               STR     ROBUST_STDEV    # Statistic to use to measure the stdev
+
+MASK.SUSPECT.MODE   STR     SIGMA           # how to identify suspect pixels: SIGMA, VALUE
+MASK.SUSPECT.MIN    F32    -100.0           # for MASK.SUSPECT.MODE == VALUE, below this is suspect
+MASK.SUSPECT.MAX    F32    +100.0           # for MASK.SUSPECT.MODE == VALUE, above this is suspect
+MASK.SUSPECT.SIGMA  F32     5.0             # Threshold for suspect pixels (sigma)
+
+MASK.SMOOTH.SUSPECT BOOL    TRUE            # smooth the suspect-pixel image before making mask
+MASK.SMOOTH.SCALE   F32     3.0             # sigma (pixels) of smoothing kernel
+
+MASK.BAD            F32     0.2             # Threshold for bad pixels
+MASK.MODE           STR     FRACTION        # Mode for identifying bad pixels in the suspect map
+MASK.CHIPSTATS      BOOL    TRUE            # Measure stats for masking by chip (otherwise by readout)?
+MASK.GROW           S32     0               # Grow bad pixels by this radius
+MASK.SET.VALUE      STR     FLAT            # set this bit in the output mask
+
+STATS.BY.CHIP       BOOL    TRUE            # measure stats for masking by chip (or by readout)
+MASK.GROW.NPIX      S32     3               # measure stats for masking by chip (or by readout)
+
+GAIN.OVERRIDE	    BOOL    FALSE	    # Override non-finite gain?
+
+# Ordinates for fitting dark current
+# Counts = C0 + CT0*exptime
+DARK.ORDINATES  METADATA
+        CELL.DARKTIME   S32     1       # Traditional dark current term
+END
+DARK.NORM       STR     NONE            # Dark normalisation concept
+
+# Bias combination --- don't want min/max rejection
+PPMERGE_BIAS    METADATA
+        REJ             F32     3.0             # Rejection threshold (sigma)
+        ITER            S32     2               # Number of rejection iterations
+        FRACHIGH        F32     0.0             # Fraction of high pixels to reject immediately
+        FRACLOW         F32     0.0             # Fraction of low pixels to reject immediately
+        VARIANCES       BOOL    FALSE           # Use image variances?
+        COMBINE         STR     CLIPPED         # Statistic to use for combination: 
+END
+
+
+# Dark combination --- don't want min/max rejection
+# More aggressive clipping than bias, so as to remove CRs
+PPMERGE_DARK    METADATA
+        REJ             F32     3.0             # Rejection threshold (sigma)
+        ITER            S32     2               # Number of rejection iterations
+        FRACHIGH        F32     0.0             # Fraction of high pixels to reject immediately
+        FRACLOW         F32     0.0             # Fraction of low pixels to reject immediately
+        VARIANCES       BOOL    TRUE            # Use image variances?
+        COMBINE         STR     CLIPPED         # Statistic to use for combination: 
+END
+
+# Flat combination --- use min/max rejection
+PPMERGE_FLAT    METADATA
+        REJ             F32     3.0             # Rejection threshold (sigma)
+        ITER            S32     1               # Number of rejection iterations
+        FRACHIGH        F32     0.3             # Fraction of high pixels to reject immediately
+        FRACLOW         F32     0.1             # Fraction of low pixels to reject immediately
+        NKEEP           S32     5               # Minimum number of pixels in stack to keep
+        VARIANCES       BOOL    TRUE            # Use image variances?
+        COMBINE         STR     MEAN            # Statistic to use for combination: 
+END
+
+
+# Fringe combination --- already included in default, above
+PPMERGE_FRINGE  METADATA
+        FRACHIGH        F32     0.1             # Fraction of high pixels to reject immediately
+        VARIANCES       BOOL    TRUE            # Use image variances?
+END
+
+# Mask generation --- already included in default, above
+PPMERGE_DARKMASK METADATA
+        ITER            S32     2               # Number of iterations
+        MASK.BAD        F32     0.2             # Threshold for bad pixels (sigma)
+        MASK.MODE       STR     FRACTION        # Mode for identifying bad pixels in the suspect map
+        MASK.SET.VALUE  STR     DARK            # set this bit in the output mask
+END
+
+# Mask generation --- already included in default, above
+PPMERGE_FLATMASK METADATA
+        ITER            S32     2               # Number of iterations
+        MASK.BAD        F32     0.2             # Threshold for bad pixels (sigma)
+        MASK.MODE       STR     FRACTION        # Mode for identifying bad pixels in the suspect map
+        MASK.SET.VALUE  STR     FLAT            # set this bit in the output mask
+END
+
+# CTEMASK generation combines the images like a flat or bias (mean after outlier rejection),
+# but it then sets a mask based on the resulting data values (using CTE.MIN)
+PPMERGE_CTEMASK METADATA
+        REJ             F32     3.0             # Rejection threshold (sigma)
+        ITER            S32     2               # Number of rejection iterations
+        FRACHIGH        F32     0.0             # Fraction of high pixels to reject immediately
+        FRACLOW         F32     0.0             # Fraction of low pixels to reject immediately
+        VARIANCES       BOOL    FALSE           # Use image variances?
+        COMBINE         STR     CLIPPED         # Statistic to use for combination: 
+        CTE.MIN         F32     0.5             # regions lower than this in the CTE image are masked
+        MASK.SET.VALUE  STR     CTE             # set this bit in the output mask
+	INPUT.MASKS.USE	BOOL	FALSE		# respect the input mask data?
+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
+        REJ             F32     2.0             # Rejection threshold (sigma)
+        ITER            S32     1               # Number of rejection iterations
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppNoiseMap.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppNoiseMap.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppNoiseMap.config	(revision 42661)
@@ -0,0 +1,3 @@
+
+XBIN S32 60
+YBIN S32 60
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppSim.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppSim.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppSim.config	(revision 42661)
@@ -0,0 +1,227 @@
+### Recipe values for ppSim, the Pan-STARRS data simulator
+
+## XXX need to consider this better: used to run / skip fake, should be a function of chip (and context?)
+SKIP.FAKE       BOOL    TRUE
+
+IMAGE.TYPE      STR     BIAS            # default image type
+
+OBS_MODE        STR     NONE
+
+BIAS            BOOL    FALSE
+BIAS.LEVEL	F32	1000.0		# Bias level (e)
+BIAS.RANGE	F32	20.0		# Range of bias values (e)
+BIAS.ORDER	S32	7		# Order for overscan polynomial
+
+# dark signal = (DARK.RATE + DARK.TEMP1*TEMP + DARK.TEMP2*TEMP^2)*EXPTIME
+DARK            BOOL    TRUE
+DARK.RATE	F32	5.0		# Dark current (e/s)
+DARK.TEMP	F32	0.0		# Dark temperature trend (e/s/C)
+DARK.TEMP2	F32	0.0		# 2nd order Dark temperature trend (e/s/C^2)
+DET.TEMP	F32   -20.0		# Detector temperature
+
+# dark signal = (DARK.RATE + DARK.TEMP1*TEMP + DARK.TEMP2*TEMP^2)*EXPTIME
+# the following dark model can be used to test ppMerge with DARK.ORDINATES
+TEST.DARKTEMP   METADATA
+  DARK            BOOL    TRUE
+  DARK.RATE	F32	25.0		# Dark current (e/s)
+  DARK.TEMP	F32	0.5		# Dark temperature trend (e/s/C)
+  DARK.TEMP2	F32	0.05		# 2nd order Dark temperature trend (e/s/C^2)
+  DET.TEMP	F32	-20.0		# Detector temperature
+END
+
+FLAT            BOOL    TRUE
+FLAT.SIGMA	F32	3.0		# Flat gaussian width (FPA sizes)
+FLAT.RATE	F32	2000.0		# Flat illumination rate (e/s)
+
+SHUTTER.TIME	F32	1.0		# Time for shutter to fully open
+SCATTER.FRAC    F32     0.0
+
+SKY		BOOL	TRUE		# Sky illumination rate (e/s)
+SKY.RATE	F32	20.0		# Sky illumination rate (e/s)
+
+PHOTOM          BOOL    FALSE           # perform photometry on the faked stars?
+
+FORCED.PHOT     BOOL    FALSE           # measure forced photometry for specific points?
+FORCED.CATDIR   STR     NONE            # source of the forced photometry positions
+FORCED.PHOTCODE STR     r               # source of the forced photometry positions
+
+STARS.REAL	BOOL	TRUE 		# Add stars from a catalogue?
+MATCH.DENSITY   BOOL    FALSE           # significance of faintest sources
+
+STARS.FAKE      BOOL    TRUE		# Add fake stars, randomly distributed?
+STARS.LUM	F32	0.40		# Stellar luminosity function slope (magnitude slope)
+STARS.MAG	F32	12.5		# Brightest magnitude for fake stars (choose based on real catalog limit)
+STARS.DENSITY	F32    100.0		# Stellar density (per square degree) at the brightest magnitude
+STARS.SIGMA.LIM F32      1.0            # significance of faintest sources
+
+STARS.CLUSTER         BOOL    F         # do not insert a cluster by default
+STARS.CLUSTER.DENSITY F32 10000         # central density (per square degree)
+STARS.CLUSTER.SIGMA   F32    30         # cluster spatial scale (pixels)
+STARS.CLUSTER.XCENTER F32  500         # center of cluster
+STARS.CLUSTER.YCENTER F32  500         # center of cluster
+
+STARS.FLAT.LUM  BOOL    FALSE           # use a (non-physical) constant number of stars per mag bin?
+STARS.FLAT.NUM  S32     5000            # number of stars to generate for flat magnitude distribution
+PSF.MODEL       STR     PS_MODEL_QGAUSS
+PSF.ARATIO      F32     1.0		# minor / major (0.0 - 1.0)
+PSF.THETA	F32	0.0
+PSF.CONVOLVE    BOOL    FALSE		# generate fake stars with PSF (F), or smooth with PSF (T)?
+CONVOLVE.NSIGMA F32     5.0		# smooth image out to NSIGMA * sigma
+
+STARS.GRID      BOOL    FALSE		# Add grid of fake stars with constant flux
+STARS.GRID.MAG	F32	14.0		# magnitude of fake grid stars
+STARS.GRID.DX	S32	100		# X spacing of fake grid stars
+STARS.GRID.DY	S32	100		# Y spacing of fake grid stars
+
+GALAXY.FAKE     BOOL    FALSE		# Generate fake galaxies?
+
+GALAXY.LUM	  F32	0.8		# Stellar luminosity function slope
+GALAXY.MAG	  F32	15.0		# Brightest magnitude for fake stars
+GALAXY.DENSITY	  F32	5.0		# Galaxy density (per square degree) at the brightest magnitude
+
+GALAXY.RMAJOR.MIN F32	5.0		# Minimum semi-major axis for galaxy models
+GALAXY.RMAJOR.MAX F32	10.0		# Maximum semi-major axis for galaxy models
+
+GALAXY.ARATIO.MIN F32	1.0		# Minimum axis ratio for galaxy models
+GALAXY.ARATIO.MAX F32	0.5		# Maximum axis ratio for galaxy models
+
+GALAXY.INDEX.MIN F32    0.25		# Minimum Sersic index for galaxy models
+GALAXY.INDEX.MAX F32	1.000           # Maximum Sersic index for galaxy models
+
+GALAXY.THETA.MIN F32    0.0		# Minimum position angle for galaxy models
+GALAXY.THETA.MAX F32	180.0           # Maximum position angle for galaxy models
+
+GALAXY.GRID        BOOL   FALSE		# Generate a (regular) grid of galaxy models?
+GALAXY.GRID.DX     S32    100           # Spacing between galaxies in grid in x
+GALAXY.GRID.DY     S32    200           # Spacing between galaxies in grid in y
+GALAXY.GRID.RANDOM BOOL   FALSE		# randomize shape parameters in grid (or sequence?)
+GALAXY.GRID.PEAK   F32    100.0		# peak flux of the grid galaxies (deprecated)
+GALAXY.GRID.MAG    F32    17.0		# integrated magnitude of the grid galaxies
+GALAXY.GRID.XOFF   F32    0.0           # galaxy centroid offsets
+GALAXY.GRID.YOFF   F32    0.0           # galaxy centroid offsets
+
+GALAXY.MODEL     STR    PS_MODEL_GAUSS
+
+BADCTE          BOOL    FALSE           # create a region of 'bad CTE'?
+BADCTE.REGION   STR     [0:200,0:200]   # region of 'bad CTE'
+BADCTE.SIGMA    F32     2.0             # 'bad CTE' smoothing scale
+BADCTE.NSIGMA   S32     2               # 'bad CTE' smoothing scale
+
+BADPIX.SEED	U64	123456789	# Seed for RNG in creating deterministic bad pixels
+BADPIX.FRAC	F32	0.0001		# Fraction of bad pixels
+BADPIX.SIZE	S32	0		# Size of bad pixels
+BADPIX.MODE	STR	RANDOM		# Mode for bad pixels: RANDOM|NAN
+
+### The following options are used if not defined by the concepts (e.g., usually read from headers)
+GAIN		F32	NAN		# Default gain (e/ADU)
+READNOISE	F32	10.0		# Default read noise (e)
+OVERSCAN.SIZE	S32	32		# Default overscan columns
+SATURATION	F32	65535		# Default saturation level (ADU)
+
+PIXEL.SCALE     F32     0.26            # pixel size in arcsec
+
+# filter-dependent parameters
+# NOTE: these are only used if ZEROPOINT is set to NAN
+ZEROPTS  METADATA
+	g	F32	24.00
+	r	F32	25.15
+	i	F32	25.00
+	z	F32	24.50
+	y	F32	24.00
+END
+
+# the following values are not set by default, but supplied if needed from arguments
+EXPTIME     F32     NAN                 # exposure time (seconds)
+RA          F32     NAN                 # exposure time (seconds)
+DEC         F32     NAN                 # exposure time (seconds)
+PA          F32     NAN                 # exposure time (seconds)
+SEEING      F32     NAN                 # exposure time (seconds)
+SCALE       F32     NAN                 # exposure time (seconds)
+ZEROPOINT   F32     NAN                 # exposure time (seconds)
+SKY.MAGS    F32     NAN                 # exposure time (seconds)
+
+SEEING.MAX  F32     NAN                 # exposure time (seconds)
+SEEING.RAMP BOOL    F                 # exposure time (seconds)
+
+FILTER      STR     NONE                # exposure time (seconds)
+BINNING     S32     1                   # exposure time (seconds)
+
+ADDFAKES    METADATA
+ BIAS            BOOL    FALSE
+ DARK            BOOL    FALSE
+ FLAT            BOOL    FALSE
+ SKY		 BOOL	 FALSE		# Sky illumination rate (e/s)
+ STARS.REAL  	 BOOL	 FALSE		# Add stars from a catalogue?
+ STARS.FAKE  	 BOOL	 TRUE		# Add stars from a catalogue?
+END
+
+FAKEPHOT    METADATA
+ BIAS            BOOL    FALSE
+ DARK            BOOL    FALSE
+ FLAT            BOOL    FALSE
+ SKY		 BOOL	 FALSE		# Sky illumination rate (e/s)
+ STARS.REAL  	 BOOL	 FALSE		# Add stars from a catalogue?
+ STARS.FAKE  	 BOOL	 TRUE		# Add stars from a catalogue?
+ PHOTOM          BOOL    FALSE           # perform photometry on the faked stars?
+ FORCED.PHOT     BOOL    TRUE
+ FORCED.CATDIR   STR     DVO.FORCE
+END
+
+# for a quick test, we are going to skip shutter and dark corrections
+FLATCORR    METADATA
+ SHUTTER.TIME	 F32	 0.0
+ DARK.RATE       F32     0.0         
+ SCATTER.FRAC    F32     0.05
+END
+
+TEST.SHAPES    METADATA
+ BIAS            BOOL    FALSE
+ DARK            BOOL    FALSE
+ FLAT            BOOL    FALSE
+ SKY		 BOOL	 TRUE		# Sky illumination rate (e/s)
+ STARS.REAL  	 BOOL	 FALSE		# Add stars from a catalogue?
+ STARS.FAKE  	 BOOL	 FALSE		# Add stars from a catalogue?
+
+ GALAXY.FAKE     BOOL    TRUE		# Generate fake galaxies?
+ GALAXY.GRID     BOOL    TRUE		# Generate a (regular) grid of galaxy models?
+ GALAXY.GRID.DX   S32    500             # Spacing between galaxies in grid in x
+ GALAXY.GRID.DY   S32    500             # Spacing between galaxies in grid in y
+
+ GALAXY.MODEL    STR     PS_MODEL_GAUSS
+
+ GALAXY.RMAJOR.MIN F32	 3.0		# Minimum semi-major axis for galaxy models
+ GALAXY.RMAJOR.MAX F32	 3.0		# Maximum semi-major axis for galaxy models
+ 
+# GALAXY.ARATIO.MIN F32	1.0		# Minimum axis ratio for galaxy models
+# GALAXY.ARATIO.MAX F32	1.0		# Maximum axis ratio for galaxy models
+GALAXY.ARATIO.MIN F32	0.5		# Minimum axis ratio for galaxy models
+GALAXY.ARATIO.MAX F32	0.5		# Maximum axis ratio for galaxy models
+ 
+ GALAXY.INDEX.MIN F32   0.25		# Minimum Sersic index for galaxy models
+ GALAXY.INDEX.MAX F32	0.25           # Maximum Sersic index for galaxy models
+ 
+ GALAXY.THETA.MIN F32    1.0		# Minimum position angle for galaxy models
+ GALAXY.THETA.MAX F32	 1.0            # Maximum position angle for galaxy models
+
+END
+
+TESTDATA  METADATA
+END
+
+STACKTEST.MAKE  METADATA
+END
+
+STACKTEST.RUN  METADATA
+END
+
+# Overrides for creating large holes in the image
+LARGEHOLES	METADATA
+    BADPIX.FRAC	F32	3.0e-7		# Fraction of bad pixels
+    BADPIX.SIZE	S32	256		# Size of bad pixels
+    BADPIX.MODE	STR	NAN		# Mode for bad pixels: RANDOM|NAN
+END
+
+# recipe for a CTE test
+BADCTE.TEST     METADATA
+  BADCTE BOOL TRUE
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppSkycell.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppSkycell.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppSkycell.config	(revision 42661)
@@ -0,0 +1,6 @@
+### Recipe file for ppSkycell
+
+MASKVAL		STR	MASK.VALUE	# Symbolic name of values to mask
+BIN1		S32	16		# Binning factor for output 1
+BIN2		S32	10		# Binning factor for output 2
+MAKEFITS        BOOL    T               # Make fits image as well?
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppSmooth.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppSmooth.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppSmooth.config	(revision 42661)
@@ -0,0 +1,3 @@
+# no recipe options are yet defined...
+
+SIGMA F32 1.0
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppStack.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppStack.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppStack.config	(revision 42661)
@@ -0,0 +1,295 @@
+# Recipe configuration for ppStack (image combination)
+
+CONVOLVE	BOOL	TRUE		# Convolve images when stacking?
+MATCH.ZERO.POINTS BOOL	TRUE		# Convolve images when stacking?
+
+COMBINE.ITER	F32	0.5		# Number of rejection iterations per input
+COMBINE.REJ	F32	3.5		# Rejection threshold in combination (sigma)
+COMBINE.SYS	F32	0.1		# Relative systematic error in combination
+COMBINE.DISCARD	F32	0.2		# Discard fraction for Olympic weighted mean
+
+COMBINE.PERCENT         BOOL  FALSE     # Use a single percentile clipping?
+COMBINE.REJECT.FRACTION F32   0.32      # fraction of outliers to reject in percentile clipping
+                                        # Note this is the total both above and below the median
+
+MASK.VAL	STR	MASK.VALUE,CONV.BAD,GHOST # Mask value of input bad pixels
+MASK.SUSPECT	STR	SUSPECT,BURNTOOL,SPIKE,CROSSTALK,STARCORE,CONV.POOR # Mask value of suspect pixels
+MASK.BAD	STR	BLANK		# Mask value to give bad pixels
+MASK.POOR	STR	CONV.POOR	# Mask value to give poor pixels
+MASK.BLANKBORDER S32    0               # Mask blank border in final stack output (may want to set KERNEL.SIZE)
+
+SKIP.MISSING.INPUTS BOOL FALSE          # If some input warp images are missing, make the stack anyway
+
+# we are in some danger of inconsistency in the definition of a 'bad' vs a 'suspect' pixel
+# these distinctions are also defined in psModules/src/config/pmConfigMask.c
+
+POOR.FRACTION	F32	0.25		# Maximum fraction of bad variance for poor pixels
+THRESHOLD.MASK	F32	0.5		# Threshold for mask deconvolution (0..1)
+DECONV.LIMIT	F32	3.0		# Deconvolution fraction for rejecting entire image
+IMAGE.REJ	F32	0.1		# Rejected pixel fraction threshold for rejecting entire image
+MATCH.REJ	F32	3.0		# Rejection threshold for chi^2 values from matching
+ROWS		S32	64		# Number of rows to read at once
+VARIANCE	BOOL	TRUE		# Use variance in rejection?
+SAFE		BOOL	TRUE		# Play safe when combining small number of values?
+WEIGHTS		BOOL	TRUE		# Use 1/noise^2 weighting?
+BIN1		S32	4		# Binning factor for first level
+BIN2		S32	4		# Binning factor for second level
+PHOTOMETRY      BOOL    TRUE            # Do basic photometry?
+SKIP.BG.SUB	BOOL	FALSE		# Bypass background subtraction?
+TARGET.FRAC	F32	0.1		# Minimum flux fraction for target PSF
+TARGET.MINMAG	F32	3.0		# Minimum magnitude difference to tolerate in stamp
+NMINPIX		S32	1 		# Minimum input per pixel 
+BSCALEOFFSET    BOOL    FALSE           # HACK for removing offset from input warps because of compression (0.5*BSCALE)
+
+BACKGROUND.MODEL    BOOL   FALSE        # Construct a stacked version of the warp stage background
+
+RENORM		BOOL	TRUE		# Renormalise weight maps?
+RENORM.NUM	S32	100000		# Number of samples for renormalisation
+RENORM.MIN	F32	NAN		# Minimum value for renormlisation
+RENORM.MAX	F32	NAN		# Maximum value for renormalisation
+
+### The PHOT mode is intended as a quick and dirty stopgap; it should disappear soon.
+PHOT		BOOL	FALSE		# Calculate ZP using own photometry?
+PHOT.RADIUS	S32	30		# Photometry radius (pixels)
+PHOT.SIGMA	F32	5		# Photometry gaussian sigma for weight (pixels)
+PHOT.FRAC	F32	0.9		# Minimum fraction of good pixels
+
+ZP		BOOL	TRUE		# Match zero points?
+ZP.RADIUS	F32	4.0		# Radius (pixels) for matching sources
+ZP.ITER.1	S32	5		# Iterations for zero point; pass 1
+ZP.ITER.2	S32	1000		# Iterations for zero point; pass 2
+ZP.TOL		F32	1.0e-6		# Tolerance for zero point iterations
+ZP.TRANS.ITER	S32	2		# Iterations for transparency determination
+ZP.TRANS.REJ	F32	3.0		# Rejection threshold for transparency determination
+ZP.TRANS.THRESH	F32	1.0		# Threshold for transparency determination
+ZP.STAR.REJ.1	F32	20.0		# Rejection threshold for stars; pass 1
+ZP.STAR.REJ.2	F32	3.0		# Rejection threshold for stars; pass 2
+ZP.STAR.LIMIT	F32	1.0e-2		# Limit on star rejection fraction for successful iteration
+ZP.STAR.SYS.1	F32	0.10		# Estimated systematic error; pass 1
+ZP.STAR.SYS.2	F32	0.05		# Estimated systematic error; pass 2
+ZP.MATCH	F32	0.1		# Fraction of images to match for good star
+ZP.AIRMASS	METADATA		# Airmass terms by filter
+	u.MP9301 F32	0.0
+	g	F32	0.0
+	r	F32	0.0
+	i	F32	0.0
+	z	F32	0.0
+	y	F32	0.0
+	w	F32	0.0
+END
+ZP.TARGET	METADATA		# Target zero point by filter
+	u.MP9301 F32	25.0
+	g	F32	25.0
+	r	F32	25.0
+	i	F32	25.0
+	z	F32	25.0
+	y	F32	25.0
+	w	F32	25.0
+END
+ZP.AIRMASS.TARGET F32 1.0
+
+PSF.INSTANCES	S32	15		# Number of instances for PSF generation
+PSF.RADIUS	F32	20.0		# Radius for PSF generation
+PSF.ORDER	S32	1		# Order of spatial variation for PSF generation
+PSF.MODEL	STR	PS_MODEL_GAUSS	# Model for PSF generation
+
+PSF.AUTOSIZE		BOOL	TRUE		# Determine output PSF size from input PSFs?
+PSF.OUTPUT.FWHM         F32     5.0             # Target size for output PSF (if not auto-sized), -1 as mean FWHM inputs 
+PSF.OUTPUT.NFWHMSIG     F32     0.0             # N FWHM-sig to be added to the FWHMmean for PSF
+
+
+PSF.INPUT.CLIP.SIMPLE	BOOL F          # Should we do a simple sigma clip (T, requires CLIP.NSIGMA) or the mixture model (F, requires all parameters)
+PSF.INPUT.MAX           F32  NAN	# Set maximum limit on input FWHM (defaults to inf)
+PSF.INPUT.CLIP.NSIGMA   F32  NAN	# Set n-sigma cut limit for input rejection
+PSF.INPUT.THRESH        F32  NAN	# Set minimum limit below which we do not exclude an input (defaults to 0.0)
+PSF.INPUT.ASYMMETRY     F32  NAN	# Set difference in mixture model populations to consider equal.
+PSF.TARGET.AS.MAX       BOOL F          # Set the target PSF FWHM as the maximum of accepted input FWHM values.
+PSF.TARGET.AS.MAX.EPSILON F32 0.1       # Amount to set the target PSF FWHM larger than the maximum input. Target = eps + max(input)
+
+
+TEMP.IMAGE	STR	conv.im.fits	# Suffix for temporary convolved images
+TEMP.MASK	STR	conv.mk.fits	# Suffix for temporary convolved masks
+TEMP.VARIANCE	STR	conv.var.fits	# Suffix for temporary convolved variance maps
+TEMP.DELETE	BOOL	TRUE		# Delete temporary files on completion?
+
+OUTPUT.NOCOMP   BOOL    FALSE           # use filerules that make conconpressed outputs
+OUTPUT.LOGFLUX  BOOL    FALSE           # choose a log-scaling for output images
+OUTPUT.DEEPEXP  BOOL    FALSE           # allow exptime maps with dynamic range up to 2^16 (64k) seconds
+
+OUTPUT.REPLICATE BOOL   TRUE
+
+STACK.TYPE      STR     DEEP_STACK
+
+DO.LINEAR.INPUT.SCALING      BOOL        FALSE
+DEFAULT.EXPTIME  F32    NAN
+
+# Recipe overrides for STACK
+STACK	METADATA
+END
+#
+PS1_REFERENCE	METADATA
+END
+
+# Recipe overrides for STACK
+STACKPHOT METADATA
+END
+
+# Debugging
+DEBUG	METADATA
+	TEMP.DELETE	BOOL	FALSE		# Delete temporary files on completion?
+END
+
+# Faster processing for PR images
+PR	METADATA
+	IMAGE.REJ	    F32	  0.5
+	WEIGHTS		    BOOL  FALSE
+	CONVOLVE	    BOOL  FALSE
+	SKIP.BG.SUB	    BOOL  FALSE
+        MATCH.ZERO.POINTS   BOOL  FALSE
+        PHOTOMETRY          BOOL  FALSE           # Do basic photometry?
+END
+
+QUICKSTACK    METADATA
+        CONVOLVE        BOOL   FALSE
+	COMBINE.REJ     F32    3.0
+        COMBINE.DISCARD F32    0.3
+        MASK.VAL	STR    MASK.VALUE,CONV.BAD,GHOST,BURNTOOL # Mask value of input bad pixels
+END
+
+# Stack mode for testing stacking procedure
+TESTSTACK   METADATA
+    VARIANCE        BOOL FALSE
+END
+
+QUICKSTACK_DEEP    METADATA
+END
+
+STACK_DEEP    METADATA
+END
+
+STACK_NIGHTLY  METADATA
+    STACK.TYPE      STR     NIGHTLY_STACK
+END
+
+STACK_THREEPI  METADATA
+END
+STACK_THREEPI_ALT  METADATA
+END
+
+STACK_CNP  METADATA
+END
+
+STACK_MD_REF    METADATA
+END
+
+STACK_MD_DEEP   METADATA
+END
+
+STACK_ALLDEEP   METADATA
+END
+
+STACK_MD_IQ_1DG    METADATA
+END
+
+STACK_MD_REF_1DG    METADATA
+END
+
+STACK_MD_DEEP_1DG   METADATA
+END
+
+STACK_ALLDEEP_1DG   METADATA
+END
+
+STACK_NIGHTLY_1DG  METADATA
+    STACK.TYPE      STR     NIGHTLY_STACK
+END
+
+STACK_MDTHREEPI_DEEP_1DG   METADATA
+END
+
+STACK_MD_PV3_IQ_1DG    METADATA
+END
+
+STACK_MD_PV3_REF_1DG    METADATA
+END
+
+STACK_MD_PV3_DEEP_1DG   METADATA
+END
+
+STACK_MD_PV3_NIGHT_1DG  METADATA
+    STACK.TYPE      STR     NIGHTLY_STACK
+END
+
+STACK_CNP_PV3_IQ_1DG    METADATA
+END
+
+STACK_CNP_PV3_REF_1DG    METADATA
+END
+
+STACK_CNP_PV3_DEEP_1DG   METADATA
+END
+
+STACK_UNIONS_DR3 METADATA
+  COMBINE.PERCENT     BOOL TRUE  # Use a single percentile clipping?
+  SKIP.MISSING.INPUTS BOOL TRUE  # If some input warp images are missing, make the stack anyway
+  CONVOLVE	      BOOL FALSE # Convolve images when stacking?
+  OUTPUT.NOCOMP       BOOL FALSE # use filerules that make compressed outputs
+  OUTPUT.LOGFLUX      BOOL TRUE  # choose a log-scaling for output images
+  OUTPUT.DEEPEXP      BOOL TRUE  # allow exptime maps with dynamic range up to 2^16 (64k) seconds
+END
+
+TEST1 METADATA
+  CONVOLVE          BOOL  FALSE           # Convolve images when stacking?
+  MATCH.ZERO.POINTS BOOL  TRUE            # Convolve images when stacking?
+  
+  COMBINE.ITER    F32     0.0             # Number of rejection iterations per input
+  COMBINE.REJ     F32    10.0             # Rejection threshold in combination (sigma)
+  COMBINE.SYS     F32     0.1             # Relative systematic error in combination
+  COMBINE.DISCARD F32     0.0             # Discard fraction for Olympic weighted mean
+  
+  COMBINE.PERCENT         BOOL  TRUE      # Use a single percentile clipping?
+  COMBINE.REJECT.FRACTION F32   0.0       # fraction of outliers to reject in percentile clipping
+                                          # Note this is the total both above and below the median
+  
+  SKIP.MISSING.INPUTS BOOL FALSE          # If some input warp images are missing, make the stack anyway
+  
+  # we are in some danger of inconsistency in the definition of a 'bad' vs a 'suspect' pixel
+  # these distinctions are also defined in psModules/src/config/pmConfigMask.c
+  
+  POOR.FRACTION   F32     0.25            # Maximum fraction of bad variance for poor pixels
+  THRESHOLD.MASK  F32     0.5             # Threshold for mask deconvolution (0..1)
+  DECONV.LIMIT    F32     3.0             # Deconvolution fraction for rejecting entire image
+  IMAGE.REJ       F32     0.1             # Rejected pixel fraction threshold for rejecting entire image
+  MATCH.REJ       F32     3.0             # Rejection threshold for chi^2 values from matching
+  ROWS            S32     64              # Number of rows to read at once
+  VARIANCE        BOOL    TRUE            # Use variance in rejection?
+  SAFE            BOOL    TRUE            # Play safe when combining small number of values?
+  WEIGHTS         BOOL    TRUE            # Use 1/noise^2 weighting?
+  BIN1            S32     4               # Binning factor for first level
+  BIN2            S32     4               # Binning factor for second level
+  PHOTOMETRY      BOOL    TRUE            # Do basic photometry?
+  SKIP.BG.SUB     BOOL    TRUE            # Bypass background subtraction?
+  TARGET.FRAC     F32     0.1             # Minimum flux fraction for target PSF
+  TARGET.MINMAG   F32     3.0             # Minimum magnitude difference to tolerate in stamp
+  NMINPIX         S32     1               # Minimum input per pixel 
+  BSCALEOFFSET    BOOL    FALSE           # HACK for removing offset from input warps because of compression (0.5*BSCALE)
+  
+  BACKGROUND.MODEL    BOOL   FALSE        # Construct a stacked version of the warp stage background
+  
+  RENORM          BOOL    TRUE            # Renormalise weight maps?
+  RENORM.NUM      S32     100000          # Number of samples for renormalisation
+  RENORM.MIN      F32     NAN             # Minimum value for renormlisation
+  RENORM.MAX      F32     NAN             # Maximum value for renormalisation
+END
+
+TEST2 METADATA
+  PSF.AUTOSIZE	  BOOL	FALSE		# Determine output PSF size from input PSFs?
+  PSF.OUTPUT.FWHM F32	7.0		# Target size for output PSF (if not auto-sized)
+  PSF.MODEL	  STR	PS_MODEL_PS1_V1	# Model for PSF generation
+END
+
+TEST3 METADATA
+  PSF.AUTOSIZE	  BOOL	FALSE		# Determine output PSF size from input PSFs?
+  PSF.OUTPUT.FWHM F32	8.0		# Target size for output PSF (if not auto-sized)
+  PSF.MODEL	  STR	PS_MODEL_PS1_V1	# Model for PSF generation
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppStats.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppStats.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppStats.config	(revision 42661)
@@ -0,0 +1,425 @@
+### Default ppStats recipe
+
+## XXX Additional notes:
+## 1) diff_skycell.pl and stack_skycell.pl currently both use the WARPSTATS recipe below
+## 2) ppSub (at least) supplements the stats file explicitly with several items that are not
+## written to headers (see ppSubReadoutStats.c)
+
+# Options governing statistics
+SAMPLE          F32     0.1     # Fraction of cell to sample
+DO.FIRST.READOUT.3D BOOL FALSE  # for 3D images, measure stats of first readout
+
+# Mask value to use for statistics.  this is only used for stand-alone
+# operations.  ppStats library calls pass a mask value as needed
+MASKVAL         STR     SAT,LOW 
+
+# Define the outputs as MULTI
+HEADER          MULTI
+CONCEPT         MULTI
+STAT            MULTI
+SUMMARY         MULTI
+
+# Add dummy values, to define the MULTI --- due to limitations in the MDC language
+HEADER		STR	_UNDEF
+CONCEPT		STR	_UNDEF
+STAT		STR	_UNDEF
+SUMMARY		STR	_UNDEF
+ANALYSIS        STR     _UNDEF
+
+# basic stats for output images
+CHIPSTATS	METADATA
+  STAT          MULTI
+  STAT		STR	ROBUST_MEDIAN
+  STAT          STR     ROBUST_STDEV   # Background statistics estimators
+
+  HEADER        MULTI
+  HEADER        STR     OVER_VAL
+  HEADER        STR     BACK_VAL
+  HEADER        STR     BACK_ERR
+  HEADER        STR     APMIFIT
+  HEADER        STR     DAPMIFIT
+
+  HEADER        STR     FWHM_MAJ # major axis FWHM (in pixels)
+  HEADER        STR     FW_MJ_LQ # major axis FWHM (in pixels)
+  HEADER        STR     FW_MJ_UQ # major axis FWHM (in pixels)
+
+  HEADER        STR     FWHM_MIN # minor axis FWHM (in pixels)
+  HEADER        STR     FW_MN_LQ # major axis FWHM (in pixels)
+  HEADER        STR     FW_MN_UQ # major axis FWHM (in pixels)
+
+  HEADER        STR     DT_DET   # elapsed time in detrend processing
+  HEADER        STR     DT_PHOT  # elapsed time in photometry processing
+
+  HEADER        STR     NSTARS
+  HEADER        STR     NPSFSTAR
+  HEADER        STR     IQ_NSTAR
+  HEADER        STR     NDET_EXT
+  HEADER        STR     NDET_CR
+
+  HEADER        STR     IQ_FW1
+  HEADER        STR     IQ_FW1_E
+  HEADER        STR     IQ_FW2
+  HEADER        STR     IQ_FW2_E
+
+  HEADER        STR     IQ_M2
+  HEADER        STR     IQ_M2_ER
+  HEADER        STR     IQ_M2_LQ
+  HEADER        STR     IQ_M2_UQ
+
+  HEADER        STR     IQ_M2C
+  HEADER        STR     IQ_M2C_E
+  HEADER        STR     IQ_M2C_L
+  HEADER        STR     IQ_M2C_U
+
+  HEADER        STR     IQ_M2S
+  HEADER        STR     IQ_M2S_E
+  HEADER        STR     IQ_M2S_L
+  HEADER        STR     IQ_M2S_U
+
+  HEADER        STR     IQ_M3
+  HEADER        STR     IQ_M3_ER
+  HEADER        STR     IQ_M3_LQ
+  HEADER        STR     IQ_M3_UQ
+
+  HEADER        STR     IQ_M4
+  HEADER        STR     IQ_M4_ER
+  HEADER        STR     IQ_M4_LQ
+  HEADER        STR     IQ_M4_UQ
+  HEADER        STR     DETEFF.MAGREF
+
+
+  HEADER	STR	PSLIB_V
+  HEADER	STR	MODULE_V
+  HEADER	STR	PHOT_V
+  HEADER	STR	ASTRO_V
+  HEADER	STR	STATS_V
+  HEADER	STR	IMAGE_V
+  HEADER	STR	STREAK_V
+
+  HEADER	STR	DETREND.MASK DETREND.BIAS DETREND.DARK DETREND.SHUTTER DETREND.FLAT DETREND.FRINGE
+
+  ANALYSIS      MULTI   # metadata blocks to search in chip/cell/readout->analysis
+  ANALYSIS      STR     PSPHOT.HEADER
+  ANALYSIS      STR     PSASTRO.HEADER
+  ANALYSIS	STR	DETREND
+
+  SUMMARY 	STR	MASKFRAC_STATIC
+  SUMMARY	STR	MASKFRAC_MAGIC
+  SUMMARY	STR	MASKFRAC_ADVISORY
+  SUMMARY	STR	MASKFRAC_DYNAMIC
+  SUMMARY	STR	MASKFRAC_NPIX
+
+END
+
+# stats for camera-level analysis (astrometry, summary stats)
+CAMSTATS	METADATA
+  HEADER        MULTI
+  HEADER        STR     CERROR
+  HEADER        STR     DT_ASTR  # elapsed time in astrometry processing
+  HEADER        STR     NASTRO
+  HEADER        STR     ASTROM_CHIPS
+
+  HEADER        STR     ZPT_OBS
+  HEADER        STR     ZPT_ERR
+
+  HEADER	STR	PSLIB_V
+  HEADER	STR	MODULE_V
+  HEADER	STR	PHOT_V
+  HEADER	STR	ASTRO_V
+  HEADER	STR	STATS_V
+  HEADER	STR	IMAGE_V
+  HEADER	STR	STREAK_V
+  
+  HEADER        STR     NDET            # sources->n
+  HEADER        STR     NDET_EXT
+  HEADER        STR     NDET_FRC
+
+  ANALYSIS      MULTI   # metadata blocks to search in chip/cell/readout->analysis
+  ANALYSIS      STR     PSPHOT.HEADER
+  ANALYSIS      STR     PSASTRO.HEADER
+
+  ANALYSIS 	STR	MASKFRAC_REF_STATIC
+  ANALYSIS 	STR	MASKFRAC_REF_MAGIC
+  ANALYSIS	STR	MASKFRAC_REF_ADVISORY
+  ANALYSIS	STR	MASKFRAC_REF_DYNAMIC
+  ANALYSIS	STR	MASKFRAC_REF_NPIX
+
+  ANALYSIS 	STR	MASKFRAC_MAX_STATIC
+  ANALYSIS 	STR	MASKFRAC_MAX_MAGIC
+  ANALYSIS	STR	MASKFRAC_MAX_ADVISORY
+  ANALYSIS	STR	MASKFRAC_MAX_DYNAMIC
+  ANALYSIS	STR	MASKFRAC_MAX_NPIX
+END
+
+# stats for camera-level analysis (astrometry, summary stats)
+FPCAMERA	METADATA
+  HEADER        MULTI
+  HEADER        STR     ZPT_OBS
+  HEADER        STR     ZPT_ERR
+
+  HEADER	STR	PSLIB_V
+  HEADER	STR	MODULE_V
+  HEADER	STR	PHOT_V
+  HEADER	STR	FPCAM_V
+  HEADER	STR	STATS_V
+  HEADER	STR	IMAGE_V
+  HEADER	STR	STREAK_V
+  
+  HEADER        STR     NDET            # sources->n
+  HEADER        STR     NDET_EXT
+  HEADER        STR     NDET_FRC
+
+  ANALYSIS      MULTI   # metadata blocks to search in chip/cell/readout->analysis
+  ANALYSIS      STR     PSPHOT.HEADER
+END
+
+# basic stats for output images
+DETSTATS	METADATA
+  STAT          MULTI
+  STAT		STR	ROBUST_MEDIAN
+  STAT          STR     ROBUST_STDEV   # Background statistics estimators
+  SUMMARY       STR     GOOD_PIXEL_NUM  # Number of good pixels
+  SUMMARY       STR     GOOD_PIXEL_FRAC # Fraction of good pixels
+END
+
+# basic stats for output images
+DARKSTATS	METADATA
+  DO.FIRST.READOUT.3D BOOL TRUE  # for 3D images, measure stats of first readout
+
+  STAT          MULTI
+  STAT		STR	ROBUST_MEDIAN
+  STAT          STR     ROBUST_STDEV   # Background statistics estimators
+END
+
+# basic stats for residual images
+RESIDUAL	METADATA
+  STAT          MULTI
+  STAT		STR	ROBUST_MEDIAN
+  STAT          STR     ROBUST_STDEV   # Background statistics estimators
+  STAT          STR     SAMPLE_SKEWNESS
+  STAT          STR     SAMPLE_KURTOSIS
+  HEADER        MULTI
+  HEADER        STR     FRNG_00        # fringe amplitude, if measured
+  HEADER        STR     FRNG_00D       # fringe error, if measured
+  HEADER        STR     FRNG_01        # fringe amplitude, if measured
+  HEADER        STR     FRNG_01D       # fringe error, if measured
+  HEADER        STR     FRNG_02        # fringe amplitude, if measured
+  HEADER        STR     FRNG_02D       # fringe error, if measured
+END
+
+### ppStats recipe for injection
+INJECT  METADATA
+  CONCEPT       MULTI
+END
+
+### ppStats recipe for registration
+REGISTER  	METADATA
+  CONCEPT       MULTI
+  STAT          MULTI
+  SUMMARY       MULTI
+
+  CONCEPT       STR     FPA.OBJECT      # Object name
+  CONCEPT       STR     FPA.OBSTYPE     # Observation type
+  CONCEPT       STR     FPA.FILTER      # Filter
+  CONCEPT       STR     FPA.RA FPA.DEC  # Telescope pointing
+
+  CONCEPT       STR     FPA.LONGITUDE
+  CONCEPT       STR     FPA.LATITUDE
+  CONCEPT       STR     FPA.ELEVATION
+
+  CONCEPT       STR     FPA.COMMENT     # Obs Comment
+  CONCEPT       STR     FPA.OBS.MODE    # Obs Mode
+  CONCEPT       STR     FPA.OBS.GROUP   # Obs Group
+
+  CONCEPT       STR     FPA.AIRMASS     # Airmass
+  CONCEPT       STR     FPA.ALT FPA.AZ  # Telescopy alt/az
+  CONCEPT       STR     FPA.POSANGLE    # Rotator angle
+  CONCEPT       STR     FPA.TIME        # Time of exposure
+  CONCEPT       STR     FPA.TELESCOPE   # Telescope (eg, CFHT)
+  CONCEPT       STR     FPA.CAMERA      # Instrument (eg, CFH12K)
+  CONCEPT       STR     CHIP.TEMP       # Detector temperature
+  CONCEPT       STR     CELL.EXPOSURE   # Exposure time
+
+  CONCEPT       STR     FPA.M1X         # Primary x position
+  CONCEPT       STR	FPA.M1Y         # Primary y position
+  CONCEPT       STR	FPA.M1Z         # Primary z position
+  CONCEPT       STR	FPA.M1TIP       # Primary tip
+  CONCEPT       STR	FPA.M1TILT      # Primary tilt
+  CONCEPT       STR	FPA.M2X         # Secondary x position
+  CONCEPT       STR	FPA.M2Y         # Secondary y position
+  CONCEPT       STR	FPA.M2Z         # Secondary z position
+  CONCEPT       STR	FPA.M2TIP       # Secondary tip position
+  CONCEPT       STR	FPA.M2TILT      # Secondary tilt position
+  CONCEPT       STR	FPA.ENV.TEMP    # external temperature
+  CONCEPT       STR	FPA.ENV.HUMID   # external humidity
+  CONCEPT       STR	FPA.ENV.WIND    # external wind speed
+  CONCEPT       STR	FPA.ENV.DIR     # external wind direction
+
+  CONCEPT       STR     FPA.TELTEMP.M1     # Primary mirror temps (C) 
+  CONCEPT       STR     FPA.TELTEMP.M1CELL # Primary mirror support temps (C)   
+  CONCEPT       STR     FPA.TELTEMP.M2     # Secondary mirror temps (C
+  CONCEPT       STR     FPA.TELTEMP.SPIDER # Spider temperatures (C)  
+  CONCEPT       STR     FPA.TELTEMP.TRUSS  # Mid truss temperatures (C
+  CONCEPT       STR     FPA.TELTEMP.EXTRA  # Miscellaneous temperatures (C)     
+
+  CONCEPT       STR     FPA.BURNTOOL.APPLIED 
+
+
+  CONCEPT       STR	FPA.PON.TIME    # time since last power on
+
+  CONCEPT       STR     CHIP.VIDEOCELL  
+
+  STAT          STR     ROBUST_MEDIAN   # Background estimator
+  STAT          STR     ROBUST_STDEV    # Background standard deviation estimator
+  SUMMARY	STR	SAT_PIXEL_NUM
+  SUMMARY	STR	SAT_PIXEL_FRAC
+END
+
+
+### ppStats recipe for registration
+TIMETEST  	METADATA
+  CONCEPT       MULTI
+
+  CONCEPT       STR     FPA.OBJECT      # Object name
+  CONCEPT       STR     FPA.OBSTYPE     # Observation type
+  CONCEPT       STR     FPA.FILTER      # Filter
+  CONCEPT       STR     FPA.RA FPA.DEC  # Telescope pointing
+
+  CONCEPT       STR     FPA.LONGITUDE
+  CONCEPT       STR     FPA.LATITUDE
+  CONCEPT       STR     FPA.ELEVATION
+
+  CONCEPT       STR     FPA.COMMENT     # Obs Comment
+
+  CONCEPT       STR     FPA.AIRMASS     # Airmass
+  CONCEPT       STR     FPA.ALT FPA.AZ  # Telescopy alt/az
+  CONCEPT       STR     FPA.POSANGLE    # Rotator angle
+  CONCEPT       STR     FPA.TIME        # Time of exposure
+  CONCEPT       STR     FPA.TELESCOPE   # Telescope (eg, CFHT)
+  CONCEPT       STR     FPA.CAMERA      # Instrument (eg, CFH12K)
+  CONCEPT       STR     CHIP.TEMP       # Detector temperature
+  CONCEPT       STR     FPA.TEMP        # Camera temperature
+END
+
+
+# basic stats for warped images
+WARPSTATS	METADATA
+  HEADER        MULTI
+  CONCEPT       MULTI
+  STAT          MULTI
+  SUMMARY       MULTI
+
+  HEADER	STR	PSLIB_V
+  HEADER	STR	MODULE_V
+  HEADER	STR	PHOT_V
+  HEADER	STR	STATS_V
+  HEADER	STR	WARP_V
+  HEADER	STR	STREAK_V
+
+  STAT		STR	ROBUST_MEDIAN
+  STAT          STR     ROBUST_STDEV    # Background statistics estimators
+  SUMMARY       STR     GOOD_PIXEL_NUM  # Number of good pixels
+  SUMMARY       STR     GOOD_PIXEL_FRAC # Fraction of good pixels
+
+  ANALYSIS	MULTI
+  ANALYSIS 	STR	MASKFRAC_STATIC
+  ANALYSIS 	STR	MASKFRAC_MAGIC
+  ANALYSIS	STR	MASKFRAC_ADVISORY
+  ANALYSIS	STR	MASKFRAC_DYNAMIC
+  ANALYSIS	STR	MASKFRAC_NPIX
+END
+
+# Based on WARPSTATS
+# basic stats for stacked images
+STACKSTATS	METADATA
+  HEADER        MULTI
+  CONCEPT       MULTI
+  STAT          MULTI
+  SUMMARY       MULTI
+
+  HEADER	STR	PSLIB_V
+  HEADER	STR	MODULE_V
+  HEADER	STR	PHOT_V
+  HEADER	STR	STATS_V
+  HEADER	STR	STACK_V
+
+  STAT		STR	ROBUST_MEDIAN
+  STAT          STR     ROBUST_STDEV    # Background statistics estimators
+  SUMMARY       STR     GOOD_PIXEL_NUM  # Number of good pixels
+  SUMMARY       STR     GOOD_PIXEL_FRAC # Fraction of good pixels
+
+  ANALYSIS	MULTI
+  ANALYSIS 	STR	MASKFRAC_STATIC
+  ANALYSIS 	STR	MASKFRAC_MAGIC
+  ANALYSIS	STR	MASKFRAC_ADVISORY
+  ANALYSIS	STR	MASKFRAC_DYNAMIC
+  ANALYSIS	STR	MASKFRAC_NPIX
+END
+
+# basic stats for diffed images
+DIFFSTATS	METADATA
+  HEADER        MULTI
+  CONCEPT       MULTI
+  STAT          MULTI
+  SUMMARY       MULTI
+
+  HEADER	STR	PSLIB_V
+  HEADER	STR	MODULE_V
+  HEADER	STR	PHOT_V
+  HEADER	STR	STATS_V
+  HEADER	STR	PPSUB_V
+  HEADER	STR	STREAK_V
+
+  STAT		STR	ROBUST_MEDIAN
+  STAT          STR     ROBUST_STDEV    # Background statistics estimators
+  SUMMARY       STR     GOOD_PIXEL_NUM  # Number of good pixels
+  SUMMARY       STR     GOOD_PIXEL_FRAC # Fraction of good pixels
+
+  ANALYSIS	MULTI
+  ANALYSIS 	STR	MASKFRAC_STATIC
+  ANALYSIS 	STR	MASKFRAC_MAGIC
+  ANALYSIS	STR	MASKFRAC_ADVISORY
+  ANALYSIS	STR	MASKFRAC_DYNAMIC
+  ANALYSIS	STR	MASKFRAC_NPIX
+END
+
+# stats for sky calibration (astrometry, summary stats)
+SKYCALSTATS 	METADATA
+  HEADER        MULTI
+  HEADER        STR     CERROR
+  HEADER        STR     DT_ASTR  # elapsed time in astrometry processing
+  HEADER        STR     NASTRO
+
+  HEADER        STR     ZPT_OBS
+  HEADER        STR     ZPT_ERR
+  HEADER        STR     FWHM_MAJ
+  HEADER        STR     FWHM_MIN
+
+  HEADER	STR	PSLIB_V
+  HEADER	STR	MODULE_V
+  HEADER	STR	PHOT_V
+  HEADER	STR	ASTRO_V
+  HEADER	STR	STATS_V
+  HEADER	STR	IMAGE_V
+  HEADER	STR	STREAK_V
+  
+  HEADER        STR     NDET            # sources->n
+  HEADER        STR     NDET_EXT
+  HEADER        STR     NDET_FRC
+
+  ANALYSIS      MULTI   # metadata blocks to search in chip/cell/readout->analysis
+  ANALYSIS      STR     PSPHOT.HEADER
+  ANALYSIS      STR     PSASTRO.HEADER
+
+  ANALYSIS 	STR	MASKFRAC_REF_STATIC
+  ANALYSIS 	STR	MASKFRAC_REF_MAGIC
+  ANALYSIS	STR	MASKFRAC_REF_ADVISORY
+  ANALYSIS	STR	MASKFRAC_REF_DYNAMIC
+  ANALYSIS	STR	MASKFRAC_REF_NPIX
+
+  ANALYSIS 	STR	MASKFRAC_MAX_STATIC
+  ANALYSIS 	STR	MASKFRAC_MAX_MAGIC
+  ANALYSIS	STR	MASKFRAC_MAX_ADVISORY
+  ANALYSIS	STR	MASKFRAC_MAX_DYNAMIC
+  ANALYSIS	STR	MASKFRAC_MAX_NPIX
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppStatsFromMetadata.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppStatsFromMetadata.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppStatsFromMetadata.config	(revision 42661)
@@ -0,0 +1,600 @@
+
+REGISTER_IMFILE METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  FILE.LEVEL       	  STR  CONSTANT          -filelevel           # File level
+  ENTRY  VAL  CLASS.ID         	  STR  CONSTANT          -class_id            # Real Class ID
+  ENTRY  VAL  FPA.OBJECT       	  STR  CONSTANT          -object              # Object
+  ENTRY  VAL  FPA.OBSTYPE      	  STR  CONSTANT          -exp_type            # Exposure type
+  ENTRY  VAL  FPA.FILTER       	  STR  CONSTANT          -filter              # Filter used
+  ENTRY  VAL  FPA.COMMENT      	  STR  CONSTANT          -comment             # Obs Comment
+  ENTRY  VAL  FPA.OBS.MODE     	  STR  CONSTANT          -obs_mode            # Obs Mode (eg, survey ID)
+  ENTRY  VAL  FPA.OBS.GROUP    	  STR  CONSTANT          -obs_group           # Obs Group (image sequence)
+  ENTRY  VAL  FPA.AIRMASS      	  F32  CONSTANT          -airmass             # Airmass
+  ENTRY  VAL  FPA.RA           	  F64  CONSTANT          -ra                  # Right ascension
+  ENTRY  VAL  FPA.DEC          	  F64  CONSTANT          -decl                # Declination
+  ENTRY  VAL  FPA.ALT          	  F64  CONSTANT          -alt                 # Altitude
+  ENTRY  VAL  FPA.AZ           	  F64  CONSTANT          -az                  # Azimuth
+  ENTRY  VAL  FPA.POSANGLE     	  F32  CONSTANT          -posang              # Position angle
+  ENTRY  VAL  FPA.TIME         	  UTC   CONSTANT          -dateobs             # Date of observation (UTC)
+  ENTRY  VAL  FPA.TELESCOPE    	  STR  CONSTANT          -telescope           # Telescope
+  ENTRY  VAL  FPA.CAMERA       	  STR  CONSTANT          -inst                # Instrument
+  ENTRY  VAL  FPA.LONGITUDE    	  F64  CONSTANT          -longitude           # Site longitude
+  ENTRY  VAL  FPA.LATITUDE     	  F64  CONSTANT          -latitude            # Site latitude
+  ENTRY  VAL  FPA.ELEVATION    	  F32  CONSTANT          -elevation           # Site elevation
+  ENTRY  VAL  FPA.M1X          	  F32  CONSTANT          -m1_x                # M1X
+  ENTRY  VAL  FPA.M1Y          	  F32  CONSTANT          -m1_y                # M1Y
+  ENTRY  VAL  FPA.M1Z          	  F32  CONSTANT          -m1_z                # M1Z
+  ENTRY  VAL  FPA.M1TIP        	  F32  CONSTANT          -m1_tip              # M1TIP
+  ENTRY  VAL  FPA.M1TILT       	  F32  CONSTANT          -m1_tilt             # M1TILT
+  ENTRY  VAL  FPA.M2X          	  F32  CONSTANT          -m2_x                # M2X
+  ENTRY  VAL  FPA.M2Y          	  F32  CONSTANT          -m2_y                # M2Y
+  ENTRY  VAL  FPA.M2Z          	  F32  CONSTANT          -m2_z                # M2Z
+  ENTRY  VAL  FPA.M2TIP        	  F32  CONSTANT          -m2_tip              # M2TIP
+  ENTRY  VAL  FPA.M2TILT       	  F32  CONSTANT          -m2_tilt             # M2TILT
+  ENTRY  VAL  FPA.ENV.TEMP     	  F32  CONSTANT          -env_temperature     # external temp
+  ENTRY  VAL  FPA.ENV.HUMID    	  F32  CONSTANT          -env_humidity        # external humidity
+  ENTRY  VAL  FPA.ENV.WIND     	  F32  CONSTANT          -env_wind_speed      # external wind speed
+  ENTRY  VAL  FPA.ENV.DIR      	  F32  CONSTANT          -env_wind_dir        # external wind direction
+  ENTRY  VAL  FPA.TELTEMP.M1      F32  CONSTANT          -teltemp_m1          # Primary mirror temps (C)
+  ENTRY  VAL  FPA.TELTEMP.M1CELL  F32  CONSTANT          -teltemp_m1cell      # Primary mirror support temps (C)
+  ENTRY  VAL  FPA.TELTEMP.M2      F32  CONSTANT          -teltemp_m2          # Secondary mirror temps (C
+  ENTRY  VAL  FPA.TELTEMP.SPIDER  F32  CONSTANT          -teltemp_spider      # Spider temperatures (C)
+  ENTRY  VAL  FPA.TELTEMP.TRUSS   F32  CONSTANT          -teltemp_truss       # Mid truss temperatures (C
+  ENTRY  VAL  FPA.TELTEMP.EXTRA   F32  CONSTANT          -teltemp_extra       # Miscellaneous temperatures (C)
+  ENTRY  VAL  FPA.PON.TIME     	  F32  CONSTANT          -pon_time            # time since last power on
+#  ENTRY  VAL  FPA.BURNTOOL.APPLIED S32 CONSTANT          -burntool_state      # 
+  ENTRY  VAL  CHIP.VIDEOCELL      BOOL CONSTANT          -video_cells         # This chip contains a video cell
+  ENTRY  VAL  CHIP.TEMP        	  F32  SAMPLE_MEAN       -ccd_temp            # CCD temperature
+  ENTRY  VAL  CELL.EXPOSURE    	  F32  SAMPLE_MEAN       -exp_time            # Exposure time
+  ENTRY  VAL  SAT_PIXEL_FRAC   	  F32  SAMPLE_MEAN       -sat_pixel_frac      # fraction of saturated pixels
+  ENTRY  VAL  ROBUST_MEDIAN    	  F32  ROBUST_MEDIAN     -bg                 
+  ENTRY  VAL  ROBUST_MEDIAN    	  F32  ROBUST_STDEV      -bg_mean_stdev      
+  ENTRY  VAL  ROBUST_STDEV     	  F32  RMS               -bg_stdev           
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+END
+
+REGISTER_EXP METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  exp_name            STR  CONSTANT          -exp_name            # 
+  ENTRY  VAL  telescope           STR  CONSTANT          -telescope           # 
+  ENTRY  VAL  camera              STR  CONSTANT          -inst                # 
+  ENTRY  VAL  filelevel           STR  CONSTANT          -filelevel           # 
+  ENTRY  VAL  object              STR  CONSTANT          -object             
+  ENTRY  VAL  exp_type            STR  CONSTANT          -exp_type            # File level
+  ENTRY  VAL  filter              STR  CONSTANT          -filter              # File level
+  ENTRY  VAL  comment             STR  CONSTANT          -comment             # ObsComment
+  ENTRY  VAL  obs_mode     	  STR  CONSTANT          -obs_mode            # Obs Mode (eg, survey ID)
+  ENTRY  VAL  obs_group    	  STR  CONSTANT          -obs_group           # Obs Group (image sequence)
+  ENTRY  VAL  dateobs             UTC  CONSTANT          -dateobs             # File level
+  ENTRY  VAL  ccd_temp            F32  SAMPLE_MEAN       -ccd_temp            # CCD temperature
+  ENTRY  VAL  exp_time            F32  SAMPLE_MEAN       -exp_time            # Exposure time
+  ENTRY  VAL  sat_pixel_frac      F32  SAMPLE_MEAN       -sat_pixel_frac      # Fraction of saturated pixels
+  ENTRY  VAL  airmass             F32  CONSTANT          -airmass             # Airmass
+  ENTRY  VAL  ra                  F64  CONSTANT          -ra                  # Right ascension
+  ENTRY  VAL  decl                F64  CONSTANT          -decl                # Declination
+  ENTRY  VAL  posang              F64  CONSTANT          -posang              # Position angle
+  ENTRY  VAL  alt                 F64  CONSTANT          -alt                 # Altitude
+  ENTRY  VAL  az                  F64  CONSTANT          -az                  # Azimuth
+  ENTRY  VAL  m1_x                F32  CONSTANT          -m1_x                # M1X
+  ENTRY  VAL  m1_y                F32  CONSTANT          -m1_y                # M1Y
+  ENTRY  VAL  m1_z                F32  CONSTANT          -m1_z                # M1Z
+  ENTRY  VAL  m1_tip              F32  CONSTANT          -m1_tip              # M1TIP
+  ENTRY  VAL  m1_tilt             F32  CONSTANT          -m1_tilt             # M1TILT
+  ENTRY  VAL  m2_x                F32  CONSTANT          -m2_x                # M2X
+  ENTRY  VAL  m2_y                F32  CONSTANT          -m2_y                # M2Y
+  ENTRY  VAL  m2_z                F32  CONSTANT          -m2_z                # M2Z
+  ENTRY  VAL  m2_tip              F32  CONSTANT          -m2_tip              # M2TIP
+  ENTRY  VAL  m2_tilt             F32  CONSTANT          -m2_tilt             # M2TILT
+  ENTRY  VAL  env_temperature     F32  CONSTANT          -env_temperature     # external temp
+  ENTRY  VAL  env_humidity        F32  CONSTANT          -env_humidity        # external humidity
+  ENTRY  VAL  env_wind_speed      F32  CONSTANT          -env_wind_speed      # external wind speed
+  ENTRY  VAL  env_wind_dir        F32  CONSTANT          -env_wind_dir        # external wind direction
+  ENTRY  VAL  teltemp_m1          F32  CONSTANT          -teltemp_m1          # Primary mirror temps (C)
+  ENTRY  VAL  teltemp_m1cell      F32  CONSTANT          -teltemp_m1cell      # Primary mirror support temps (C)
+  ENTRY  VAL  teltemp_m2          F32  CONSTANT          -teltemp_m2          # Secondary mirror temps (C
+  ENTRY  VAL  teltemp_spider      F32  CONSTANT          -teltemp_spider      # Spider temperatures (C)
+  ENTRY  VAL  teltemp_truss       F32  CONSTANT          -teltemp_truss       # Mid truss temperatures (C
+  ENTRY  VAL  teltemp_extra       F32  CONSTANT          -teltemp_extra       # Miscellaneous temperatures (C)
+  ENTRY  VAL  sun_angle           F32  CONSTANT          -sun_angle           # Angle to sun
+  ENTRY  VAL  sun_alt             F32  CONSTANT          -sun_alt             # Altitude of sun
+  ENTRY  VAL  moon_angle          F32  CONSTANT          -moon_angle          # Angle to moon
+  ENTRY  VAL  moon_alt            F32  CONSTANT          -moon_alt            # Altitude of moon
+  ENTRY  VAL  moon_phase          F32  CONSTANT          -moon_phase          # Phase of moon
+  ENTRY  VAL  pon_time            F32  CONSTANT          -pon_time            # time since last power on
+  ENTRY  VAL  bg                  F64  ROBUST_MEDIAN     -bg                  # background
+  ENTRY  VAL  bg                  F64  ROBUST_STDEV      -bg_mean_stdev       # Azimuth
+  ENTRY  VAL  bg_stdev            F64  RMS               -bg_stdev            # Azimuth
+END
+
+CHIP_IMFILE METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_MEDIAN    -bg               
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_STDEV     -bg_mean_stdev    
+  ENTRY  VAL  ROBUST_STDEV        F32  RMS              -bg_stdev         
+  ENTRY  VAL  OVER_VAL            F32  ROBUST_MEDIAN    -bias             
+  ENTRY  VAL  OVER_VAL            F32  ROBUST_STDEV     -bias_stdev       
+  ENTRY  VAL  FRINGE_0            F32  RMS              -fringe_0         
+  ENTRY  VAL  FRINGE_RESID_0      F32  RMS              -fringe_1         
+  ENTRY  VAL  FRINGE_ERR_0        F32  RMS              -fringe_2         
+  ENTRY  VAL  APMIFIT             F32  SAMPLE_MEAN      -ap_resid         
+  ENTRY  VAL  DAPMIFIT            F32  RMS              -ap_resid_stdev   
+
+  # image quality stats from the psf model
+  ENTRY  VAL  FWHM_MAJ            F32  SAMPLE_MEAN      -fwhm_major       
+  ENTRY  VAL  FW_MJ_LQ            F32  SAMPLE_MEAN      -fwhm_major_lq       
+  ENTRY  VAL  FW_MJ_UQ            F32  SAMPLE_MEAN      -fwhm_major_uq       
+  ENTRY  VAL  FWHM_MIN            F32  SAMPLE_MEAN      -fwhm_minor       
+  ENTRY  VAL  FW_MN_LQ            F32  SAMPLE_MEAN      -fwhm_minor_lq       
+  ENTRY  VAL  FW_MN_UQ            F32  SAMPLE_MEAN      -fwhm_minor_uq       
+
+  ENTRY  VAL  DT_DET              F32  SUM              -dtime_detrend    
+  ENTRY  VAL  DT_PHOT             F32  SUM              -dtime_photom     
+  ENTRY  VAL  DT_TOTAL            F32  SUM              -dtime_total
+
+  ENTRY  VAL  NSTARS              S32  SUM              -n_stars          
+  ENTRY  VAL  NPSFSTAR            S32  SUM              -n_psfstars          
+  ENTRY  VAL  IQ_NSTAR            S32  SUM              -n_iqstars          
+  ENTRY  VAL  NDET_EXT            S32  SUM              -n_extended       
+  ENTRY  VAL  NDET_CR             S32  SUM              -n_cr             
+
+  # the LQ and UQ values need to be defined for each camera
+  ENTRY  VAL  IQ_FW1              F32  SAMPLE_MEAN      -iq_fwhm_major            
+  ENTRY  VAL  IQ_FW1_E            F32  RMS              -iq_fwhm_major_err
+  ENTRY  VAL  IQ_FW2              F32  SAMPLE_MEAN      -iq_fwhm_minor
+  ENTRY  VAL  IQ_FW2_E            F32  RMS              -iq_fwhm_minor_err
+
+  ENTRY  VAL  IQ_M2               F32  SAMPLE_MEAN      -iq_m2            
+  ENTRY  VAL  IQ_M2_ER            F32  RMS              -iq_m2_err        
+  ENTRY  VAL  IQ_M2_LQ            F32  SAMPLE_MEAN      -iq_m2_lq            
+  ENTRY  VAL  IQ_M2_UQ            F32  SAMPLE_MEAN      -iq_m2_uq            
+  
+  ENTRY  VAL  IQ_M3               F32  SAMPLE_MEAN      -iq_m3            
+  ENTRY  VAL  IQ_M3_ER            F32  RMS              -iq_m3_err        
+  ENTRY  VAL  IQ_M3_LQ            F32  SAMPLE_MEAN      -iq_m3_lq            
+  ENTRY  VAL  IQ_M3_UQ            F32  SAMPLE_MEAN      -iq_m3_uq            
+  
+  ENTRY  VAL  IQ_M4               F32  SAMPLE_MEAN      -iq_m4            
+  ENTRY  VAL  IQ_M4_ER            F32  RMS              -iq_m4_err        
+  ENTRY  VAL  IQ_M4_LQ            F32  SAMPLE_MEAN      -iq_m4_lq            
+  ENTRY  VAL  IQ_M4_UQ            F32  SAMPLE_MEAN      -iq_m4_uq            
+  
+  ENTRY  VAL  IQ_M2C              F32  SAMPLE_MEAN      -iq_m2c            
+  ENTRY  VAL  IQ_M2C_E            F32  RMS              -iq_m2c_err        
+  ENTRY  VAL  IQ_M2C_L            F32  SAMPLE_MEAN      -iq_m2c_lq            
+  ENTRY  VAL  IQ_M2C_U            F32  SAMPLE_MEAN      -iq_m2c_uq            
+  
+  ENTRY  VAL  IQ_M2S              F32  SAMPLE_MEAN      -iq_m2s            
+  ENTRY  VAL  IQ_M2S_E            F32  RMS              -iq_m2s_err        
+  ENTRY  VAL  IQ_M2S_L            F32  SAMPLE_MEAN      -iq_m2s_lq            
+  ENTRY  VAL  IQ_M2S_U            F32  SAMPLE_MEAN      -iq_m2s_uq            
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+
+  # Revision values
+  ENTRY	 VAL  PSLIB_V		  STR  CONSTANT		-ver_pslib
+  ENTRY  VAL  MODULE_V		  STR  CONSTANT		-ver_psmodules
+  ENTRY	 VAL  PHOT_V		  STR  CONSTANT		-ver_psphot
+  ENTRY	 VAL  ASTRO_V		  STR  CONSTANT		-ver_psastro
+  ENTRY	 VAL  STATS_V		  STR  CONSTANT		-ver_ppstats
+  ENTRY	 VAL  IMAGE_V		  STR  CONSTANT		-ver_ppimage
+  ENTRY	 VAL  STREAK_V		  STR  CONSTANT		-ver_streaks
+  
+  # Mask stats values
+  ENTRY VAL MASKFRAC_NPIX	  S32  CONSTANT		-maskfrac_npix
+  ENTRY VAL MASKFRAC_STATIC	  F32  CONSTANT		-maskfrac_static
+  ENTRY VAL MASKFRAC_DYNAMIC	  F32  CONSTANT		-maskfrac_dynamic
+  ENTRY VAL MASKFRAC_MAGIC	  F32  CONSTANT		-maskfrac_magic
+  ENTRY VAL MASKFRAC_ADVISORY	  F32  CONSTANT		-maskfrac_advisory
+
+  # Detection Efficiency
+  ENTRY  VAL  DETEFF.MAGREF       F32  CONSTANT         -deteff_magref            
+END
+
+CAMERA_EXP_IMFILE METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  bg                  F32  ROBUST_MEDIAN    -bg               
+  ENTRY  VAL  bg                  F32  ROBUST_STDEV     -bg_mean_stdev    
+  ENTRY  VAL  bg_stdev            F32  RMS              -bg_stdev         
+  ENTRY  VAL  bias                F32  ROBUST_MEDIAN    -bias             
+  ENTRY  VAL  bias_stdev          F32  RMS              -bias_stdev       
+  ENTRY  VAL  fringe_0            F32  ROBUST_MEDIAN    -fringe_0         
+  ENTRY  VAL  fringe_1            F32  RMS              -fringe_1         
+  ENTRY  VAL  fringe_2            F32  ROBUST_STDEV     -fringe_2         
+  ENTRY  VAL  ap_resid            F32  ROBUST_MEDIAN    -ap_resid         
+  ENTRY  VAL  ap_resid_stdev      F32  RMS              -ap_resid_stdev   
+  ENTRY  VAL  fwhm_major          F32  ROBUST_MEDIAN    -fwhm_major       
+  ENTRY  VAL  fwhm_major          F32  UQ               -fwhm_major_uq       
+  ENTRY  VAL  fwhm_major          F32  LQ               -fwhm_major_lq       
+  ENTRY  VAL  fwhm_minor          F32  ROBUST_MEDIAN    -fwhm_minor       
+  ENTRY  VAL  fwhm_minor          F32  UQ               -fwhm_minor_uq       
+  ENTRY  VAL  fwhm_minor          F32  LQ               -fwhm_minor_lq       
+  ENTRY  VAL  n_stars             S32  SUM              -n_stars          
+  ENTRY  VAL  n_psfstars          S32  SUM              -n_psfstars          
+  ENTRY  VAL  n_iqstars           S32  SUM              -n_iqstars          
+  ENTRY  VAL  n_extended          S32  SUM              -n_extended       
+  ENTRY  VAL  n_cr                S32  SUM              -n_cr             
+
+  # the LQ and UQ values need to be defined for each camera
+  ENTRY  VAL  iq_fwhm_major       F32  ROBUST_MEDIAN    -iq_fwhm_major
+  ENTRY  VAL  iq_fwhm_major_err   F32  RMS              -iq_fwhm_major_err
+  ENTRY  VAL  iq_fwhm_minor       F32  ROBUST_MEDIAN    -iq_fwhm_minor
+  ENTRY  VAL  iq_fwhm_minor_err   F32  RMS              -iq_fwhm_minor_err
+  	                
+  ENTRY  VAL  iq_m2               F32  ROBUST_MEDIAN    -iq_m2            
+  ENTRY  VAL  iq_m2_err           F32  RMS              -iq_m2_err        
+  ENTRY  VAL  iq_m2               F32  UQ               -iq_m2_uq            
+  ENTRY  VAL  iq_m2               F32  LQ               -iq_m2_lq            
+  	                
+  ENTRY  VAL  iq_m3               F32  ROBUST_MEDIAN    -iq_m3            
+  ENTRY  VAL  iq_m3_err           F32  RMS              -iq_m3_err        
+  ENTRY  VAL  iq_m3               F32  UQ               -iq_m3_uq            
+  ENTRY  VAL  iq_m3               F32  LQ               -iq_m3_lq            
+  	                
+  ENTRY  VAL  iq_m4               F32  ROBUST_MEDIAN    -iq_m4            
+  ENTRY  VAL  iq_m4_err           F32  RMS              -iq_m4_err        
+  ENTRY  VAL  iq_m4               F32  UQ               -iq_m4_uq            
+  ENTRY  VAL  iq_m4               F32  LQ               -iq_m4_lq            
+  	                
+  ENTRY  VAL  iq_m2c              F32  ROBUST_MEDIAN    -iq_m2c            
+  ENTRY  VAL  iq_m2c_err          F32  RMS              -iq_m2c_err        
+  ENTRY  VAL  iq_m2c              F32  UQ               -iq_m2c_uq            
+  ENTRY  VAL  iq_m2c              F32  LQ               -iq_m2c_lq            
+  	                
+  ENTRY  VAL  iq_m2s              F32  ROBUST_MEDIAN    -iq_m2s            
+  ENTRY  VAL  iq_m2s_err          F32  RMS              -iq_m2s_err        
+  ENTRY  VAL  iq_m2s              F32  UQ               -iq_m2s_uq            
+  ENTRY  VAL  iq_m2s              F32  LQ               -iq_m2s_lq            
+
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+
+  # Revision values
+  ENTRY	 VAL  PSLIB_V		  STR  CONSTANT		-ver_pslib
+  ENTRY  VAL  MODULE_V		  STR  CONSTANT		-ver_psmodules
+  ENTRY	 VAL  PHOT_V		  STR  CONSTANT		-ver_psphot
+  ENTRY	 VAL  ASTRO_V		  STR  CONSTANT		-ver_psastro
+  ENTRY	 VAL  STATS_V		  STR  CONSTANT		-ver_ppstats
+  ENTRY	 VAL  IMAGE_V		  STR  CONSTANT		-ver_ppimage
+  ENTRY	 VAL  STREAK_V		  STR  CONSTANT		-ver_streaks
+
+  # Detection Efficiency
+  ENTRY  VAL  deteff_inst         F64  ROBUST_MEDIAN    -deteff_inst            
+  ENTRY  VAL  deteff_inst         F64  ROBUST_STDEV     -deteff_inst_err            
+  ENTRY  VAL  deteff_inst         F64  UQ               -deteff_inst_uq            
+  ENTRY  VAL  deteff_inst         F64  LQ               -deteff_inst_lq            
+END
+
+CAMERA_EXP_FPA METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  CERROR              F32  RMS              -sigma_ra          
+  ENTRY  VAL  CERROR              F32  SAMPLE_MEDIAN    -sigma_dec         
+  ENTRY  VAL  DT_ASTR             F32  SUM              -dtime_astrom      
+  ENTRY  VAL  NASTRO              S32  SUM              -n_astrom          
+  ENTRY  VAL  ASTROM_CHIPS        U64  BITWISEOR        -astrom_chips
+
+  ENTRY  VAL  AST_R0              F32  CONSTANT         -ast_r0
+  ENTRY  VAL  AST_D0              F32  CONSTANT         -ast_d0
+  ENTRY  VAL  AST_T0              F32  CONSTANT         -ast_t0
+  ENTRY  VAL  AST_S0              F32  CONSTANT         -ast_s0
+  ENTRY  VAL  AST_RS              F32  CONSTANT         -ast_rs
+  ENTRY  VAL  AST_DS              F32  CONSTANT         -ast_ds
+
+  ENTRY  VAL  ZPT_OBS             F32  SAMPLE_MEAN      -zpt_obs
+  ENTRY  VAL  ZPT_ERR             F32  RMS              -zpt_err
+  ENTRY  VAL  ZPT_UQ              F32  UQ               -zpt_uq
+  ENTRY  VAL  ZPT_LQ              F32  LQ               -zpt_lq
+
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+
+  # Revision values
+  ENTRY	 VAL  PSLIB_V		  STR  CONSTANT		-ver_pslib
+  ENTRY  VAL  MODULE_V		  STR  CONSTANT		-ver_psmodules
+  ENTRY	 VAL  PHOT_V		  STR  CONSTANT		-ver_psphot
+  ENTRY	 VAL  ASTRO_V		  STR  CONSTANT		-ver_psastro
+  ENTRY	 VAL  STATS_V		  STR  CONSTANT		-ver_ppstats
+  ENTRY	 VAL  IMAGE_V		  STR  CONSTANT		-ver_ppimage
+  ENTRY	 VAL  STREAK_V		  STR  CONSTANT		-ver_streaks
+
+  # Mask stats values
+  ENTRY VAL MASKFRAC_REF_NPIX	  S32  CONSTANT		-maskfrac_ref_npix
+  ENTRY VAL MASKFRAC_REF_STATIC	  F32  CONSTANT		-maskfrac_ref_static
+  ENTRY VAL MASKFRAC_REF_DYNAMIC  F32  CONSTANT		-maskfrac_ref_dynamic
+  ENTRY VAL MASKFRAC_REF_MAGIC	  F32  CONSTANT		-maskfrac_ref_magic
+  ENTRY VAL MASKFRAC_REF_ADVISORY F32  CONSTANT		-maskfrac_ref_advisory
+
+  ENTRY VAL MASKFRAC_MAX_NPIX	  S32  CONSTANT		-maskfrac_max_npix
+  ENTRY VAL MASKFRAC_MAX_STATIC	  F32  CONSTANT		-maskfrac_max_static
+  ENTRY VAL MASKFRAC_MAX_DYNAMIC  F32  CONSTANT		-maskfrac_max_dynamic
+  ENTRY VAL MASKFRAC_MAX_MAGIC	  F32  CONSTANT		-maskfrac_max_magic
+  ENTRY VAL MASKFRAC_MAX_ADVISORY F32  CONSTANT		-maskfrac_max_advisory
+END
+
+WARP_SKYCELL METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_MEDIAN     -bg            
+  ENTRY  VAL  ROBUST_STDEV        F32  RMS               -bg_stdev      
+  ENTRY  VAL  DT_WARP             F32  SUM               -dtime_warp    
+  ENTRY  VAL  GOOD_PIXEL_FRAC     F32  SAMPLE_MEAN       -good_frac     
+  ENTRY  VAL  RANGE.XMIN          S32  CONSTANT          -xmin          
+  ENTRY  VAL  RANGE.XMAX          S32  CONSTANT          -xmax          
+  ENTRY  VAL  RANGE.YMIN          S32  CONSTANT          -ymin          
+  ENTRY  VAL  RANGE.YMAX          S32  CONSTANT          -ymax          
+  ENTRY  VAL  ACCEPT              BOOL CONSTANT          -accept
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+
+  # Revision values
+  ENTRY	 VAL  PSLIB_V		  STR  CONSTANT		-ver_pslib
+  ENTRY  VAL  MODULE_V		  STR  CONSTANT		-ver_psmodules
+  ENTRY	 VAL  PHOT_V		  STR  CONSTANT		-ver_psphot
+  ENTRY	 VAL  STATS_V		  STR  CONSTANT		-ver_ppstats
+  ENTRY	 VAL  WARP_V		  STR  CONSTANT		-ver_pswarp
+  ENTRY	 VAL  STREAK_V		  STR  CONSTANT		-ver_streaks
+
+  # Mask stats values
+  ENTRY VAL MASKFRAC_NPIX	  S32  CONSTANT		-maskfrac_npix
+  ENTRY VAL MASKFRAC_STATIC	  F32  CONSTANT		-maskfrac_static
+  ENTRY VAL MASKFRAC_DYNAMIC	  F32  CONSTANT		-maskfrac_dynamic
+  ENTRY VAL MASKFRAC_MAGIC	  F32  CONSTANT		-maskfrac_magic
+  ENTRY VAL MASKFRAC_ADVISORY	  F32  CONSTANT		-maskfrac_advisory
+
+END
+
+
+BACKGROUND_CHIP	METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+
+  # Revision values
+  ENTRY	 VAL  PSLIB_V		  STR  CONSTANT		-ver_pslib
+  ENTRY  VAL  MODULE_V		  STR  CONSTANT		-ver_psmodules
+  ENTRY	 VAL  STATS_V		  STR  CONSTANT		-ver_ppstats
+
+END
+
+BACKGROUND_WARP	METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_MEDIAN     -bg            
+  ENTRY  VAL  ROBUST_STDEV        F32  RMS               -bg_stdev      
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+
+  # Revision values
+  ENTRY	 VAL  PSLIB_V		  STR  CONSTANT		-ver_pslib
+  ENTRY  VAL  MODULE_V		  STR  CONSTANT		-ver_psmodules
+  ENTRY	 VAL  STATS_V		  STR  CONSTANT		-ver_ppstats
+  ENTRY	 VAL  WARP_V		  STR  CONSTANT		-ver_pswarp
+
+  # Mask stats values
+  ENTRY VAL MASKFRAC_NPIX	  S32  CONSTANT		-maskfrac_npix
+  ENTRY VAL MASKFRAC_STATIC	  F32  CONSTANT		-maskfrac_static
+  ENTRY VAL MASKFRAC_DYNAMIC	  F32  CONSTANT		-maskfrac_dynamic
+  ENTRY VAL MASKFRAC_MAGIC	  F32  CONSTANT		-maskfrac_magic
+  ENTRY VAL MASKFRAC_ADVISORY	  F32  CONSTANT		-maskfrac_advisory
+END
+
+
+STACK_SKYCELL METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_MEDIAN     -bg                            
+  ENTRY  VAL  ROBUST_STDEV        F32  RMS               -bg_stdev                      
+  ENTRY  VAL  TIME_STACK          F32  SUM               -dtime_stack                   
+  ENTRY  VAL  TIME_MATCH          F32  SAMPLE_MEAN       -dtime_match_mean              
+  ENTRY  VAL  TIME_MATCH          F32  SAMPLE_STDEV      -dtime_match_stdev             
+  ENTRY  VAL  TIME_INITIAL        F32  SUM               -dtime_initial                 
+  ENTRY  VAL  TIME_REJECT         F32  SUM               -dtime_reject                  
+  ENTRY  VAL  TIME_FINAL          F32  SUM               -dtime_final                   
+  ENTRY  VAL  TIME_CONVOLVE       F32  SUM               -dtime_convolve
+  ENTRY  VAL  TIME_PHOT           F32  SUM               -dtime_phot                    
+  ENTRY  VAL  STAMP.MEAN          F32  SAMPLE_MEAN       -match_mean                    
+  ENTRY  VAL  STAMP.MEAN          F32  SAMPLE_STDEV      -match_stdev                   
+  ENTRY  VAL  STAMP.RMS           F32  RMS               -match_rms                     
+  ENTRY  VAL  STAMP.NUM           F32  SAMPLE_MEAN       -stamps_mean                   
+  ENTRY  VAL  STAMP.NUM           F32  SAMPLE_STDEV      -stamps_stdev                  
+  ENTRY  VAL  STAMP.NUM           S32  MIN               -stamps_min                    
+  ENTRY  VAL  TIME_PHOT           F32  SUM               -dtime_phot                    
+  ENTRY  VAL  REJECT_IMAGES       S32  SUM               -reject_images                 
+  ENTRY  VAL  REJECT_PIXELS       F32  SAMPLE_MEAN       -reject_pix_mean               
+  ENTRY  VAL  REJECT_PIXELS       F32  SAMPLE_STDEV      -reject_pix_stdev              
+  ENTRY  VAL  NUM_SOURCES         S32  SUM               -sources                       
+  ENTRY  VAL  GOOD_PIXEL_FRAC     F32  MEAN              -good_frac                     
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+  ENTRY  VAL  MJD_OBS             F64  CONSTANT          -mjd_obs
+
+  # Revision values
+  ENTRY	 VAL  PSLIB_V		  STR  CONSTANT		-ver_pslib
+  ENTRY  VAL  MODULE_V		  STR  CONSTANT		-ver_psmodules
+  ENTRY	 VAL  PHOT_V		  STR  CONSTANT		-ver_psphot
+  ENTRY	 VAL  STATS_V		  STR  CONSTANT		-ver_ppstats
+  ENTRY	 VAL  STACK_V		  STR  CONSTANT		-ver_ppstack
+  ENTRY	 VAL  STREAK_V		  STR  CONSTANT		-ver_streaks
+END
+
+DIFF_SKYCELL METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD               TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_MEDIAN          F32  ROBUST_MEDIAN     -bg             
+  ENTRY  VAL  ROBUST_STDEV           F32  RMS               -bg_stdev       
+  ENTRY  VAL  TIME_DIFF              F32  SUM               -dtime_diff     
+  ENTRY  VAL  TIME_MATCH             F32  SUM               -dtime_match    
+  ENTRY  VAL  TIME_PHOT              F32  SUM               -dtime_phot 
+  ENTRY  VAL  SUBTRACTION.STAMPS     S32  SAMPLE_MEAN       -stamps_num     
+  ENTRY  VAL  SUBTRACTION.DEV.MEAN   F32  SAMPLE_MEAN       -stamps_mean    
+  ENTRY  VAL  SUBTRACTION.DEV.RMS    F32  SAMPLE_MEAN       -stamps_rms     
+  ENTRY  VAL  SUBTRACTION.NORM       F32  SAMPLE_MEAN       -norm           
+  ENTRY  VAL  SUBTRACTION.BGDIFF     F32  SAMPLE_MEAN       -bg_diff        
+  ENTRY  VAL  SUBTRACTION.MX         F32  SAMPLE_MEAN       -kernel_x       
+  ENTRY  VAL  SUBTRACTION.MY         F32  SAMPLE_MEAN       -kernel_y       
+  ENTRY  VAL  SUBTRACTION.MXX        F32  SAMPLE_MEAN       -kernel_xx      
+  ENTRY  VAL  SUBTRACTION.MXY        F32  SAMPLE_MEAN       -kernel_xy      
+  ENTRY  VAL  SUBTRACTION.MYY        F32  SAMPLE_MEAN       -kernel_yy      
+  ENTRY  VAL  SUBTRACTION.DECONV.MAX F32  SAMPLE_MEAN       -deconv_max
+  ENTRY  VAL  NUM_SOURCES            S32  SUM               -sources        
+  ENTRY  VAL  GOOD_PIXEL_FRAC        F32  MEAN              -good_frac      
+  ENTRY  VAL  QUALITY                S32  CONSTANT          -quality             # Bad quality flag
+
+  # Revision values
+  ENTRY	 VAL  PSLIB_V		  STR  CONSTANT		-ver_pslib
+  ENTRY  VAL  MODULE_V		  STR  CONSTANT		-ver_psmodules
+  ENTRY	 VAL  PHOT_V		  STR  CONSTANT		-ver_psphot
+  ENTRY	 VAL  STATS_V		  STR  CONSTANT		-ver_ppstats
+  ENTRY	 VAL  PPSUB_V		  STR  CONSTANT		-ver_ppsub	
+  ENTRY	 VAL  STREAK_V		  STR  CONSTANT		-ver_streaks
+
+  # Mask stats values
+  ENTRY VAL MASKFRAC_NPIX	  S32  CONSTANT		-maskfrac_npix
+  ENTRY VAL MASKFRAC_STATIC	  F32  CONSTANT		-maskfrac_static
+  ENTRY VAL MASKFRAC_DYNAMIC	  F32  CONSTANT		-maskfrac_dynamic
+  ENTRY VAL MASKFRAC_MAGIC	  F32  CONSTANT		-maskfrac_magic
+  ENTRY VAL MASKFRAC_ADVISORY	  F32  CONSTANT		-maskfrac_advisory
+END
+
+FPCAMERA_EXP METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ZPT_OBS             F32  SAMPLE_MEAN      -zpt_obs
+  ENTRY  VAL  ZPT_ERR             F32  RMS              -zpt_err
+  ENTRY  VAL  ZPT_UQ              F32  UQ               -zpt_uq
+  ENTRY  VAL  ZPT_LQ              F32  LQ               -zpt_lq
+  ENTRY  VAL  NDET                S32  SUM              -n_stars          
+
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+
+  # Revision values
+  ENTRY	 VAL  FPCAM_V		  STR  CONSTANT		-ver_fpcamera
+END
+
+# values to extract from output metadata and the stats to calculate
+# XXX -bg_mean_stdev should take rms of bg_mean_stdev if bg_mean_stdev != 0 (A)
+# XXX -bg_mean_stdev should take stdev of bg_mean if bg_mean_stdev == 0     (B)
+# XXX  (A) if imfile.Ncomp > 1, (B) if imfile.Ncomp == 1
+
+DETREND_PROCESS_IMFILE METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_MEDIAN     -bg
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_STDEV      -bg_mean_stdev
+  ENTRY  VAL  ROBUST_STDEV        F32  RMS               -bg_stdev
+END
+
+DETREND_PROCESS_EXP METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  bg                  F64  ROBUST_MEDIAN     -bg
+  ENTRY  VAL  bg                  F64  ROBUST_STDEV      -bg_mean_stdev
+  ENTRY  VAL  bg_stdev            F64  RMS               -bg_stdev
+END
+
+DETREND_STACK METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_MEDIAN     -bg
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_STDEV      -bg_mean_stdev
+  ENTRY  VAL  ROBUST_STDEV        F32  RMS               -bg_stdev
+END
+
+DETREND_NORM_EXP METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  bg                  F64  ROBUST_MEDIAN     -bg
+  ENTRY  VAL  bg                  F64  ROBUST_STDEV      -bg_mean_stdev
+  ENTRY  VAL  bg_stdev            F64  RMS               -bg_stdev
+END
+
+DETREND_NORM_APPLY METADATA
+  ENTRY MULTI
+
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_MEDIAN     -bg
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_STDEV      -bg_mean_stdev
+  ENTRY  VAL  ROBUST_STDEV        F32  RMS               -bg_stdev
+END
+
+DETREND_RESID_IMFILE METADATA
+  ENTRY MULTI
+  
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_MEDIAN     -bg                
+  ENTRY  VAL  ROBUST_MEDIAN       F32  ROBUST_STDEV      -bg_mean_stdev     
+  ENTRY  VAL  SAMPLE_SKEWNESS     F32  ROBUST_MEDIAN     -bg_skewness       
+  ENTRY  VAL  SAMPLE_KURTOSIS     F32  ROBUST_MEDIAN     -bg_kurtosis       
+  ENTRY  VAL  FRINGE_0            F32  ROBUST_MEDIAN     -fringe_0          
+  ENTRY  VAL  FRINGE_0            F32  ROBUST_STDEV      -fringe_2          
+  ENTRY  VAL  FRINGE_RESID_0      F32  ROBUST_MEDIAN     -fringe_resid_0    
+  ENTRY  VAL  FRINGE_RESID_0      F32  ROBUST_STDEV      -fringe_resid_2    
+  ENTRY  VAL  ROBUST_STDEV        F32  RMS               -bg_stdev          
+  ENTRY  VAL  FRINGE_RESID_ERR_0  F32  RMS               -fringe_resid_1    
+  ENTRY  VAL  FRINGE_ERR_0        F32  RMS               -fringe_1          
+END
+
+DETREND_RESID_IMFILE_BINNED METADATA
+  ENTRY MULTI
+  
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  ROBUST_STDEV        F32  RMS               -bin_stdev          
+END
+
+DETREND_RESID_EXP METADATA
+  ENTRY MULTI
+  
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  bg                  F64  ROBUST_MEDIAN     -bg           
+  ENTRY  VAL  bg                  F64  ROBUST_STDEV      -bg_mean_stdev
+  ENTRY  VAL  bg_stdev            F64  RMS               -bg_stdev     
+  ENTRY  VAL  bg_skewness         F64  ROBUST_MEDIAN     -bg_skewness  
+  ENTRY  VAL  bg_kurtosis         F64  ROBUST_MEDIAN     -bg_kurtosis  
+  ENTRY  VAL  bin_stdev           F64  RMS               -bin_stdev    
+  ENTRY  VAL  fringe_0            F64  ROBUST_MEDIAN     -fringe_0     
+  ENTRY  VAL  fringe_1            F64  RMS               -fringe_1     
+  ENTRY  VAL  fringe_2            F64  ROBUST_STDEV      -fringe_2     
+  ENTRY  VAL  user_1              F64  ROBUST_MEDIAN     -user_1       
+  ENTRY  VAL  user_2              F64  RMS               -user_2       
+  ENTRY  VAL  user_1              F64  ROBUST_STDEV      -user_3       
+END
+
+STREAKSREMOVE METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  STREAK_FRACTION     F32  CONSTANT          -streak_frac # fraction of pixels masked by streaks
+  ENTRY  VAL  NONDIFFED_FRACTION  F32  CONSTANT          -nondiff_frac # fraction of pixels not included in input diffs
+  ENTRY  VAL  TOTAL_TIME          F32  CONSTANT          -run_time    # total run time for streaksremove
+
+  # The following timers are included in the stats not saved in the datbase
+# ENTRY  VAL  GET_STREAK_PIXELS   F32  CONSTANT          -dtime_compute_masked  # time to compute list of streak pixels
+# ENTRY  VAL  REMOVE_STREAKS      F32  CONSTANT          -dtime_remove # time to mask the pixels
+# ENTRY  VAL  WRITE_IMAGES        F32  CONSTANT          -dtime_write  # time to write out the results
+# ENTRY  VAL  REPLICATE_OUTPUTS   F32  CONSTANT          -dtime_replicate  # time to replicate the outputs
+END
+
+STATICSKY_CAL METADATA
+  ENTRY MULTI
+  TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
+  ENTRY  VAL  CERROR              F32  CONSTANT         -sigma_ra          
+  ENTRY  VAL  CERROR              F32  CONSTANT         -sigma_dec         
+  ENTRY  VAL  DT_ASTR             F32  CONSTANT         -dtime_astrom      
+  ENTRY  VAL  NASTRO              S32  CONSTANT         -n_astrom          
+  ENTRY  VAL  NDET                S32  CONSTANT         -n_detections
+  ENTRY  VAL  NDET_EXT            S32  CONSTANT         -n_extended
+  ENTRY  VAL  NDET_FRC            S32  CONSTANT         -n_forced
+
+  ENTRY  VAL  ZPT_OBS             F32  CONSTANT         -zpt_obs
+  ENTRY  VAL  ZPT_ERR             F32  CONSTANT         -zpt_stdev
+  # don't know why these come out as F64 instead of F32
+  ENTRY  VAL  FWHM_MAJ            F64  CONSTANT         -fwhm_major
+  ENTRY  VAL  FWHM_MIN            F64  CONSTANT         -fwhm_minor
+
+  ENTRY  VAL  QUALITY             S32  CONSTANT          -quality             # Bad quality flag
+
+  # Revision values
+  ENTRY	 VAL  PSLIB_V		  STR  CONSTANT		-ver_pslib
+  ENTRY  VAL  MODULE_V		  STR  CONSTANT		-ver_psmodules
+  ENTRY	 VAL  PHOT_V		  STR  CONSTANT		-ver_psphot
+  ENTRY	 VAL  ASTRO_V		  STR  CONSTANT		-ver_psastro
+  ENTRY	 VAL  STATS_V		  STR  CONSTANT		-ver_ppstats
+#   ENTRY	 VAL  IMAGE_V		  STR  CONSTANT		-ver_ppimage
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppSub.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppSub.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppSub.config	(revision 42661)
@@ -0,0 +1,383 @@
+### Recipe file for ppSub
+
+KERNEL.TYPE	STR	ISIS     	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+KERNEL.SIZE     S32	20		# Kernel half-size (pixels)
+SPATIAL.ORDER   S32	1		# Spatial polynomial order
+REGION.SIZE	F32	0		# Iso-kernel region size (pixels)
+SOURCE.RADIUS	F32	3.0		# Source matching radius (pixels)
+STAMP.SPACING   F32	200		# Typical spacing between stamps (pixels)
+STAMP.FOOTPRINT S32	20		# Size of stamps (pixels)
+STAMP.THRESHOLD F32	5		# Flux threshold for stamps (stdev above background)
+STRIDE		S32	128		# Size of convolution patches (pixels)
+ITER            S32	2		# Number of rejection iterations
+REJ             F32	2.5		# Rejection level (std dev)
+KERNEL.ERR	F32	0.05		# Relative systematic error in kernel
+SYS.ERR		F32	0.1		# Relative systematic error in images
+SKY.ERR		F32	0.0		# Relative systematic error in images
+NORM.FRAC	F32	0.02		# Fraction of window for normalisation window
+COVAR.FRAC	F32	0.01		# Fraction of kernel to truncate before calculating covariance
+APPLY.PIXELNAN	BOOL	TRUE		# Apply NAN'ing of pixels underneath masks
+
+MASK.VAL	STR	MASK.VALUE,CONV.BAD	# Mask value for input
+MASK.BAD        STR	CONV.BAD	# Mask value to give bad pixels
+MASK.POOR       STR	CONV.POOR	# Mask value to give poor pixels
+MASK.BLANK      STR	BLANK           # Mask value to give empty pixels
+
+MASK.STATS         BOOL    TRUE            # calculate mask statistics.
+MASKSTAT.STATIC     U32 0x01f
+MASKSTAT.DYNAMIC    U32 0x060
+MASKSTAT.MAGIC      U32 0x800
+MASKSTAT.ADVISORY   U32 0x080
+
+INPUT.MATCH.RADIUS F32  50.0
+INPUT.MATCH.MIN.SN F32  10.0
+
+ADD.NOT.SUBTRACT BOOL   FALSE           # add the images instead of subtracting (ie, image + ref, not image - ref)
+
+LOW.THRESHOLD	F32	20.0	        # Mask pixels below this threshold (std dev)
+POOR.FRACTION	F32	0.20		# Maximum fraction of bad weight for poor pixels
+BADFRAC		F32	0.95		# Maximum fraction of bad pixels
+
+# photpipe kernels
+@ISIS.WIDTHS	F32	1.5  3.0  6.0   # Gaussian kernel FWHM values
+@ISIS.ORDERS	S32	6    4    2     # Polynomial orders for ISIS kernels
+
+#@ISIS.WIDTHS	F32	2.4  5.0  10.0  # Gaussian kernel FWHM values
+#@ISIS.ORDERS	S32	6    4    2     # Polynomial orders for ISIS kernels
+
+# for autoscaling, the above kernel widths are multiplied by the factor max(FWHM_1,FWHM_2) / SCALE.REF
+SCALE		BOOL	TRUE		# Scale kernel parameters by the seeing?
+SCALE.REF	F32     5.0		# FWHM reference for kernel parameter scaling
+SCALE.MIN	F32	0.5		# Minimum scale value
+SCALE.MAX	F32	2.0		# Maximum scale value
+
+SPAM.BINNING	S32	2		# Binning in outer region for SPAM kernels
+INNER		S32	5		# Inner half-size for SPAM and FRIES kernels
+RINGS.ORDER	S32	2		# Polynomial order for RINGS kernels
+PENALTY		F32	1.0		# 4.0e-6 for the updated code from 2010.09.19
+BIN1		S32	16		# Binning factor for first level
+BIN2		S32	16		# Binning factor for second level
+
+OPTIMUM		BOOL	FALSE		# Derive optimum parameters for ISIS and GUNK kernels
+OPTIMUM.MIN	F32	1.0		# Minimum width for optimum FWHM search
+OPTIMUM.MAX	F32	11.0		# Maximum width for optimum FWHM search
+OPTIMUM.STEP	F32	1.0		# Step in width for optimum FWHM search
+OPTIMUM.TOL	F32	3.0e-3		# Maximum difference in chi^2 between iterations to settle for
+OPTIMUM.ORDER	S32	2		# Maximum polynomial order for optimum search
+
+RENORM		BOOL	TRUE		# Renormalise weight maps?
+RENORM.NUM	S32	100000		# Number of samples for renormalisation
+RENORM.MIN	F32	0.2		# Minimum value for renormalization
+RENORM.MAX	F32	5.0		# Maximum value for renormalization
+
+INTERPOLATION	STR	LANCZOS3	# Interpolation mode for bad pixels
+
+DUAL		BOOL	FALSE		# Dual convolution?
+CONVOLVE.TARGET STR     SINGLE1		# convolution direction
+INVERSE		BOOL	FALSE		# Generate inverse subtraction?
+PHOTOMETRY	BOOL	FALSE		# Perform photometry?
+NOCONVOLVE      BOOL    FALSE           # Skip convolution?
+CHIP.MAP.FROM.POSITIVE BOOL FALSE       # use the warp for the chipmap, not subtrahend
+
+FORCED.PHOTOMETRY.BOTH BOOL FALSE       # forced photometry on input sources?
+FORCED.PHOTOMETRY.INPUT1 BOOL FALSE       # forced photometry on input sources?
+FORCED.PHOTOMETRY.INPUT2 BOOL FALSE       # forced photometry on input sources?
+
+# Recipe overrides for STACK
+STACK	METADATA
+	SYS.ERR         F32     0.0      # current use of SYS.ERR not appropriate for stacks
+END
+
+STACK_1DG METADATA
+	SYS.ERR		F32	0.0	 # current use of SYS.ERR not appropriate for stacks
+	KERNEL.TYPE	STR	SIMPLE	 # Use 1D Gaussian convolution.
+END	
+
+# Recipe overrides for DIFF
+DIFF	METADATA
+	DUAL		BOOL	TRUE	# Dual convolution?
+	INVERSE		BOOL	TRUE	# Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+
+	# penalty of 1.0
+	# DUAL convolution is more sensitive to the number of kernels
+	# do not provide as many orders as for SINGLE
+        # @ISIS.WIDTHS	F32	2.4  5.0  10.0  # Gaussian kernel FWHM values
+	@ISIS.WIDTHS	F32	1.5  3.0  6.0   # Gaussian kernel FWHM values
+	# @ISIS.WIDTHS	F32	2.0  3.0  5.0   # Gaussian kernel FWHM values
+        # @ISIS.WIDTHS	F32	2.1  4.2  8.4   # Gaussian kernel FWHM values
+	@ISIS.ORDERS	S32	2    2    2     # Polynomial orders for ISIS kernels
+
+	SCALE.REF	F32     5.0		# FWHM reference for kernel parameter scaling
+	KERNEL.SIZE     S32	15		# Kernel half-size (pixels)
+	STAMP.FOOTPRINT S32	15		# Size of stamps (pixels)
+
+        PENALTY         F32     0.01             # adjust to limit excessive conv for ut20181219
+END
+
+DIFF_1DG  METADATA
+	  KERNEL.TYPE	STR	SIMPLE	# Use 1D Gaussian Convolution
+	  DUAL		BOOL	TRUE    # Dual convolution?
+	  INVERSE	BOOL	TRUE	# Generate inverse subtraction?
+	  PHOTOMETRY	BOOL	TRUE	# Perform photometry
+
+	  # This is not really used with the SIMPLE kernel
+	  SCALE.REF	F32	5.0 	# FWHM reference for kernel parameter scalinng
+	  KERNEL.SIZE	S32	15	# Kernel half-size (pixels);
+	  STAMP.FOOTPRINT S32	15	# Size of stamps (pixels);
+END
+
+# test setup for nodual case
+DIFF_NODUAL    METADATA   
+        DUAL             BOOL    FALSE    # Dual convolution?
+        INVERSE          BOOL    TRUE    # Generate inverse subtraction?
+        PHOTOMETRY       BOOL    TRUE    # Perform photometry?
+        CONVOLVE.TARGET  STR     SINGLE_AUTO
+
+        @ISIS.WIDTHS    F32     1.5  3.0  6.0   # Gaussian kernel FWHM values
+        @ISIS.ORDERS    S32     6    4    2     # Polynomial orders for ISIS kernels
+
+        SCALE.REF       F32     5.0             # FWHM reference for kernel parameter scaling
+        KERNEL.SIZE     S32     20              # Kernel half-size (pixels)
+        STAMP.FOOTPRINT S32     20              # Size of stamps (pixels)
+END
+
+# Difference of two warps
+WARPWARP	METADATA
+	DUAL		BOOL	TRUE	# Dual convolution?
+	INVERSE		BOOL	TRUE	# Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+
+	# penalty of 1.0
+	# DUAL convolution is more sensitive to the number of kernels
+	# do not provide as many orders as for SINGLE
+        # @ISIS.WIDTHS	F32	2.4  5.0  10.0  # Gaussian kernel FWHM values
+	@ISIS.WIDTHS	F32	1.5  3.0  6.0   # Gaussian kernel FWHM values
+	# @ISIS.WIDTHS	F32	2.0  3.0  5.0   # Gaussian kernel FWHM values
+        # @ISIS.WIDTHS	F32	2.1  4.2  8.4   # Gaussian kernel FWHM values
+	@ISIS.ORDERS	S32	2    2    2     # Polynomial orders for ISIS kernels
+
+	SCALE.REF	F32     5.0		# FWHM reference for kernel parameter scaling
+	KERNEL.SIZE     S32	15		# Kernel half-size (pixels)
+	STAMP.FOOTPRINT S32	15		# Size of stamps (pixels)
+END
+
+WARPWARP_1DG	METADATA
+	  KERNEL.TYPE	STR	SIMPLE	# Use 1D Gaussian Convolution
+	  DUAL		BOOL	TRUE    # Dual convolution?
+	  INVERSE	BOOL	TRUE	# Generate inverse subtraction?
+	  PHOTOMETRY	BOOL	TRUE	# Perform photometry
+
+	  # This is not really used with the SIMPLE kernel
+	  SCALE.REF	F32	5.0 	# FWHM reference for kernel parameter scalinng
+	  KERNEL.SIZE	S32	15	# Kernel half-size (pixels);
+	  STAMP.FOOTPRINT S32	15	# Size of stamps (pixels);
+END
+
+
+
+# Difference of warp - stack
+WARPSTACK	METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+# WSdiff for PV3 to do inverse phot
+WARPSTACK_PV3       METADATA
+        DUAL                   BOOL    FALSE   # Dual convolution?
+        INVERSE                BOOL    TRUE    # Generate inverse subtraction?
+        PHOTOMETRY             BOOL    TRUE    # Perform photometry?
+        CONVOLVE.TARGET        STR     SINGLE2 # convolution direction
+	CHIP.MAP.FROM.POSITIVE BOOL    FALSE   # always use the warp for the chipmap, not subtrahend
+END
+
+WARPSTACK_1DG	METADATA
+	KERNEL.TYPE	STR	SIMPLE
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+# Difference of two stacks : uses SINGLE not DUAL convolution
+STACKSTACK	METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+STACKSTACK_1DG  METADATA
+	KERNEL.TYPE	STR	SIMPLE
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+STACKSTACK_CONV1      METADATA
+        DUAL            BOOL    FALSE   # Dual convolution?
+        INVERSE         BOOL    FALSE   # Generate inverse subtraction?
+        PHOTOMETRY      BOOL    TRUE    # Perform photometry?
+        CONVOLVE.TARGET STR     SINGLE1 # convolution direction
+END
+
+# Difference of two stacks : uses SINGLE not DUAL convolution
+STACKPHOT	METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+STACKPHOT_1DG	METADATA
+	KERNEL.TYPE	STR	SIMPLE
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+# Difference of warp - stack
+WARPSTACK_FORCED     METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+ FORCED.PHOTOMETRY.BOTH BOOL    TRUE    # forced photometry on input sources
+END
+
+# Difference of warp - quickstack
+WARPQSTACK	METADATA
+	DUAL		BOOL	TRUE	# Dual convolution?
+	INVERSE		BOOL	FALSE	# Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+
+	# penalty of 1.0
+	# DUAL convolution is more sensitive to the number of kernels
+	# do not provide as many orders as for SINGLE
+        # @ISIS.WIDTHS	F32	2.4  5.0  10.0  # Gaussian kernel FWHM values
+	@ISIS.WIDTHS	F32	1.5  3.0  6.0   # Gaussian kernel FWHM values
+	# @ISIS.WIDTHS	F32	2.0  3.0  5.0   # Gaussian kernel FWHM values
+        # @ISIS.WIDTHS	F32	2.1  4.2  8.4   # Gaussian kernel FWHM values
+	@ISIS.ORDERS	S32	2    2    2     # Polynomial orders for ISIS kernels
+
+	SCALE.REF	F32     5.0		# FWHM reference for kernel parameter scaling
+	KERNEL.SIZE     S32	15		# Kernel half-size (pixels)
+	STAMP.FOOTPRINT S32	15		# Size of stamps (pixels)
+END
+
+# Do no convolution
+UNCONVOLVED	METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	NOCONVOLVE      BOOL    TRUE
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+# Difference of warp - junkstack
+WARPJSTACK      METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	CONVOLVE.TARGET STR     SINGLE1	# convolution direction
+END
+
+
+#PR image class
+PR		METADATA
+	PHOTOMETRY	BOOL	FALSE
+END
+
+# Recipe overrides for DIFF
+DIFF.SINGLE1	METADATA
+  DUAL  	  BOOL    FALSE		# Dual convolution?
+  CONVOLVE.TARGET STR     SINGLE1		# convolution direction
+END
+
+# Recipe overrides for DIFF
+DIFF.SINGLE2	METADATA
+  DUAL  	  BOOL    FALSE		# Dual convolution?
+  CONVOLVE.TARGET STR     SINGLE2		# convolution direction
+END
+
+# Recipe overrides for DIFF
+DIFF_MAGICTEST_V0	METADATA
+	SPATIAL.ORDER   S32	0		# Spatial polynomial order
+END
+
+TEST.ISIS METADATA
+  KERNEL.TYPE	STR	ISIS_RADIAL	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  @ISIS.WIDTHS	F32	2.9 4.8 8.2     # Gaussian FWHMs for ISIS kernels
+  @ISIS.ORDERS	S32	4   2   2       # Polynomial orders for ISIS kernels
+END
+
+TEST.RADIAL METADATA
+END
+
+TEST.HERM METADATA
+END
+
+TEST.DECON METADATA
+END
+
+SSTF_DIFF METADATA
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	NOCONVOLVE      BOOL    TRUE
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+
+SSTF_DIFF_1DG METADATA 
+	KERNEL.TYPE     STR	SIMPLE
+	DUAL		BOOL	FALSE	# Dual convolution?
+	INVERSE		BOOL	FALSE   # Generate inverse subtraction?
+	PHOTOMETRY	BOOL	TRUE	# Perform photometry?
+	NOCONVOLVE      BOOL    TRUE
+	CONVOLVE.TARGET STR     SINGLE2	# convolution direction
+END
+	      
+
+# Gene's choice: multiplying by 1.75
+#@ISIS.WIDTHS	F32	1.8 3.3 5.8 10.2 17.9	# Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	2 2 2 2 2		# Polynomial orders for ISIS kernels
+# (pi/2)^i
+#@ISIS.WIDTHS	F32	1.6 2.5 3.9 6.1 9.6 15.0	# Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	2 2 2 2 2 2		# Polynomial orders for ISIS kernels
+# (e/2)^i for even i
+#@ISIS.WIDTHS	F32	1.4 3.4 6.3 11.6	# Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	6 4 4 2		# Polynomial orders for ISIS kernels
+# 1.69^i
+#@ISIS.WIDTHS	F32	2.9 4.8 8.2 13.8 23.3 # Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	4 2 2 2 2	# Polynomial orders for ISIS kernels
+
+# Paul's values
+# @ISIS.WIDTHS	F32	2.9 4.8 8.2 13.8 # Gaussian FWHMs for ISIS kernels
+# @ISIS.ORDERS	S32	4 2 2 2		# Polynomial orders for ISIS kernels
+
+# Armin's values
+#@ISIS.WIDTHS	F32	1.5 3.0 6.0 12.0   # Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	6   4   2   2      # Polynomial orders for ISIS kernels
+
+# test
+#@ISIS.WIDTHS	F32	4.0  6.0 9.0     # Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	6    4   2       # Polynomial orders for ISIS kernels
+
+#@ISIS.WIDTHS	F32	1.8  3.2  5.7   # Gaussian FWHMs for ISIS kernels
+#@ISIS.ORDERS	S32	2    4    2     # Polynomial orders for ISIS kernels
+
+# @ISIS.WIDTHS	F32	2.33 5.00  9.90   # hotpants values for test 01 - 00: 
+# @ISIS.WIDTHS	F32	2.47 5.29 10.86   # hotpants values for test 02 - 00: 
+# @ISIS.WIDTHS	F32	2.47 5.29 11.75   # hotpants values for test 03 - 00: 
+# @ISIS.WIDTHS	F32	2.47 5.29 13.54   # hotpants values for test 04 - 00: 
+# @ISIS.WIDTHS	F32	2.12 4.51 9.05    # hotpants values for test 07 - 00: 
+# @ISIS.ORDERS	S32	6    4    2       # Polynomial orders for ISIS kernels
+
+# @ISIS.WIDTHS	F32	1.90 4.07 8.11 16.22 # hotpants values for test 05 - 00: 
+# @ISIS.WIDTHS	F32	2.11 4.51 9.02 18.05 # hotpants values for test 06 - 00: 
+# @ISIS.ORDERS	S32	6    4    2    2    # Polynomial orders for ISIS kernels
+
Index: /branches/eam_branches/ippconfig.20240412/recipes/ppVizPSF.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/ppVizPSF.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/ppVizPSF.mdc	(revision 42661)
@@ -0,0 +1,2 @@
+MINFLUX		F32		1.0e-3
+SIZE		S32		25
Index: /branches/eam_branches/ippconfig.20240412/recipes/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/psastro.config	(revision 42661)
@@ -0,0 +1,413 @@
+
+PSASTRO.SAVE.REFSTARS      BOOL FALSE  # save refstars in a separate FITS table (XXX THIS IS BROKEN)
+PSASTRO.ONLY.REFSTARS      BOOL FALSE  # skip all but refstar matches
+PSASTRO.SAVE.REFMATCH      BOOL FALSE  # save refstar matches as table in output smf file
+PSASTRO.SAVE.CFF           BOOL FALSE  # save a cff file (input for psphotFullForce)
+
+PSASTRO.SKIP.ASTROMETRY    BOOL FALSE
+
+# select which WCS style to use on output images.
+PSASTRO.WCS.USECDKEYS	 BOOL FALSE
+
+# perform single-chip astrometry?
+PSASTRO.CHIP.MODE           BOOL     TRUE
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  13.5
+
+# plotting options
+PSASTRO.PLOT.INST.MAG.MAX F32 -10.0
+PSASTRO.PLOT.INST.MAG.MIN F32 -17.0
+PSASTRO.PLOT.REF.MAG.MIN  F32 +10.0
+PSASTRO.PLOT.REF.MAG.MAX  F32 +20.0
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32 0.25
+
+PSASTRO.REFSTAR.CLUMP.SCALE S32 150
+PSASTRO.REFSTAR.CLUMP.NITER S32 3
+
+# extra field for ref stars:
+PSASTRO.PHOTOM.WINDOW.SIGMA  F32 0.0
+
+# pmAstromGridMatch:
+PSASTRO.GRID.SEARCH    BOOL TRUE
+
+PSASTRO.GRID.MIN.ANGLE F32 -2.0 # start angle (degrees)
+PSASTRO.GRID.MAX.ANGLE F32 +2.0
+PSASTRO.GRID.DEL.ANGLE F32  0.5
+
+PSASTRO.GRID.MIN.SCALE F32  0.98
+PSASTRO.GRID.MAX.SCALE F32  1.04
+PSASTRO.GRID.DEL.SCALE F32  0.02
+
+PSASTRO.GRID.MIN.SIGMA F32  5.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32  10000.
+PSASTRO.GRID.SCALE     F32    500.
+PSASTRO.GRID.NSTAR.MAX S32    300 # deprecated
+PSASTRO.GRID.NREF.MAX  S32    500 # max stars accepted for fitting
+PSASTRO.GRID.NRAW.MAX  S32   1000 # max stars accepted for fitting
+
+# sources with these mask flags raised should be ignored
+PSASTRO.IGNORE         STR    CRLIMIT,SATURATED,DEFECT,SATSTAR,BLEND,FAIL
+PSASTRO.ROUGH.MODEL    STR    none
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.RADIUS   F32    8
+PSASTRO.MATCH.RADIUS.N0 F32   0
+PSASTRO.MATCH.RADIUS.N1 F32   0
+PSASTRO.MATCH.RADIUS.N2 F32   0
+PSASTRO.MATCH.RADIUS.N3 F32   0
+PSASTRO.MATCH.RADIUS.N4 F32   0
+PSASTRO.MATCH.RADIUS.N5 F32   0
+PSASTRO.MATCH.RADIUS.N6 F32   0
+PSASTRO.MATCH.RADIUS.N7 F32   0
+PSASTRO.MATCH.FIT.NITER S32   1
+
+# single-chip radius match in pixels
+PSASTRO.ONE.CHIP.ORDER.N0 F32    1
+PSASTRO.ONE.CHIP.ORDER.N1 F32    1 
+PSASTRO.ONE.CHIP.ORDER.N2 F32    1
+PSASTRO.ONE.CHIP.ORDER.N3 F32    1
+PSASTRO.ONE.CHIP.ORDER.N4 F32    1
+PSASTRO.ONE.CHIP.ORDER.N5 F32    1
+PSASTRO.ONE.CHIP.ORDER.N6 F32    1
+PSASTRO.ONE.CHIP.ORDER.N7 F32    1
+
+# for iterations >= N, require a single match per reference
+PSASTRO.MATCH.UNIQ.ITER S32     4 
+
+# pmAstromMatchFit
+PSASTRO.CHIP.ORDER     S32      1  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
+PSASTRO.MAX.ERROR      F32      1.5 # max allowed error for valid solution (arcsec)
+PSASTRO.MAX.STDEV      F32      1.0 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MIN.NSTAR      S32      3   # min fitted stars in solution
+PSASTRO.MAX.NSTAR      S32      300   # max fitted stars in solution
+
+PSASTRO.MAX.NRAW       S32      0   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF       S32      0   # max stars accepted for fitting (0 for all)
+
+PSASTRO.MIN.INST.MAG.RAW       F32      0.0   # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32      0.0   # max instrumental magnitude for stars accepted for fitting
+PSASTRO.GRID.MIN.INST.MAG.RAW       F32      0.0   # min instrumental magnitude for stars accepted for grid search
+PSASTRO.GRID.MAX.INST.MAG.RAW       F32      0.0   # max instrumental magnitude for stars accepted for grid search
+
+PSASTRO.MATCH.LUMFUNC  BOOL     FALSE
+
+# option may be MAX, MIN, or VALUE. for VALUE, look up 
+# plate scale for each chip in the concepts
+PSASTRO.COMMON.SCALE.OPTION	STR	MAX
+
+# mosaic-mode radius match in pixels?
+PSASTRO.MOSAIC.RADIUS.N0   F32    8
+PSASTRO.MOSAIC.RADIUS.N1   F32    6
+PSASTRO.MOSAIC.RADIUS.N2   F32    4
+PSASTRO.MOSAIC.RADIUS.N3   F32    0.0
+PSASTRO.MOSAIC.RADIUS.N4   F32    0.0
+PSASTRO.MOSAIC.RADIUS.N5   F32    0.0
+
+# Mosaic Astrometry options
+PSASTRO.MOSAIC.MODE           BOOL     FALSE
+PSASTRO.MOSAIC.ORDER          S32      3  # fit order
+
+PSASTRO.MOSAIC.CHIP.ORDER     S32       1 # fit order
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      -1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      -1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      -1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      -1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      -1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N5  S32      -1 # fit order (-1 means use default)
+
+# for iterations >= N, require a single match per reference
+PSASTRO.MOSAIC.UNIQ.ITER S32     2
+
+PSASTRO.MOSAIC.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.MOSAIC.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
+PSASTRO.MOSAIC.MAX.ERROR.N0   F32      1.5 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1   F32      1.5 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2   F32      1.5 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3   F32      1.5 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N4   F32      1.5 # max allowed error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N5   F32      1.5 # max allowed error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.MAX.STDEV.N0   F32      1.5 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N1   F32      1.5 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N2   F32      1.5 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N3   F32      1.5 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N4   F32      1.5 # max allowed stdev for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.STDEV.N5   F32      1.5 # max allowed stdev for valid solution (arcsec)
+
+# need at least this fraction of chips to pass for exposure to be considered acceptable
+PSASTRO.MOSAIC.MIN.GOOD.CHIP.FRACTION  F32 0.10 
+
+PSASTRO.MOSAIC.MIN.NSTAR      S32      6   # min fitted stars in solution
+
+PSASTRO.MOSAIC.GRADIENT.NX    S32      2   # number of x-dir cells per chip
+PSASTRO.MOSAIC.GRADIENT.NY    S32      2   # number of y-dir cells per chip
+
+REFSTAR_MASK                    BOOL FALSE
+REFSTAR_MASK_REGIONS            BOOL FALSE
+REFSTAR_MASK_MAX_MAG            F32 -15.0
+REFSTAR_MASK_SATSTAR_MAG_SLOPE  F32  10.0
+REFSTAR_MASK_SATSTAR_POS_ZERO   F32   0.0
+# spikeLength = 10**(SLOPE*(MAG_MAX - InstMag)) - OFFSET
+REFSTAR_MASK_SATSPIKE_MAG_SLOPE F32 -0.116
+REFSTAR_MASK_SATSPIKE_MAG_MAX   F32 -0.91
+REFSTAR_MASK_SATSPIKE_OFFSET    F32   0.0
+REFSTAR_MASK_SATSPIKE_WIDTH     F32  10.0
+REFSTAR_MASK_SATSPIKE_L0        F32  200.0
+REFSTAR_MASK_SATSPIKE_WIDTH_SLOPE F32 0.00
+
+REFSTAR_MASK_SATSTAR_MAG_MAX    F32 -11.363
+REFSTAR_MASK_SATSTAR_RAD_OFFSET F32  17.631
+REFSTAR_MASK_SATSTAR_EXP        F32   1.493
+
+PSASTRO.SAVE.GHOSTS             BOOL FALSE
+REFSTAR_MASK_GHOST              BOOL FALSE
+REFSTAR_COUNT_GHOSTS            BOOL FALSE
+GHOST_MODEL                     STR  NONE
+# GHOST_MAX_MAG                   F32 -19.5
+
+REFSTAR_MASK_BLEED              BOOL FALSE
+
+REFSTAR_MASK_BLEED_MAG_MAX      F32 -15.0
+REFSTAR_MASK_BLEED_MAG_SLOPE    F32   5.0
+
+# Additional parameters to allow for saturation bleeds to be masked in either direction.
+REFSTAR_MASK_BLEED_ORIENTATION_X BOOL FALSE
+REFSTAR_MASK_BLEED_MAG_MAX_X    F32 -15.0
+REFSTAR_MASK_BLEED_MAG_SLOPE_X  F32   5.0
+
+REFSTAR_MASK_BLEED_ORIENTATION_Y BOOL FALSE
+REFSTAR_MASK_BLEED_MAG_MAX_Y    F32 -15.0
+REFSTAR_MASK_BLEED_MAG_SLOPE_Y  F32   5.0
+
+REFSTAR_MASK_GLINTS		BOOL  FALSE
+GLINT_MAX_MAG                   F32 -19.0
+GLINT_LENGTH_MAG_SLOPE          F32 0.0
+GLINT_LENGTH_MAG_ZERO           F32 0.0
+GLINT_LENGTH_POS_SLOPE          F32 0.0
+GLINT_LENGTH_POS_REF            F32 0.0
+GLINT_LENGTH_POS_CUT            F32 0.0
+GLINT_LENGTH_MIN_FPA            F32 0.0
+GLINT_ANGLE_POS_SLOPE           F32 0.0
+GLINT_ANGLE_POS_REF             F32 0.0
+# save glint positions?
+PSASTRO.SAVE.GLINTS             BOOL FALSE
+
+GLINT_WIDTH                     F32 0.0
+GLINT.REGION			MULTI
+GLINT.REGION			METADATA
+END
+
+REFSTAR_MASK_CROSSTALK_MAG_SLOPE F32 3.44
+REFSTAR_MASK_CROSSTALK_MAG_MAX   F32 -14.47
+CROSSTALK_MAX_MAG    F32  20.0
+CROSSTALK_MASK       BOOL FALSE
+
+# crosstal rules file is relative to PATH (eg, ippconfig directory)
+CROSSTALK_FILE                     STR  crosstalk_rules.mdc
+
+# report and reject stars with reported magnitudes less than this value. These non physical
+# magnitudes are errors in the reference catalog (this value is sky magnitude, not instrumental)
+# -- and now also for greater than a sky magnitude (should be 24-25?)
+REFSTAR_CLAMP_MAG_MIN           F32 -3.0
+REFSTAR_CLAMP_MAG_MAX           F32 30.0
+
+# restrict ref catalog for zero point determination 
+# -- can be put into photcode groups as well
+REFSTAR.ZP.MAX.MAG  F32  30.0
+REFSTAR.ZP.MIN.MAG  F32  -3.0
+
+EXTRACT_MAX_MAG                 F32 -15.0
+
+MASK.STATS          BOOL TRUE
+MASKSTAT.STATIC     U32 0x01f
+MASKSTAT.DYNAMIC    U32 0x060
+MASKSTAT.MAGIC      U32 0x800
+MASKSTAT.ADVISORY   U32 0x080
+
+TRANSFORM.GALAXY.SHAPE.ERRORS  BOOL F
+
+# maximum allowed fwhm_major (moved from */camera.config)
+PSASTRO.MAX.ALLOWED.FWHM    F32     0
+PSASTRO.MAX.PROCESS.FWHM    F32     30
+
+#PSASTRO.CATDIR                STR      PS1.REF.20140713
+PSASTRO.CATDIR                STR      2MASS
+DVO.GETSTAR                   STR      getstar
+DVO.GETSTAR.OUTFORMAT         STR      PS1_DEV_0
+DVO.GETSTAR.PHOTCODE          STR      2MASS_J
+DVO.GETSTAR.MAX.RHO           F32      10000.0
+DVO.GETSTAR.MIN.MAG           F32      12.0
+DVO.GETSTAR.MIN.MAG.INST      F32     -15.0
+
+# if non-zero use as the zero point for computing magnitude limits for getstar
+# by default use the ZEROPT in the PHOTCODE.DATA
+DVO.GETSTAR.FIXED.ZEROPT      F32       0.0     
+
+TRANSFORM.GALAXY.SHAPE.ERRORS   BOOL     FALSE
+
+ZERO.POINT.BY.EXPOSURE	      	BOOL     TRUE
+ZERO.POINT.USE.MEAN	      	BOOL     TRUE
+ZERO.POINT.EDGE.FRACTION      	F32      0.9
+ZERO.POINT.EDGE.SAMPLE        	S32      10
+ZERO.POINT.EDGE.SAMPLE.FRACTION F32      0.1
+
+ZPTEST METADATA
+  ZERO.POINT.BY.EXPOSURE      BOOL     TRUE
+  ZERO.POINT.USE.MEAN	      BOOL     FALSE
+END
+
+PSASTRO.2MASS                 METADATA
+  PSASTRO.CATDIR              STR      2MASS
+  DVO.GETSTAR.PHOTCODE        STR      2MASS_J
+  DVO.GETSTAR.MIN.MAG         F32      10.0
+END
+
+PSASTRO.SYNTH                 METADATA
+  PSASTRO.CATDIR              STR      SYNTH.GRIZY
+  DVO.GETSTAR.PHOTCODE        STR      r
+END
+
+LOAD.REF.ASTROM               BOOL     FALSE
+SAVE.REF.ASTROM               BOOL     FALSE
+
+PSASTRO.MODEL.REF.CHIP        STR      NONE
+PSASTRO.MODEL.REF.CHIP.ANGLE  F32      0.0
+PSASTRO.MODEL.ROT.PARITY      S32      +1
+PSASTRO.MODEL.FIT.BORESITE    BOOL     FALSE
+PSASTRO.MODEL.SET.BORESITE    BOOL     FALSE
+PSASTRO.MODEL.BORESITE.X      F32      0.0
+PSASTRO.MODEL.BORESITE.Y      F32      0.0
+
+PSASTRO.FIX.CHIPS             BOOL     FALSE
+PSASTRO.USE.MODEL             BOOL     FALSE
+
+# apply Koppenhoefer Correction to this camera?
+KH.CORRECT.APPLY	      BOOL     FALSE
+KH.CORRECT.ENDDATE	      STR      NONE
+
+PSASTRO.PIXEL.TOLERANCE       F32      3.0
+PSASTRO.ANGLE.TOLERANCE       F32      1.0
+
+PSASTRO.FINE METADATA
+END
+
+PSASTRO_COARSE METADATA
+END
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+END
+
+PSASTRO.EXTRACT METADATA
+END
+
+DEFAULT_RECIPE METADATA
+END
+
+PR_RECIPE METADATA
+END
+
+PS1_REFERENCE METADATA
+END
+
+MOPS.TEST	METADATA
+END
+
+SAS_REFERENCE METADATA
+END
+
+STS_DATASET METADATA
+END
+
+LAP_ASTRO METADATA 
+END
+
+CNP_DATASET METADATA
+END
+
+MD_ASTRO METADATA
+END
+
+SNIA_ASTRO METADATA
+END
+
+QUB_ASTRO METADATA
+END
+
+YSE_ASTRO METADATA
+END
+
+ENGI_ASTRO METADATA
+END
+
+CNP_ASTRO_PV3 METADATA
+END
+
+MD_ASTRO_PV3 METADATA
+END
+
+SYNTH_CAT METADATA
+END
+
+POLE_REFCAT METADATA
+END
+
+TEST_REFCAT METADATA
+END
+
+STATICSKY_CAL   METADATA
+    PSASTRO.SAVE.CFF           BOOL TRUE  # save a cff file (input for psphotFullForce)
+END
+
+STATICSKY_POLE   METADATA
+    PSASTRO.SAVE.CFF           BOOL TRUE  # save a cff file (input for psphotFullForce)
+END
+
+STATICSKY_TESTCAL   METADATA
+END
+
+STATICSKY_NIGHTCAL   METADATA
+END
+
+STATICSKY_DEEPCAL   METADATA
+END
+
+STATICSKY_MD_DEEPCAL   METADATA
+END
+
+STATICSKY_MD_PV3_DEEPCAL   METADATA
+END
+
+GLINT_TEST METADATA
+END
+
+M31_SHALLOW METADATA 
+END
+
+M31_DEEP METADATA 
+END
+
+SWEETSPOT_TEST METADATA
+END
+
+APTEST_V1 METADATA
+  PSASTRO.SKIP.ASTROMETRY BOOL TRUE
+END
+
Index: /branches/eam_branches/ippconfig.20240412/recipes/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/psphot.config	(revision 42661)
@@ -0,0 +1,1073 @@
+# these options turn on different inputs and/or outputs
+SAVE.OUTPUT                         BOOL  TRUE
+SAVE.BACKMDL                        BOOL  TRUE
+SAVE.BACKMDL.STDEV                  BOOL  FALSE
+SAVE.BACKGND                        BOOL  FALSE
+SAVE.BACKSUB                        BOOL  FALSE
+SAVE.RESID                          BOOL  FALSE
+SAVE.PLOTS                          BOOL  FALSE
+SAVE.PSF                            BOOL  TRUE
+LOAD.PSF                            BOOL  FALSE
+
+# optional outputs for psphotStack
+SAVE.CNV                            BOOL  FALSE
+SAVE.CHISQ                          BOOL  FALSE
+
+# format for output CMF files
+OUTPUT.FORMAT                       STR   PS1_V5
+
+# the zero point is used to set a basic scale for DVO
+ZERO_PT                             F32   25.000          # zero point used by DVO XXX deprecate this
+
+# these parameter govern how the background is measured
+BACKGROUND.XBIN                     S32   128             # size of background superpixels
+BACKGROUND.YBIN                     S32   128             # size of background superpixels
+BACKGROUND.XSAMPLE                  F32   1.0             # size of background superpixels
+BACKGROUND.YSAMPLE                  F32   1.0             # size of background superpixels
+IMSTATS_NPIX                        S32   10000           # number of pixels to use for sky estimate boxes:
+
+# soften the errors for bright pixels:
+SOFTEN.VARIANCE                     BOOL  FALSE
+SOFTEN.VARIANCE.FRACTION            F32   0.0
+
+SKY_BIAS                            F32   0.0             # offset applied to measured sky (FOR TESTING)
+SKY_FIT_ORDER                       S32   0
+SKY_FIT_LINEAR                      BOOL  FALSE
+SKY_STAT                            STR   FITTED_MEAN_V4  # statistic used to measure background
+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: 
+# SAMPLE_MEAN, SAMPLE_MEDIAN, CLIPPED_MEAN, ROBUST_MEDIAN, ROBUST_QUARTILE, FITTED_MEAN
+
+# masking parameters (XXX EAM : rework this to use psRegion like ANALYSIS_REGION)
+XMIN                                F32   0               # minimum valid x-coord
+XMAX                                F32   0               # maximum valid x-coord
+YMIN                                F32   0               # minimum valid y-coord
+YMAX                                F32   0               # maximum valid y-coord
+
+# peak finding 
+PEAKS_SMOOTH_SIGMA                  F32   1.0             # smoothing kernel sigma in pixels
+PEAKS_SMOOTH_NSIGMA                 F32   2.0             # smoothing kernel width in sigmas
+PEAKS_NSIGMA_LIMIT                  F32   20.0            # peak significance threshold
+PEAKS_NSIGMA_LIMIT_2                F32   5.0             # peak significance threshold
+PEAKS_NMAX                          S32   5000            # on first pass, only keep NMAX peaks (0 == all)
+PEAKS_MIN_GAUSS                     F32   0.5             # On quick convolution, mask pixels for which the 
+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
+PEAKS_USE_SIGNAL_IMAGE              BOOL  FALSE           # on first pass, use signal image not signficance image to find peaks
+
+# parameters which adjust the footprint analysis
+USE_FOOTPRINTS                      BOOL  TRUE       	  # use new pmFootprint peak packaging
+FOOTPRINT_NPIXMIN                   S32   5       	  # Minimum size of a pmFootprint
+FOOTPRINT_GROW_RADIUS               S32   3       	  # How much to grow bright footprints
+FOOTPRINT_GROW_RADIUS_2             S32   5       	  # How much to grow faint footprints
+FOOTPRINT_CULL_NSIGMA_DELTA         F32   4       	  # Cull peaks that aren't nsigma above col to neighbour
+FOOTPRINT_CULL_NSIGMA_MIN           F32   1       	  # Minimum height of cols 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
+FOOTPRINT_SET_NANS_TO_ZERO          BOOL  FALSE           # set nan pixels in smoothed image to zero when culling peaks
+
+# parameter for the simple deblending
+DEBLEND_PEAK_FRACTION               F32   0.1
+DEBLEND_SKY_NSIGMA                  F32   10.0
+DEBLEND_MIN_SATURATION              F32   40000.0
+
+# subtract radial profiles for extremely bright stars?
+SUBTRACT_SATSTAR_PROFILE            BOOL  F
+
+# parameters to control the selection of the peak in the Sx,Sy plane
+MOMENTS_SCALE                       F32   0.25       
+MOMENTS_SN_MIN                      F32   0.0             # min S/N to measure moments (default: measure all objects)
+MOMENTS_SX_MAX                      F32   50.0
+MOMENTS_SY_MAX                      F32   50.0
+MOMENTS_SX_MIN                      F32   0.5
+MOMENTS_SY_MIN                      F32   0.5
+MOMENTS_AR_MAX                      F32   1.5             # maximum axial ratio: 1 / AR < (sx / sy) < AR
+MOMENTS_GAUSS_SIGMA		    F32	  4.0		  # XXX this is now autoscaled
+
+# calculate difference stats?
+DIFF_STATS                          BOOL  FALSE
+
+# add backward chip mapping
+CHIP_PARAMS                         BOOL  TRUE
+
+# basic object statistics
+SKY_INNER_RADIUS                    F32   15              # square annulus for local sky measurement
+SKY_OUTER_RADIUS                    F32   25              # square annulus for local sky measurement
+PSF_MOMENTS_RADIUS                  F32   3               # XXX this is now autoscaled
+PSF_SN_LIM                          F32   20              # minimum S/N for stars used for PSF model
+PSF_MAX_NSTARS                      S32   500             # limit number of stars used for PSF model
+PSF_CLUMP_NSIGMA                    F32   1.5             # region of Sx,Sy plane to use for selecting PSF stars
+PSF_CLUMP_GRID_SCALE                F32   0.2             # size of Sx,Sy image pixel
+
+PSF_CLUMP_NX                        S32   1               # subdivide image in to NX x NY regions for 
+PSF_CLUMP_NY                        S32   1               # selecting PSF stars
+
+PSF_MIN_DS                          F32   0.01
+PSF_PARAM_WEIGHTS                   BOOL  FALSE
+
+LMM_FIT_CHISQ_CONVERGENCE           BOOL  TRUE            # use the (old) chisq convergence or the new parameter one 
+LMM_FIT_GAIN_FACTOR_MODE            S32   0               # there are 3 options to determine the gain factor (0,1,2)
+LMM_FIT_USE_REWEIGHTING             BOOL  FALSE           # use IRLS-style reweighting (TRUE) or ordinary LMM
+
+PSF_FIT_ITER                        S32   50              # Maximum number of fitting iterations for PSF
+PSF_FIT_MIN_TOL                     F32   0.01            # Fit tolerance for PSF
+PSF_FIT_MAX_TOL                     F32   2.00            # Fit tolerance for PSF
+
+PSF_FIT_MIN_VALID_FLUX              F32  -100000000.0     # minimum allow flux for fitted source
+PSF_FIT_MAX_VALID_FLUX              F32  +100000000.0     # maximum allow flux for fitted source
+
+PSF_FIT_MODEL_SUM_FRAC_CUT          F32   0.85
+PSF_FIT_MASKED_SUM_FRAC_CUT         F32   0.85
+
+# the following is used to require a minimum quality of fit before
+# stopping based on the tolerance.  be careful of using this in
+# conjunction with non-poisson errors (POISSON.ERRORS.LMM) or with
+# pooly determined errors
+PSF_FIT_MAX_CHISQ                   F32  20.00            # require chisq / DOF to reach this level before giving up
+
+# PSF model parameters : choose the PSF model
+# list as many PSF_MODEL options as desired
+# PSF_MODEL                         MULTI
+PSF_MODEL                           STR   PS_MODEL_GAUSS
+# PSF_MODEL                         STR   PS_MODEL_PGAUSS
+# sigma values used by psphotSetMomentsWindow. Maximum length of this array is 8
+@PSF.SIGMA.VALUES                   F32   1.0  2.0  3.0  4.5  6.0  9.0  12.0  18.0 # comment due to ticket #1476
+
+# PSF.TREND.MASK must be a 2D polynomial
+# the specified values are ignored but define the active components of the polynomial
+PSF.TREND.MASK                      METADATA  
+   NORDER_X                         S32   0               # number of x orders
+   NORDER_Y                         S32   0               # number of y orders
+   VAL_X00_Y00                      F64   1               # polynomial coefficient
+   NELEMENTS                        S32   1               # number of unmasked components
+END  # folder for 2D polynomial
+
+PSF.TREND.MODE                      STR   MAP
+PSF.TREND.NX                        S32   1
+PSF.TREND.NY                        S32   1
+
+PSF.FAKE.ALLOW                      BOOL  FALSE           # Allow use of fake PSFs when having trouble?
+
+PSF_FIT_RADIUS                      F32   15.0            # XXX this is now autoscaled
+PSF_REF_RADIUS                      F32   25.0            # aperture magnitudes are scaled via 
+                                                          # curve-of-growth to this radius
+
+PSF_FIT_RADIUS_SCALE                F32   7.0            # fitting radius for test PSF model
+PSF_APERTURE_SCALE                  F32   4.5            # fitting radius for test PSF model
+
+# PSF-like source model parameters
+PSF_FIT_NSIGMA                      F32   1.0             # significance for pixel included in fit
+PSF_FIT_PADDING                     F32   2.0             # extra annulus to use for fit 
+PSF_MIN_SN                          F32   2.0             # reject objects below this significance
+PSF_MAX_CHI                         F32   50.0            # reject objects worse than this
+FULL_FIT_SN_LIM                     F32   50.0
+
+# the RESIDUALS are pixelized psf residual tables
+PSF.RESIDUALS                       BOOL  TRUE            # generate the residuals?
+PSF.RESIDUALS.XBIN                  S32   1               # Nx(residual) = Nx(input)*XBIN
+PSF.RESIDUALS.YBIN                  S32   1               # Ny(residual) = Ny(input)*YBIN
+PSF.RESIDUALS.NSIGMA                F32   3.0             # clip input stack of NSIGMA outliers
+PSF.RESIDUALS.INTERPOLATION         STR   BILINEAR        # interpolation to use when reconstructing residual
+PSF.RESIDUALS.STATISTIC             STR   ROBUST_MEDIAN   # statistic to use for generating the residual
+PSF.RESIDUALS.SPATIAL_ORDER         S32   0               # fit spatial variations of the residuals at this order (0,1)
+PSF.RESIDUALS.PIX.SN                F32   0.0             # keep this pixel if residual is more significant than this
+PSF.RESIDUALS.RADIUS                F32   8.0             # keep this pixel if residual is more significant than this
+ 
+# this model is used for approximate subtraction in the main object analysis step
+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 
+EXT_MOMENTS_RADIUS                  F32   31
+EXT_FIT_MAX_RADIUS                  F32   128             # non-sensical to fit objects larger than the background mesh
+
+EXT_FIT_ITER                        S32   20              # Maximum number of fitting iterations for EXT
+EXT_FIT_MIN_TOL                     F32   0.01            # Fit tolerance for EXT
+EXT_FIT_MAX_TOL                     F32   2.00            # Fit tolerance for EXT
+EXT_FIT_NSIGMA_CONV                 F32   9.00            # Number of sigma for PSF convolved fits
+
+# the following is used to require a minimum quality of fit before
+# stopping based on the tolerance.  be careful of using this in
+# conjunction with non-poisson errors (POISSON.ERRORS.LMM) or with
+# pooly determined errors
+EXT_FIT_MAX_CHISQ                   F32  20.00            # require chisq / DOF to reach this level before giving up
+
+# extended source aperture-like measurements
+EXTENDED_SOURCE_PETROSIAN           BOOL  FALSE
+EXTENDED_SOURCE_ANNULI              BOOL  FALSE
+EXTENDED_SOURCE_RAW_RADIUS          BOOL  FALSE  # use circular (T) or elliptical (F) contours for petrosians?
+EXTENDED_SOURCE_SN_LIM              F32   20.0
+
+EXT.NSIGMA.LIMIT.USE                BOOL  TRUE
+
+# Extended Model to use for forced photometry in full force
+# In addtion to PS_MODEL_SERSIC, PS_MODEL_DEV, and PS_MODEL_EXP  the values BEST and ALL may be selected
+# This specifies what gets saved in cff file output by psastro
+EXT_MODEL_TYPE_FOR_CFF              STR   ALL
+# this model is forced
+EXT_MODEL_TYPE_FORCE                STR   PS_MODEL_SERSIC
+
+# if the sersic model is selected, the dev model will also be forced for sources with sersic index above this limit
+# (Note: this is not used if BEST was selected)
+EXT_MODEL_FORCE_DEV_SERSIC_MIN      F32   3.0
+
+# to avoid forcing extended models for likely stars
+# only force sources with kron mag - psf mag less than this value ...
+EXT_MODEL_FORCE_MAGDIFF_MAX         F32   0.0
+# ... unless SN is less than this value
+EXT_MODEL_FORCE_CUT_SN_MIN          F32   10.0
+
+# Limits on extended source fits by galactic coordinates 
+EXT.FIT.MIN.GAL.LIMIT.USE           BOOL  FALSE # if true apply the galactic latitude cut
+# objects are skipped for extended source fits if they have a abs(galactic latitude) larger than
+# a limit value which is a function of galactic longitude.
+#     The galactic latitude limit is the sum of the following constant value ...
+EXT.FIT.MIN.GAL.LIMIT               F32   20.0
+# ... and a gaussian function of galactic longitude centered at b = 0 with this magnitude
+EXT.FIT.MIN.GAL.LIMIT.BULGE         F32   15.0  
+# ... and this sigma
+EXT.FIT.MIN.GAL.LIMIT.BULGE.SIGMA   F32   50.0  # with this sigma value
+
+
+KRON_ITERATIONS                     S32   2
+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
+# these models are used for high-quality shape analysis after all sources have been removed
+EXTENDED_SOURCE_FITS                BOOL  FALSE  # perform the detailed extended source fits?
+EXTENDED_SOURCE_FITS_INTERACTIVE    BOOL  FALSE  # perform the detailed extended source fits?
+EXTENDED_SOURCE_FITS_POISSON        BOOL  FALSE   # use poisson errors for extended source models
+EXTENDED_SOURCE_GALAXY_PARAMS       BOOL  FALSE  # measure galaxy parameters
+
+EXTENDED_SOURCE_MODELS_SELECTION    STR   ALL
+
+LENSING_PARAMETERS                  BOOL  FALSE
+
+# extended source models applied to sources
+EXTENDED_SOURCE_MODELS METADATA 
+ TYPE  	    EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+ #GAUSS_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_GAUSS    20.0    FALSE
+ #PGAUSS_RAW  EXTENDED_SOURCE_MODEL  PS_MODEL_PGAUSS   20.0    FALSE
+ #QGAUSS_RAW  EXTENDED_SOURCE_MODEL   PS_MODEL_QGAUSS   20.0    FALSE
+ #SERSIC_RAW  EXTENDED_SOURCE_MODEL   PS_MODEL_SERSIC   20.0    FALSE
+ #GAUSS_PSF   EXTENDED_SOURCE_MODEL  PS_MODEL_GAUSS    20.0    TRUE
+ #PGAUSS_PSF  EXTENDED_SOURCE_MODEL  PS_MODEL_PGAUSS   20.0    TRUE
+ #QGAUSS_PSF  EXTENDED_SOURCE_MODEL  PS_MODEL_QGAUSS   20.0    TRUE
+ # TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+ EXP_PCM  EXTENDED_SOURCE_MODEL  PS_MODEL_EXP      0.0    TRUE
+ DEV_PCM  EXTENDED_SOURCE_MODEL  PS_MODEL_DEV      0.0    TRUE
+ SER_PCM  EXTENDED_SOURCE_MODEL  PS_MODEL_SERSIC   0.0    TRUE
+END
+
+# define the annuli (in pixels) for surface brightness measurements
+# @RADIAL.ANNULAR.BINS.LOWER           F32     0.0   5.0  10.0  20.0  40.0  80.0 # comment due to ticket #1476
+# @RADIAL.ANNULAR.BINS.UPPER           F32     5.0  10.0  20.0  40.0  80.0 160.0 #
+
+# SDSS values (in SDSS pixels)
+# @RADIAL.ANNULAR.BINS.LOWER           F32     0.00 0.56 1.69 2.59 4.41  7.51 11.58 18.58 28.55 45.50  70.51 110.53 172.49 269.52 420.51 #
+# @RADIAL.ANNULAR.BINS.UPPER           F32     0.56 1.69 2.59 4.41 7.51 11.58 18.58 28.55 45.50 70.51 110.53 172.49 269.52 420.51 652.50 #
+
+# PS1 values? (all SDSS @ PS1 0.2 arcsec pixel scales)
+# @RADIAL.ANNULAR.BINS.LOWER           F32      0.0 1.2 3.4 5.2  8.8 15.0 23.2 37.2 57.1  91.0 141.0 221.1 345.0 539.1  841.0 #
+# @RADIAL.ANNULAR.BINS.UPPER           F32      1.2 3.4 5.2 8.8 15.0 23.2 37.2 57.1 91.0 141.0 221.1 345.0 539.1 841.0 1305.0 #
+
+# PV1 PS1 values (revised for PS1 @0.25 arcsec pixel scales) 
+# @RADIAL.ANNULAR.BINS.LOWER           F32      0.00 0.96 2.72 4.16  7.04 12.00 18.56 29.76 45.68  72.80 112.80 # perl parser fails without a comment ticket #1476 still?
+# @RADIAL.ANNULAR.BINS.UPPER           F32      0.96 2.72 4.16 7.04 12.00 18.56 29.76 45.68 72.80 112.80 176.88 # perl parser fails without a comment ticket #1476 still?
+
+# PV2 PS1 values (dropped inner 2 apertures)
+@RADIAL.ANNULAR.BINS.LOWER           F32      0.00 4.16 7.04 12.00 18.56 29.76 45.68  72.80 112.80 # perl parser fails without a comment ticket #1476 still?
+@RADIAL.ANNULAR.BINS.UPPER           F32      4.16 7.04 12.0 18.56 29.76 45.68 72.80 112.80 176.88 # perl parser fails without a comment ticket #1476 still?
+
+RADIAL.ANNULAR.BINS.MIN              S32      4  # always measure apertures to this entry
+
+# In very dense fields it doesn't make sense to measure out to large radial apertures.
+# If the number of sources is above RADIAL.CUT.RADIUS.NUM.SOURCES.LIMIT 
+# bins with     RADIAL.ANNULAR.BINS.UPPER > RADIAL.SOURCES.OVER.LIMIT.RADIUS
+# will be removed from the recipe. (Note this is currently only used in psphotStack).
+RADIAL.NUM.SOURCES.LIMIT            S32         50000
+RAIDAL.SOURCES.OVER.LIMIT.RADIUS    F32         20.0    # pixels
+
+# Extended source fit parameters
+EXTENDED_TEST                       METADATA
+  EXTENDED_SOURCE_SN_LIM              F32   20.0
+  EXTENDED_SOURCE_PETROSIAN           BOOL  TRUE
+END
+
+ISOPHOTAL_FLUX                      F32   20.0
+PETROSIAN_R0                        F32    5.0 # reference radius in pixels
+PETROSIAN_FLUX_RATIO                F32    0.1 # we measure out to where flux = R0 * FLUX_RATIO
+REPAIR.PETROSIAN.MAG.ERRORS         BOOL  FALSE # write PETRO_MAG_ERR as dFlux / Flux when writing
+
+# APTREND                           STR   NONE, CONSTANT, SKYBIAS, SKYSAT, XY_LIN, SKY_XY_LIN, SKYSAT_XY_LIN, ALL
+MEASURE.APTREND	                    BOOL  TRUE
+APTREND                             STR   CONSTANT
+AP_MIN_SN                           F32   0.0 # measure apMags for all sources by default
+APTREND.NSTAR.MIN                   S32   5
+APTREND.ORDER.MAX                   S32   5
+
+# test options
+# BREAK_POINT may be one of (PEAKS, MOMENTS, PSFMODEL, ENSEMBLE)
+BREAK_POINT                         STR   NONE     
+PEAKS_OUTPUT_FILE                   STR   NONE
+MOMENTS_OUTPUT_FILE                 STR   NONE
+
+# ANALYSIS_REGION                   STR   [1000:1600,2800:3400]
+
+# optional parameter to limit the actual analysis to a fraction of the image
+# do not uncomment this in the master psphot.config file
+# ANALYSIS_REGION                   STR   [1000:1600,2800:3400]
+
+GROWTH_FROM_SOURCES                 BOOL  TRUE
+IGNORE_GROWTH                       BOOL  FALSE
+CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  FALSE 
+INTERPOLATE_AP                      BOOL  TRUE
+
+POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+POISSON.ERRORS.PHOT.LIN             BOOL  FALSE
+POISSON.ERRORS.PARAMS               BOOL  TRUE
+
+# psphotFitSourcesLinear has 3 options for the weighting: CONSTANT,
+# IMAGE_VAR, MODEL_VAR the first of these used to be folded into the
+# boolean CONSTANT_PHOTOMETRIC_WEIGHTS above (so if _MODE set, then
+# it overrides).
+LINEAR_FIT_VARIANCE_MODE	    STR  CONSTANT
+
+# Use the covariance factor in the linear fit (true) or set factor to 1.0 (false)
+LINEAR_FIT_COVAR_FACTOR             BOOL  TRUE
+
+PCM_BOX_SIZE                        S32   8
+
+NOISE.FACTOR                        F32  10.0
+NOISE.SIZE                          F32   2.0
+
+# alternate PSPHOT-type recipes
+PSPHOT.FIXED.PSF METADATA
+END
+
+# alternate PSPHOT-type recipes
+PSPHOT.SUMMIT METADATA
+END
+
+# alternate PSPHOT-type recipes
+PSPHOT.SEEING METADATA
+END
+
+TEST_FIT                            BOOL  FALSE
+TEST_FIT_MODE                       STR   DEFAULT # PSF, CONV, DEFAULT
+TEST_FIT_MODEL                      STR   DEFAULT # PS_MODEL_SERSIC
+TEST_FIT_INNER_RADIUS               F32   NAN 
+TEST_FIT_OUTER_RADIUS               F32   NAN
+TEST_FIT_RADIUS                     F32   NAN
+TEST_MOMENTS_RADIUS                 F32   NAN
+TEST_FIT_X                          F32   NAN
+TEST_FIT_Y                          F32   NAN
+TEST_FIT_CONVOLVED		    BOOL  FALSE
+
+TEST_FIT_PAR0                       F32   NAN
+TEST_FIT_PAR1                       F32   NAN
+TEST_FIT_PAR2                       F32   NAN
+TEST_FIT_PAR3                       F32   NAN
+TEST_FIT_PAR4                       F32   NAN
+TEST_FIT_PAR5                       F32   NAN
+TEST_FIT_PAR6                       F32   NAN
+TEST_FIT_PAR7                       F32   NAN
+TEST_FIT_PAR8                       F32   NAN
+TEST_FIT_PAR                        F32   NAN
+
+IMAGE.BACKGROUND.CELL.HISTOGRAM   BOOL  FALSE
+IMAGE.BACKGROUND.CELL.HISTOGRAM.X S32   0
+IMAGE.BACKGROUND.CELL.HISTOGRAM.Y S32   0
+
+DIAGNOSTIC.PLOTS                    METADATA
+  IMAGE.BACKGROUND.CELL.HISTOGRAM   BOOL  FALSE
+  IMAGE.BACKGROUND.CELL.HISTOGRAM.X S32   35
+  IMAGE.BACKGROUND.CELL.HISTOGRAM.Y S32   -1
+END
+
+PSF.FLUXSCALE.NX                    S32   5 		  # number cells to measure flux scale variations
+PSF.FLUXSCALE.NY                    S32   5 		  # number cells to measure flux scale variations
+
+PSPHOT.CR.NSIGMA.LIMIT              F32   3.0  # sources with crNsigma greater that this get tagged as likely cosmic rays
+PSPHOT.EXT.NSIGMA.LIMIT             F32   3.0  # sources with extNsigma greater that this get tagged as likely extended sources
+PSPHOT.EXT.NSIGMA.MOMENTS           F32   3.0  # sources with extNsigma greater that this get tagged as likely extended sources
+PSPHOT.EXT.DIFF.ALTERNATE	    BOOL  FALSE           # use alternate extended source calculation; designed for diff trails
+PSPHOT.EXT.DIFF.ALTERNATE.THRESH    F32	  1.5		  # threshold for alternate extended source calculations
+PSPHOT.EXT.FIT.ALL.SOURCES	    BOOL  FALSE           # Apply extended object fits to all sources
+PSPHOT.EXT.FIT.ALL.THRESH	    F32	  1000		  # Set density threshold above which to not fit all sources
+PSPHOT.CR.GROW                      S32   1               # Number of pixels to grow CR mask
+PSPHOT.CR.NSIGMA.SOFTEN             F32   0.0025          # Softening parameter for weights
+PSPHOT.CRMASK.XTEST		    S32   0
+PSPHOT.CRMASK.YTEST		    S32   0
+PSPHOT.CRMASK.APPLY		    BOOL  FALSE		  # TEST THIS before enabling.
+PSPHOT.CR.MAX.SIZE		    F32   0		  # guess for limit on M_minor in pix^2
+PSPHOT.CR.MAX.MAG		    F32   0		  # guess for limit on Kron Mag
+PSPHOT.CR.AUTOSCALE		    BOOL  FALSE
+PSPHOT.CR.MAX.WINDOW                S32   50              # maximum window to seach for cosmic rays
+
+# Detection efficiency
+EFF.NUM                             S32   500			# Number of fake sources per bin
+@EFF.MAG			    F32	  -2.0 -1.0 -0.5 -0.25 -0.1 -0.05 0.0 0.05 0.1 0.25 0.5 1.0 2.0	# Magnitude of fake sources relative to limit
+
+# stack photometry parameters
+PSPHOT.STACK.MATCH.RADIUS           F32   5.0  # join detections from different images with this correlation radius (pixels)
+PSPHOT.STACK.MATCH.PSF              BOOL  T    # convolved input images to common target PSF
+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.TARGET.PSF.FWHM       F32   6.0 8.0 # FWHM of target PSF (if NOT AUTO sized; pixels)
+PSPHOT.STACK.USE.RAW                BOOL  T
+PSPHOT.STACK.SPLIT.LINEAR.FIT       BOOL  T    # require positive flux for pass 3 linear fit then fit matched sources separately
+
+# psphotStack source matching parameters
+PSPHOT.STACK.MIN.DETECT.FOR.FORCED  S32   1   # number of bands that an object must be detected in before creating
+                                              # sources in undetected bands
+                                              
+# PSPHOT.STACK.MATCH.FILTER
+# list of metadata to control how source matching is performed for each band
+# FILTER.ID is used to match to the FPA's concept value FPA.FILTERID
+# ORDER controls the order in which the bands are processed. Lower numbers are processed first.
+#       The intent is to process in order of sensitivity
+# MATCH.ALL if true causes forced photometry sources for objects detected in that band but don't meet 
+#       the minimum number of detections cut
+# TYPE is used in the recipe bookkeeping and has no semantic (but must be unique)
+# Note: if an input has a filter not in this list it will be processed after all of the others with MATCH.ALL = FALSE
+PSPHOT.STACK.MATCH.FILTERS   METADATA
+    TYPE        PSPHOT_STACK.MATCH.FILTER FILTER.ID ORDER MATCH.ALL Y.RATIO.MAX
+    gband       PSPHOT_STACK.MATCH.FILTER   g        4       TRUE      0
+    rband       PSPHOT_STACK.MATCH.FILTER   r        2       TRUE      0
+    iband       PSPHOT_STACK.MATCH.FILTER   i        1       TRUE      0
+    zband       PSPHOT_STACK.MATCH.FILTER   z        3       TRUE      0
+    yband       PSPHOT_STACK.MATCH.FILTER   y        5       TRUE       0
+    wband       PSPHOT_STACK.MATCH.FILTER   w        0       TRUE      0
+END
+
+EXT.ANALYSIS.MAG.LIMITS METADATA
+    TYPE  DATA FILTER.ID MAG.LIMIT.PETRO    MAG.LIMIT.EXTFIT
+    gband DATA g         25                 21.5
+    rband DATA r         25       	    21.5 
+    iband DATA i         25		    21.5
+    zband DATA z         25		    20.5
+    yband DATA y         25		    19.5
+    wband DATA w         25		    21.5
+    other DATA any       25		    21.5
+END
+
+# if true keep all matched sources, even if we get a non-finite aperture flux measurement
+PSPHOT.STACK.KEEP.BAD.MATCHES  BOOL     T
+
+RADIAL_APERTURES                    BOOL  F    # calculate flux in circular radial apertures?
+RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+
+# zero point and exposure time to which fullForceSummary scales fluxes to
+PSPHOT.FULLFORCE.EXPTIME            F32   1.00 
+PSPHOT.FULLFORCE.ZERO_PT            F32   25.00
+
+
+GALAXY_SHAPES                       BOOL  F
+GALAXY_SHAPES_STYLE                 STR   R_MAJ_R_MIN
+
+# new recipe values which set paramter spacing based on signal to noise
+# DELTA = Q / SN
+# F_MIN = 1 - NSIGMA * DELTA
+# F_MAX = 1 + NSIGMA * DELTA
+GALAXY_SHAPES_Q                     F32   1.5       # these values result in
+GALAXY_SHAPES_NSIGMA                F32   2.0       # a 5 x 5 grid
+GALAXY_SHAPES_CLAMP_SN              F32   50.       # with minimum delta .03 pixels
+
+# These recipe values are no longer used
+GALAXY_SHAPES_FR_MAJOR_MIN          F32   0.8
+GALAXY_SHAPES_FR_MAJOR_MAX          F32   1.60
+GALAXY_SHAPES_FR_MAJOR_DEL          F32   0.2
+GALAXY_SHAPES_FR_MINOR_MIN          F32   0.8
+GALAXY_SHAPES_FR_MINOR_MAX          F32   1.60
+GALAXY_SHAPES_FR_MINOR_DEL          F32   0.2
+
+
+# Extended source fit parameters
+STACKPHOT                             METADATA
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform any of the aperture-like measurements?
+  EXTENDED_SOURCE_GALAXY_PARAMS       BOOL  TRUE  # measure additional paramters for "galaxies"
+  EXTENDED_SOURCE_SN_LIM              F32   10.0
+  EXTENDED_SOURCE_PETROSIAN           BOOL  TRUE
+  EXTENDED_SOURCE_ANNULI              BOOL  TRUE
+  EXT.NSIGMA.LIMIT.USE                BOOL  FALSE
+  EXT.FIT.MIN.GAL.LIMIT.USE           BOOL  TRUE  # limit extended source fits by galactic coordinates
+
+  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?
+  # 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?
+  RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+  OUTPUT.FORMAT                       STR   PS1_SV4
+
+  # subtract radial profiles for extremely bright stars?
+  SUBTRACT_SATSTAR_PROFILE            BOOL  T
+  
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE 
+  POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+
+  LMM_FIT_CHISQ_CONVERGENCE           BOOL  FALSE           # use the (old) chisq convergence or the new parameter one 
+  LMM_FIT_GAIN_FACTOR_MODE            S32   2               # there are 3 options to determine the gain factor (0,1,2)
+  EXT_FIT_MIN_TOL                     F32   0.1             # Fit tolerance for EXT
+
+  EXT_FIT_MAX_RADIUS                  F32   50.0
+  PSF_MODEL                           STR   PS_MODEL_PS1_V1 
+  EXT_MODEL                           STR   PS_MODEL_QGAUSS
+  PEAKS_NMAX_TOTAL                    S32   0 # set this to limit the allowed number of peaks - Yields fault instead of avoid memory explosion
+
+  REPAIR.PETROSIAN.MAG.ERRORS         BOOL  TRUE # write PETRO_MAG_ERR as dFlux / Flux when writing
+
+  SAVE.RESID                          BOOL  FALSE
+END
+
+STACKPHOT_DENSE                       METADATA
+  EXTENDED_SOURCE_FITS                BOOL  FALSE  # perform any of the aperture-like measurements?
+  EXTENDED_SOURCE_GALAXY_PARAMS       BOOL  FALSE  # measure additional paramters for "galaxies"
+  EXTENDED_SOURCE_SN_LIM              F32   10.0
+  EXTENDED_SOURCE_PETROSIAN           BOOL  TRUE
+  EXTENDED_SOURCE_ANNULI              BOOL  TRUE
+  EXT.NSIGMA.LIMIT.USE                BOOL  FALSE
+  EXT.FIT.MIN.GAL.LIMIT.USE           BOOL  TRUE  # limit extended source fits by galactic coordinates
+
+  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?
+  # 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?
+  RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+  OUTPUT.FORMAT                       STR   PS1_SV4
+
+  # subtract radial profiles for extremely bright stars?
+  SUBTRACT_SATSTAR_PROFILE            BOOL  T
+  
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE 
+  POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+
+  LMM_FIT_CHISQ_CONVERGENCE           BOOL  FALSE           # use the (old) chisq convergence or the new parameter one 
+  LMM_FIT_GAIN_FACTOR_MODE            S32   2               # there are 3 options to determine the gain factor (0,1,2)
+  EXT_FIT_MIN_TOL                     F32   0.1             # Fit tolerance for EXT
+
+  EXT_FIT_MAX_RADIUS                  F32   50.0
+  PSF_MODEL                           STR   PS_MODEL_PS1_V1 
+  EXT_MODEL                           STR   PS_MODEL_QGAUSS
+  PEAKS_NMAX_TOTAL                    S32   0 # set this to limit the allowed number of peaks - Yields fault instead of avoid memory explosion
+
+  REPAIR.PETROSIAN.MAG.ERRORS         BOOL  TRUE # write PETRO_MAG_ERR as dFlux / Flux when writing
+
+  SAVE.RESID                          BOOL  FALSE
+END
+
+# Extended source fit parameters
+STACKPHOT_TEST                        METADATA
+  EXTENDED_SOURCE_FITS                BOOL  F  # perform any of the aperture-like measurements?
+  EXTENDED_SOURCE_SN_LIM              F32   10.0
+  EXTENDED_SOURCE_PETROSIAN           BOOL  F
+
+  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?
+
+  # 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?
+  RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+  OUTPUT.FORMAT                       STR   PS1_SV4
+
+  # subtract radial profiles for extremely bright stars?
+  SUBTRACT_SATSTAR_PROFILE            BOOL  T
+  
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE 
+  POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+
+  LMM_FIT_CHISQ_CONVERGENCE           BOOL  FALSE           # use the (old) chisq convergence or the new parameter one 
+  LMM_FIT_GAIN_FACTOR_MODE            S32   2               # there are 3 options to determine the gain factor (0,1,2)
+  EXT_FIT_MIN_TOL                     F32   0.1             # Fit tolerance for EXT
+
+  EXT_FIT_MAX_RADIUS                  F32   50.0
+  PSF_MODEL                           STR   PS_MODEL_PS1_V1 
+  EXT_MODEL                           STR   PS_MODEL_QGAUSS
+  PEAKS_NMAX_TOTAL                    S32   0 # set this to limit the allowed number of peaks - Yields fault instead of avoid memory explosion
+
+  REPAIR.PETROSIAN.MAG.ERRORS         BOOL  TRUE # write PETRO_MAG_ERR as dFlux / Flux when writing
+
+  SAVE.RESID                          BOOL  FALSE
+END
+
+# Extended source fit parameters
+STACKPHOT_EUCLID                      METADATA
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform any of the aperture-like measurements?
+  EXTENDED_SOURCE_GALAXY_PARAMS       BOOL  TRUE  # measure additional paramters for "galaxies"
+  EXTENDED_SOURCE_SN_LIM              F32   10.0
+  EXTENDED_SOURCE_PETROSIAN           BOOL  TRUE
+  EXTENDED_SOURCE_ANNULI              BOOL  TRUE
+  EXT.NSIGMA.LIMIT.USE                BOOL  FALSE
+  EXT.FIT.MIN.GAL.LIMIT.USE           BOOL  TRUE  # limit extended source fits by galactic coordinates
+
+  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?
+  # 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?
+  RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+  OUTPUT.FORMAT                       STR   PS1_SV4
+
+  # PS1 EUCLID values (dropped inner 2 apertures)
+  @RADIAL.ANNULAR.BINS.LOWER           F32      0.00  5.38 10.77 16.15 21.54 32.30 # perl parser fails without a comment ticket #1476 still?
+  @RADIAL.ANNULAR.BINS.UPPER           F32      5.38 10.77 16.15 21.54 32.30 43.06 # perl parser fails without a comment ticket #1476 still?
+  #                aperture radius in arcsec:   1.0   2.0   3.0   4.0   6.0   8.0
+
+  # subtract radial profiles for extremely bright stars?
+  SUBTRACT_SATSTAR_PROFILE            BOOL  T
+  
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE 
+  POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+
+  LMM_FIT_CHISQ_CONVERGENCE           BOOL  FALSE           # use the (old) chisq convergence or the new parameter one 
+  LMM_FIT_GAIN_FACTOR_MODE            S32   2               # there are 3 options to determine the gain factor (0,1,2)
+  EXT_FIT_MIN_TOL                     F32   0.1             # Fit tolerance for EXT
+
+  EXT_FIT_MAX_RADIUS                  F32   50.0
+  PSF_MODEL                           STR   PS_MODEL_PS1_V1 
+  EXT_MODEL                           STR   PS_MODEL_QGAUSS
+  PEAKS_NMAX_TOTAL                    S32   0 # set this to limit the allowed number of peaks - Yields fault instead of avoid memory explosion
+
+  REPAIR.PETROSIAN.MAG.ERRORS         BOOL  TRUE # write PETRO_MAG_ERR as dFlux / Flux when writing
+
+  SAVE.RESID                          BOOL  FALSE
+END
+
+# Extended source fit parameters
+STACKPHOT_TEST_V1                     METADATA
+  EXTENDED_SOURCE_FITS                BOOL  F  # perform any of the aperture-like measurements?
+  EXTENDED_SOURCE_SN_LIM              F32   20.0
+  EXTENDED_SOURCE_PETROSIAN           BOOL  TRUE
+
+  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
+  @PSPHOT.STACK.TARGET.PSF.FWHM       F32   8.0 10.0 # FWHM of target PSF (if NOT AUTO sized; pixels)
+  RADIAL_APERTURES                    BOOL  F    # calculate flux in circular radial apertures?
+  RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+  OUTPUT.FORMAT                       STR   PS1_V3
+
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE
+  POISSON.ERRORS.PHOT.LMM             BOOL  FALSE
+  PSF_APERTURE_SCALE                  F32   4.5
+  PSF_REF_RADIUS                      F32   35
+
+  EXT_FIT_MAX_RADIUS                  F32   50.0
+  PSF_MODEL                           STR   PS_MODEL_QGAUSS 
+  EXT_MODEL                           STR   PS_MODEL_SERSIC
+END
+
+# Extended source fit parameters
+SINGLE_TEST_V1                     METADATA
+  EXTENDED_SOURCE_FITS                BOOL  F  # perform any of the aperture-like measurements?
+  EXTENDED_SOURCE_SN_LIM              F32   20.0
+  EXTENDED_SOURCE_PETROSIAN           BOOL  TRUE
+
+  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
+  @PSPHOT.STACK.TARGET.PSF.FWHM       F32   8.0 10.0 # FWHM of target PSF (if NOT AUTO sized; pixels)
+  RADIAL_APERTURES                    BOOL  F    # calculate flux in circular radial apertures?
+  RADIAL_APERTURES_SN_LIM             F32   0.0  # S/N limit for radial aperture calculation
+  OUTPUT.FORMAT                       STR   PS1_V3
+
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  FALSE
+  POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+
+  PSF_APERTURE_SCALE                  F32   4.5
+  PSF_REF_RADIUS                      F32   35
+
+  EXT_FIT_MAX_RADIUS                  F32   50.0
+  PSF_MODEL                           STR   PS_MODEL_PS1_V1 
+  EXT_MODEL                           STR   PS_MODEL_SERSIC
+END
+
+# Extended source fit parameters
+APTEST_V1                     METADATA
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  FALSE
+  POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+  SKY_STAT                            STR   FITTED_MEAN
+END
+
+# Extended source fit parameters
+APTEST_V2                     METADATA
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  FALSE
+  POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+  SKY_STAT                            STR   ROBUST_MEDIAN
+END
+
+# Extended source fit parameters
+APTEST_V3                     METADATA
+  CONSTANT_PHOTOMETRIC_WEIGHTS        BOOL  TRUE
+  POISSON.ERRORS.PHOT.LMM             BOOL  TRUE
+  SKY_STAT                            STR   FITTED_MEAN
+END
+
+STACKPHOT_SINGLE    METADATA
+  # while not used by psphot directly, staticsky.pl uses to decide if single filter calls psphot with convolved or unconvolved/raw input. 
+  PSPHOT.STACK.USE.RAW                BOOL  T   # if false perform photometry & morphology analysis on the convolved images
+  # 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.
+  KRON_SMOOTH                         BOOL  T    # smooth before kron radius measurement
+  # default is T and won't work here 
+  SAVE.BACKMDL                        BOOL  F
+END
+
+
+# Recipe overrides for CHIP
+CHIP	METADATA
+  ## 
+  PSF_FIT_MODEL_SUM_FRAC_CUT        F32  0.5
+  PSF_FIT_MASKED_SUM_FRAC_CUT       F32  0.1
+END
+
+CHIP_CONSTANT_WEIGHTPHOT METADATA
+END
+
+# Recipe overrides for PSPHOT in sdssmosaic
+PSPHOT_NOAP_PSF METADATA
+END
+
+PSPHOT_AP_PSF METADATA
+END
+
+PSPHOT_AP_NOPSF METADATA
+END
+
+# Recipe overrides for STACK
+STACK	METADATA
+END
+
+# Recipe overrides for DIFF
+DIFF	METADATA
+  DIFF_STATS			    BOOL TRUE	       # Calculate diff-specific stats
+  OUTPUT.FORMAT		            STR  PS1_DV5       # Format of output file
+
+  PSF_FIT_MODEL_SUM_FRAC_CUT        F32  0.5
+  PSF_FIT_MASKED_SUM_FRAC_CUT       F32  0.1
+
+  # Extended source fit parameters
+  # these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  # extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+END
+
+# Recipe overrides for STACK-STACK DIFF
+STACK_DIFF         METADATA
+  DIFF_STATS                        BOOL TRUE          # Calculate diff-specific stats
+  OUTPUT.FORMAT                     STR  PS1_DV5       # Format of output file
+
+  CHIP_PARAMS                       BOOL FALSE
+
+  PSF_FIT_MODEL_SUM_FRAC_CUT        F32  0.5
+  PSF_FIT_MASKED_SUM_FRAC_CUT       F32  0.1
+
+  # Extended source fit parameters
+  # these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  # extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+END
+
+
+
+# Recipe overrides for DIFF_PV3
+DIFF_PV3	METADATA
+  DIFF_STATS			    BOOL TRUE	       # Calculate diff-specific stats
+  OUTPUT.FORMAT		            STR  PS1_DV5       # Format of output file
+
+  # Extended source fit parameters
+  # these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  # extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+END
+
+SSTF_DIFF METADATA
+  PEAKS_NSIGMA_LIMIT_2              F32  3.5           # peak significance threshold -- MOPS would like to see 4.0->3.5 since ppMops fixed
+  DIFF_STATS			    BOOL TRUE	       # Calculate diff-specific stats
+  OUTPUT.FORMAT		            STR  PS1_DV5       # Format of output file
+
+  PSF_FIT_MODEL_SUM_FRAC_CUT        F32  0.5
+  PSF_FIT_MASKED_SUM_FRAC_CUT       F32  0.1
+
+  # Extended source fit parameters
+  # these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  # extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+END
+
+SSTF_WS_DIFF METADATA
+  PEAKS_NSIGMA_LIMIT_2              F32  3.5           # peak significance threshold -- MOPS would like to see 4.0->3.5 since ppMops fixed
+  DIFF_STATS                        BOOL TRUE          # Calculate diff-specific stats
+  OUTPUT.FORMAT                     STR  PS1_DV5       # Format of output file
+
+  PSF_FIT_MODEL_SUM_FRAC_CUT        F32  0.5
+  PSF_FIT_MASKED_SUM_FRAC_CUT       F32  0.1
+
+  # Extended source fit parameters
+  # these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  # extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+END
+
+QUB_DIFF METADATA
+  PEAKS_NSIGMA_LIMIT_2              F32  3.5           # peak significance threshold 
+  DIFF_STATS                        BOOL TRUE          # Calculate diff-specific stats
+  OUTPUT.FORMAT                     STR  PS1_DV5       # Format of output file
+
+  PSF_FIT_MODEL_SUM_FRAC_CUT        F32  0.5
+  PSF_FIT_MASKED_SUM_FRAC_CUT       F32  0.1
+
+  ## CR have been on real sources in MOPS so also turn off
+  PSPHOT.CR.MAX.SIZE                F32   0.0             # guess for limit on M_minor in pix^2
+
+  ## from STACK_DIFF -- not clear ever used or needed in either case
+  ## Extended source fit parameters
+  ## these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  ## extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+
+END
+
+YSE_DIFF METADATA
+  PEAKS_NSIGMA_LIMIT_2              F32  3.5           # peak significance threshold 
+  DIFF_STATS                        BOOL TRUE          # Calculate diff-specific stats
+  OUTPUT.FORMAT                     STR  PS1_DV5       # Format of output file
+
+  PSF_FIT_MODEL_SUM_FRAC_CUT        F32  0.5
+  PSF_FIT_MASKED_SUM_FRAC_CUT       F32  0.1
+
+  ## CR have been on real sources in MOPS so also turn off
+  PSPHOT.CR.MAX.SIZE                F32   0.0             # guess for limit on M_minor in pix^2
+
+  ## from STACK_DIFF -- not clear ever used or needed in either case
+  ## Extended source fit parameters
+  ## these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  ## extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+
+END
+
+YSE_NOCOVAR_DIFF METADATA
+  PEAKS_NSIGMA_LIMIT_2              F32  3.5           # peak significance threshold 
+  DIFF_STATS                        BOOL TRUE          # Calculate diff-specific stats
+  OUTPUT.FORMAT                     STR  PS1_DV5       # Format of output file
+
+  PSF_FIT_MODEL_SUM_FRAC_CUT        F32  0.5
+  PSF_FIT_MASKED_SUM_FRAC_CUT       F32  0.1
+
+  ## CR have been on real sources in MOPS so also turn off
+  PSPHOT.CR.MAX.SIZE                F32   0.0             # guess for limit on M_minor in pix^2
+
+  ## from STACK_DIFF -- not clear ever used or needed in either case
+  ## Extended source fit parameters
+  ## these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  ## extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+
+  ## Use the covariance factor in the linear fit (true) or set factor to 1.0 (false)
+  LINEAR_FIT_COVAR_FACTOR             BOOL  FALSE
+
+  LINEAR_FIT_VARIANCE_MODE            STR   IMAGE_VAR
+
+END
+
+## YSE lens SSdiff phot 
+YSE_LENS_DIFF    METADATA
+  PEAKS_NSIGMA_LIMIT_2              F32  3.5           # peak significance threshold 
+  DIFF_STATS                        BOOL TRUE          # Calculate diff-specific stats
+  OUTPUT.FORMAT                     STR  PS1_DV5       # Format of output file
+
+  PSF_FIT_MODEL_SUM_FRAC_CUT        F32  0.5
+  PSF_FIT_MASKED_SUM_FRAC_CUT       F32  0.1
+
+  CHIP_PARAMS                       BOOL FALSE
+
+  ## CR have been on real sources in MOPS so turn off, and these are also stacks
+  PSPHOT.CR.MAX.SIZE                F32   0.0             # guess for limit on M_minor in pix^2
+
+  ## from STACK_DIFF -- not clear ever used or needed
+  ## Extended source fit parameters
+  ## these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  ## extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+
+END
+
+# Recipe overrides for PR reduction
+PR	METADATA
+	FULL_FIT_SN_LIM		F32	100.0
+	BACKGROUND.XBIN		S32	2400
+	BACKGROUND.YBIN		S32	2400
+	IMSTATS_NPIX		S32	50000
+	BREAK_POINT             STR   ENSEMBLE     
+	PEAKS_NMAX              S32   1000            # on first pass, only keep NMAX peak (0 == all)
+	BACKGROUND.XBIN	      S32   128             # size    	    of background superpixels
+	BACKGROUND.YBIN	         S32   128             # size of background superpixels
+	SKY_STAT         STR   FITTED_MEAN_V4  # statistic used to measure background
+END
+
+GALAXY_TEST METADATA
+  # Extended source fit parameters
+  # these models are used for high-quality shape analysis after all sources have been removed
+  SAVE.RESID BOOL T
+
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_QGAUSS
+  PSF_MODEL                           STR   PS_MODEL_PS1_V1
+
+  LMM_FIT_CHISQ_CONVERGENCE           BOOL  FALSE           # use the (old) chisq convergence or the new parameter one 
+  LMM_FIT_GAIN_FACTOR_MODE            S32   2               # there are 3 options to determine the gain factor (0,1,2)
+  EXT_FIT_MIN_TOL                     F32   0.1             # Fit tolerance for EXT
+
+  # XXX these are only needed if we want to get perfect fits of the synthetic data
+  PSF_FIT_RADIUS_SCALE         F32   3.75
+  EXT_FIT_NSIGMA_CONV          F32   11
+  PSF.RESIDUALS BOOL F
+
+  # if this is defined, it gives a list of the model names to fit below (ALL or NONE are also valid)
+  EXTENDED_SOURCE_MODELS_SELECTION    STR   NONE
+
+  # extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    EXP_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_EXP     10.0    TRUE
+    DEV_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_DEV     10.0    TRUE
+    SER_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_SERSIC  10.0    TRUE
+    GAU_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_GAUSS   10.0    TRUE
+    PGA_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_PGAUSS  10.0    TRUE
+    QGA_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_QGAUSS  10.0    TRUE
+    PS1_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_PS1_V1  10.0    TRUE
+
+    EXP_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_EXP     10.0    FALSE
+    DEV_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_DEV     10.0    FALSE
+    SER_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_SERSIC  10.0    FALSE
+    GAU_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_GAUSS   10.0    FALSE
+    PGA_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_PGAUSS  10.0    FALSE
+    QGA_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_QGAUSS  10.0    FALSE
+    PS1_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_PS1_V1  10.0    FALSE
+  END
+END
+
+FULLFORCE_WARP METADATA
+    GALAXY_SHAPES           BOOL    TRUE
+    RADIAL_APERTURES        BOOL    TRUE
+    EXTENDED_SOURCE_FITS    BOOL    TRUE    # this casues the xfit extension to be written out
+    EXTENDED_SOURCE_PETROSIAN BOOL  TRUE    # To measure petrosian magnitudes
+    EXTENDED_SOURCE_ANNULI  BOOL    TRUE
+    LENSING_PARAMETERS      BOOL    TRUE
+    SAVE.PSF                BOOL    FALSE
+    SAVE.BACKMDL            BOOL    FALSE
+    SAVE.RESID              BOOL    FALSE
+    OUTPUT.FORMAT           STR     PS1_V5
+END
+
+FULLFORCE_EUCLID METADATA
+    GALAXY_SHAPES           BOOL    TRUE
+
+    # new recipe values which set paramter spacing based on signal to noise
+    # DELTA = Q / SN
+    # F_MIN = 1 - NSIGMA * DELTA
+    # F_MAX = 1 + NSIGMA * DELTA
+    GALAXY_SHAPES_Q                     F32   1.5       # these values result in
+    GALAXY_SHAPES_NSIGMA                F32   4.0       # a 9 x 9 grid
+    GALAXY_SHAPES_CLAMP_SN              F32   50.       # with minimum delta .03 pixels
+
+    RADIAL_APERTURES        BOOL    TRUE
+    EXTENDED_SOURCE_FITS    BOOL    TRUE    # this casues the xfit extension to be written out
+    EXTENDED_SOURCE_PETROSIAN BOOL  TRUE    # To measure petrosian magnitudes
+    EXTENDED_SOURCE_ANNULI  BOOL    TRUE
+    LENSING_PARAMETERS      BOOL    TRUE
+    SAVE.PSF                BOOL    FALSE
+    SAVE.BACKMDL            BOOL    FALSE
+    SAVE.RESID              BOOL    FALSE
+    OUTPUT.FORMAT           STR     PS1_V5
+END
+
+CHIP_SHALLOW METADATA
+  PEAKS_NSIGMA_LIMIT                  F32   25.0            # peak significance threshold
+  PEAKS_NSIGMA_LIMIT_2                F32   15.0            # peak significance threshold
+END
+
+SWEETSPOT_DENSE METADATA
+END
+
+M31_DEEP METADATA 
+END
+
+UNIONS_DR3 METADATA
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/pstamp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/pstamp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/pstamp.config	(revision 42661)
@@ -0,0 +1,45 @@
+# pstamp.config
+# List of data groups to use for bycoord and byskycell requests that
+# do not specify a data_group.
+# Notable for their absence are the data_groups for MD nightly science,
+# M31, and STS. Due to the nature of those surveys too much data is
+# returned.
+
+DATA_GROUP  MULTI
+
+DATA_GROUP  STR	 LAP.ThreePi.20%
+DATA_GROUP  STR	 ThreePi.20%            # ThreePi nightly science
+
+# this is SAS_v8
+DATA_GROUP  STR	 czw.SAS2.20120718
+
+DATA_GROUP  STR	 MD01.refstack.20120803
+
+DATA_GROUP  STR	 MD02.refstack.20110907
+DATA_GROUP  STR	 MD02.GR0%
+
+DATA_GROUP  STR	 MD03.refstack.20111010
+DATA_GROUP  STR	 MD03.GR0%
+
+DATA_GROUP  STR	 MD04.refstack.20111012
+DATA_GROUP  STR	 MD04.GR0%
+
+DATA_GROUP  STR	 MD05.refstack.20111014
+DATA_GROUP  STR	 MD05.GR0%
+
+DATA_GROUP  STR	 MD06.refstack.20111122
+DATA_GROUP  STR	 condor_MD06.V3_01_dg
+
+DATA_GROUP  STR	 MD07.refstack.20111106
+DATA_GROUP  STR	 condor_MD07.V3_01_dg
+
+DATA_GROUP  STR	 MD08.refstack.20120422
+DATA_GROUP  STR	 MD08.GR0%
+
+DATA_GROUP  STR	 MD09.refstack.20120603
+DATA_GROUP  STR	 MD09.GR0%
+
+DATA_GROUP  STR	 MD10.refstack.20120705
+
+DATA_GROUP  STR  %SS.20%                # Sweet Spot nightly science
+
Index: /branches/eam_branches/ippconfig.20240412/recipes/psvideophot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/psvideophot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/psvideophot.config	(revision 42661)
@@ -0,0 +1,34 @@
+# Standard chip processing
+CHIP_1               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
+  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
+
+# Photometry and astrometry only (for pre-reduced data)
+PSVIDEOPHOT_1         METADATA
+   # right now we don't have any options
+    PHOTOM           BOOL    TRUE            # Source identification and photometry
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/pswarp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/pswarp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/pswarp.config	(revision 42661)
@@ -0,0 +1,58 @@
+### Recipe for pswarp
+
+GRID.NX			S32	128		# Iso-astrom grid size in x (pixels)
+GRID.NY			S32	128		# Iso-astrom grid size in y (pixels)
+INTERPOLATION.MODE	STR	LANCZOS3	# Interpolation mode to use
+POOR.FRAC		F32	0.01		# Max fraction of bad flux for a "poor" warped pixel
+ASTROM.SOURCE		STR	PSASTRO.OUTPUT	# Source file rule for astrometry, or NULL
+ASTROM.ACCEPT		BOOL	FALSE		# Accept astrometric solution unconditionally?
+ASTROM.DEPTH		STR	MEF             # Source file rule for astrometry, or NULL
+ACCEPT.FRAC		F32	0.1		# Minimum fraction of good pixels to accept result
+INTERPOLATION.NUM	S32	1000		# Number of interpolation kernels to pre-calculate
+PSF			BOOL	TRUE		# Measure PSF for warped image?
+SOURCES			BOOL	TRUE		# Write source list for warped image?
+APPLY.PIXELNAN		BOOL	FALSE		# Apply NAN'ing of pixels underneath masks
+DETECT.CTE              BOOL    FALSE           # perform object detections in the CTE regions
+
+# as of r41891, dvoImageOverlaps compares the header keyword CERSTD to MAX.CERROR
+MAX.CERROR		F32	0.15	        # Maximum allowed CERROR value (astrometric error in arcsec)
+
+NO.COMPRESS             BOOL    FALSE           # turn off image compression (if enabled)
+
+MASK.STATS         BOOL    TRUE            # calculate mask statistics.
+MASKSTAT.STATIC     U32 0x01f
+MASKSTAT.DYNAMIC    U32 0x060
+MASKSTAT.MAGIC      U32 0x800
+MASKSTAT.ADVISORY   U32 0x080
+
+BACKGROUND.MODEL    BOOL   FALSE               # Construct a warped version of the chip stage background
+BKG.XGRID              S32    4                # These need to be tuned
+BKG.YGRID              S32    4
+
+ADDITIONAL_WCS_ORDERS S32     3                # By default, use a bilevel astrometric model with 3 additional orders.
+
+# Default recipe for warping
+WARP	METADATA
+END
+
+WARP_NOCOMPRESS    METADATA
+    NO.COMPRESS     BOOL    TRUE
+END
+
+#PR recipe for faster processing
+PR METADATA
+	PSF	BOOL	FALSE
+END
+
+# Background restoration
+BACKGROUND	METADATA
+	SOURCES		    BOOL	FALSE		# Write source list for warped image?
+	PSF		    BOOL	FALSE		# Measure PSF for warped image?
+        BACKGROUND.MODEL    BOOL        FALSE           # do not model background
+END
+
+WARP_GAUSS	METADATA
+  INTERPOLATION.MODE	STR	GAUSS	# Interpolation mode to use
+END
+
+  
Index: /branches/eam_branches/ippconfig.20240412/recipes/reductionClasses.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/reductionClasses.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/reductionClasses.mdc	(revision 42661)
@@ -0,0 +1,2153 @@
+# These reduction classes define recipes that go together as a group
+
+# the detrend reduction classes are used by the detrend ippScripts to select
+# the desired recipes for the different types of detrend products:
+
+## detrend_process_imfile.pl loads recipes (det_type)_PROCESS & (det_type)_JPEG_IMAGE
+## detrend_resid_imfile.pl loads either (det_type)_RESID OR (det_type)_VERIFY AND (det_type)_JPEG_RESID
+## detrend_stack.pl loads (det_type)_STACK
+
+# (det_type)_PROCESS & (det_type)_RESID are used to select PPIMAGE recipes
+# (det_type)_JPEG_IMAGE, (det_type)_JPEG_RESID are used to select JPEG recipes
+# (det_type)_STACK is used to select the PPMERGE recipe (NOTE: not ppStack)
+
+DETREND         METADATA
+	BIAS_PROCESS		STR	PPIMAGE_O
+	BIAS_RESID		STR	PPIMAGE_B
+	BIAS_VERIFY		STR	PPIMAGE_B
+	BIAS_STACK		STR	PPMERGE_BIAS
+	BIAS_JPEG_IMAGE		STR	BIAS
+	BIAS_JPEG_RESID		STR	BIAS_RESID
+
+	DARK_PREMASK_PROCESS	STR	PPIMAGE_OB
+	DARK_PREMASK_RESID	STR	PPIMAGE_D
+	DARK_PREMASK_VERIFY	STR	PPIMAGE_D
+	DARK_PREMASK_STACK	STR	PPMERGE_DARK
+	DARK_PREMASK_JPEG_IMAGE	STR	BIAS
+	DARK_PREMASK_JPEG_RESID	STR	BIAS_RESID
+
+	DARKTEST_PROCESS	STR	PPIMAGE_OB
+	DARKTEST_RESID		STR	PPIMAGE_D
+	DARKTEST_VERIFY		STR	PPIMAGE_D
+	DARKTEST_STACK		STR	PPMERGE_DARK
+	DARKTEST_JPEG_IMAGE	STR	BIAS
+	DARKTEST_JPEG_RESID	STR	BIAS_RESID
+
+	DARK_PROCESS		STR	PPIMAGE_OB
+	DARK_RESID		STR	PPIMAGE_D
+	DARK_VERIFY		STR	PPIMAGE_D
+	DARK_STACK		STR	PPMERGE_DARK
+	DARK_JPEG_IMAGE		STR	BIAS
+	DARK_JPEG_RESID		STR	BIAS_RESID
+
+	SHUTTER_PROCESS 	STR	PPIMAGE_OBD
+	SHUTTER_RESID		STR	PPIMAGE_S
+	SHUTTER_VERIFY		STR	PPIMAGE_S
+	SHUTTER_STACK		STR	PPMERGE_SHUTTER
+	SHUTTER_JPEG_IMAGE	STR	FLAT
+	SHUTTER_JPEG_RESID	STR	FLAT_RESID
+
+	# *** premask (unmasked) flat-field types
+	FLAT_PREMASK_PROCESS		STR	PPIMAGE_FLATPROC_PREMASK
+	FLAT_PREMASK_RESID		STR	PPIMAGE_F
+	FLAT_PREMASK_VERIFY		STR	PPIMAGE_F
+	FLAT_PREMASK_STACK		STR	PPMERGE_FLAT
+	FLAT_PREMASK_JPEG_IMAGE		STR	FLAT
+	FLAT_PREMASK_JPEG_RESID		STR	FLAT_RESID
+
+	FLATTEST_PREMASK_PROCESS	STR	PPIMAGE_FLATPROC_PREMASK
+	FLATTEST_PREMASK_RESID		STR	PPIMAGE_F
+	FLATTEST_PREMASK_VERIFY		STR	PPIMAGE_F
+	FLATTEST_PREMASK_STACK		STR	PPMERGE_FLAT
+	FLATTEST_PREMASK_JPEG_IMAGE	STR	FLAT
+	FLATTEST_PREMASK_JPEG_RESID	STR	FLAT_RESID
+
+	DOMEFLAT_PREMASK_PROCESS	STR	PPIMAGE_FLATPROC_PREMASK 
+	DOMEFLAT_PREMASK_RESID		STR	PPIMAGE_F
+	DOMEFLAT_PREMASK_VERIFY		STR	PPIMAGE_F
+	DOMEFLAT_PREMASK_STACK		STR	PPMERGE_FLAT
+	DOMEFLAT_PREMASK_JPEG_IMAGE	STR	FLAT
+	DOMEFLAT_PREMASK_JPEG_RESID	STR	FLAT_RESID
+
+	SKYFLAT_PREMASK_PROCESS		STR	PPIMAGE_FLATPROC_PREMASK
+	SKYFLAT_PREMASK_RESID		STR	PPIMAGE_F
+	SKYFLAT_PREMASK_VERIFY		STR	PPIMAGE_F
+	SKYFLAT_PREMASK_STACK		STR	PPMERGE_FLAT
+	SKYFLAT_PREMASK_JPEG_IMAGE	STR	FLAT
+	SKYFLAT_PREMASK_JPEG_RESID	STR	FLAT_RESID
+
+	# *** raw (uncorrected) flat-field types
+	FLAT_RAW_PROCESS	STR	PPIMAGE_OBDS
+	FLAT_RAW_RESID		STR	PPIMAGE_F
+	FLAT_RAW_VERIFY		STR	PPIMAGE_F
+	FLAT_RAW_STACK		STR	PPMERGE_FLAT
+	FLAT_RAW_JPEG_IMAGE	STR	FLAT
+	FLAT_RAW_JPEG_RESID	STR	FLAT_RESID
+
+	DOMEFLAT_RAW_PROCESS	STR	PPIMAGE_OBDS
+	DOMEFLAT_RAW_RESID	STR	PPIMAGE_F
+	DOMEFLAT_RAW_VERIFY	STR	PPIMAGE_F
+	DOMEFLAT_RAW_STACK	STR	PPMERGE_FLAT
+	DOMEFLAT_RAW_JPEG_IMAGE	STR	FLAT
+	DOMEFLAT_RAW_JPEG_RESID	STR	FLAT_RESID
+
+	SKYFLAT_RAW_PROCESS	STR	PPIMAGE_OBDS
+	SKYFLAT_RAW_RESID	STR	PPIMAGE_F
+	SKYFLAT_RAW_VERIFY	STR	PPIMAGE_F
+	SKYFLAT_RAW_STACK	STR	PPMERGE_FLAT
+	SKYFLAT_RAW_JPEG_IMAGE	STR	FLAT
+	SKYFLAT_RAW_JPEG_RESID	STR	FLAT_RESID
+
+	SKYFLATTEST_RAW_PROCESS     STR     PPIMAGE_OBD	
+        SKYFLATTEST_RAW_RESID       STR     PPIMAGE_F
+        SKYFLATTEST_RAW_VERIFY      STR     PPIMAGE_F                 
+        SKYFLATTEST_RAW_STACK       STR     PPMERGE_FLAT
+        SKYFLATTEST_RAW_JPEG_IMAGE  STR     FLAT
+        SKYFLATTEST_RAW_JPEG_RESID  STR     FLAT_RESID     
+
+	# *** Standard flat-field types
+	FLAT_PROCESS		STR	PPIMAGE_OBDS
+	FLAT_RESID		STR	PPIMAGE_F
+	FLAT_VERIFY		STR	PPIMAGE_F
+	FLAT_STACK		STR	PPMERGE_FLAT
+	FLAT_JPEG_IMAGE		STR	FLAT
+	FLAT_JPEG_RESID		STR	FLAT_RESID
+
+	FLATTEST_PROCESS	STR	PPIMAGE_OBDS
+	FLATTEST_RESID		STR	PPIMAGE_F
+	FLATTEST_VERIFY		STR	PPIMAGE_F
+	FLATTEST_STACK		STR	PPMERGE_FLAT
+	FLATTEST_JPEG_IMAGE	STR	FLAT
+	FLATTEST_JPEG_RESID	STR	FLAT_RESID
+
+	DOMEFLAT_PROCESS	STR	PPIMAGE_OBDS
+	DOMEFLAT_RESID		STR	PPIMAGE_F
+	DOMEFLAT_VERIFY		STR	PPIMAGE_F
+	DOMEFLAT_STACK		STR	PPMERGE_FLAT
+	DOMEFLAT_JPEG_IMAGE	STR	FLAT
+	DOMEFLAT_JPEG_RESID	STR	FLAT_RESID
+
+	SKYFLAT_PROCESS		STR	PPIMAGE_OBDS
+	SKYFLAT_RESID		STR	PPIMAGE_F
+	SKYFLAT_VERIFY		STR	PPIMAGE_F
+	SKYFLAT_STACK		STR	PPMERGE_FLAT
+	SKYFLAT_JPEG_IMAGE	STR	FLAT
+	SKYFLAT_JPEG_RESID	STR	FLAT_RESID
+
+	# Generation of pixel masks from darks and flats
+	DARKMASK_PROCESS	STR	PPIMAGE_DARKMASK_PROCESS
+	DARKMASK_RESID		STR	PPIMAGE_M
+	DARKMASK_VERIFY		STR	PPIMAGE_M
+	DARKMASK_STACK		STR	PPMERGE_DARKMASK
+	DARKMASK_JPEG_IMAGE	STR	BIAS_RESID
+	DARKMASK_JPEG_RESID	STR	BIAS_RESID
+
+	FLATMASK_PROCESS	STR	PPIMAGE_FLATMASK_PROCESS
+	FLATMASK_RESID		STR	PPIMAGE_M
+	FLATMASK_VERIFY		STR	PPIMAGE_M
+	FLATMASK_STACK		STR	PPMERGE_FLATMASK
+	FLATMASK_JPEG_IMAGE	STR	FLAT_RESID
+	FLATMASK_JPEG_RESID	STR	FLAT_RESID
+
+	CTEMASK_PROCESS		STR	PPIMAGE_CTEMAP
+	CTEMASK_RESID		STR	PPIMAGE_M
+	CTEMASK_VERIFY		STR	PPIMAGE_M
+	CTEMASK_STACK		STR	PPMERGE_CTEMASK
+	CTEMASK_JPEG_IMAGE	STR	CTEMAP
+	CTEMASK_JPEG_RESID	STR	CTEMAP
+
+	FRINGE_PROCESS		STR	PPIMAGE_OBDSF
+	FRINGE_RESID		STR	PPIMAGE_R
+	FRINGE_VERIFY		STR	PPIMAGE_R
+	FRINGE_STACK		STR	PPMERGE_FRINGE
+	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
+
+# basic science analysis
+DEFAULT		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	  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
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+        FPCAMERA          STR   DEFAULT_RECIPE
+END
+
+GLINT_TEST		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	  GLINT_TEST
+	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
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+END
+
+# Use 1D Gaussian convolutions
+DEFAULT_1DG		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PSPHOT	  STR	  CHIP
+	WARP_PSWARP	  STR	  WARP
+	STACK_PPSTACK	  STR	  STACK_1DG
+	STACK_PPSUB	  STR	  STACK_1DG
+	STACK_PSPHOT	  STR	  STACK
+	DIFF_PPSUB	  STR	  DIFF_1DG
+	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_1DG
+	STACKPHOT_PPSTACK STR     STACKPHOT_1DG
+	STACKPHOT_SINGLE_PSPHOT  STR    STACKPHOT_SINGLE
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+        PSVIDEOPHOT             STR     PSVIDEOPHOT
+        STATICSKY_CALIBRATION   STR     STATICSKY_CAL
+END
+
+# basic z-EUCLID science analysis
+EUCLID_DEFAULT         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     SSTF_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
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+END
+
+# MD basic/nightly science analysis
+MD_DEFAULT		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PSPHOT	  STR	  CHIP
+	WARP_PSWARP	  STR	  WARP
+	## this should be updated when ready w/ revised _1DG version
+	STACK_PPSTACK	  STR	  STACK_NIGHTLY
+	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	  MD_ASTRO
+	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
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+END
+
+# SNIa basic/nightly science analysis 
+SNIA_DEFAULT         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     SNIA_ASTRO
+        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
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+END
+
+# QUB basic/nightly science analysis 
+QUB_DEFAULT         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     WARPSTACK
+        DIFF_PSPHOT       STR     QUB_DIFF
+        JPEG_BIN1         STR     PPIMAGE_J1
+        JPEG_BIN2         STR     PPIMAGE_J2
+        FAKEPHOT          STR     FAKEPHOT
+        ADDSTAR           STR     ADDSTAR
+        PSASTRO           STR     QUB_ASTRO
+        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
+        FULLFORCE_PSPHOT  	 STR    FULLFORCE_WARP
+END
+
+# YSE basic/nightly science analysis 
+YSE   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     WARPSTACK
+        DIFF_PSPHOT       STR     YSE_DIFF
+        JPEG_BIN1         STR     PPIMAGE_J1
+        JPEG_BIN2         STR     PPIMAGE_J2
+        FAKEPHOT          STR     FAKEPHOT
+        ADDSTAR           STR     ADDSTAR
+        PSASTRO           STR     YSE_ASTRO
+        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
+        FULLFORCE_PSPHOT         STR    FULLFORCE_WARP
+END
+
+## YSE lensing stack and SSdiff reduction class 
+YSE_LENS         METADATA
+      DIFF_PPSUB      STR     STACKSTACK
+      DIFF_PSPHOT     STR     YSE_LENS_DIFF
+      JPEG_BIN1       STR     PPIMAGE_J1
+      JPEG_BIN2       STR     PPIMAGE_J2
+      STACK_PPSTACK   STR     STACK_NIGHTLY_1DG
+      STACK_PPSUB     STR     STACK_1DG
+      STACK_PSPHOT    STR     STACK
+      STACKPHOT_PSPHOT         STR     STACKPHOT
+      STACKPHOT_SINGLE_PSPHOT  STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION    STR     STATICSKY_NIGHTCAL
+END
+
+APTEST_V1		METADATA
+	CHIP_PPIMAGE	  STR	  APTEST_V1
+	CHIP_PSPHOT	  STR	  APTEST_V1
+	PSASTRO		  STR	  APTEST_V1
+	JPEG_BIN1	  STR	  PPIMAGE_J1
+	JPEG_BIN2	  STR	  PPIMAGE_J2
+END
+
+# basic science analysis
+APTEST_V2		METADATA
+	CHIP_PPIMAGE	  STR	  APTEST_V2
+	CHIP_PSPHOT	  STR	  APTEST_V2
+	PSASTRO		  STR	  DEFAULT_RECIPE
+	JPEG_BIN1	  STR	  PPIMAGE_J1
+	JPEG_BIN2	  STR	  PPIMAGE_J2
+END
+
+# basic science analysis
+APTEST_V3		METADATA
+	CHIP_PPIMAGE	  STR	  APTEST_V3
+	CHIP_PSPHOT	  STR	  APTEST_V3
+	PSASTRO		  STR	  DEFAULT_RECIPE
+	JPEG_BIN1	  STR	  PPIMAGE_J1
+	JPEG_BIN2	  STR	  PPIMAGE_J2
+END
+
+# large area science analysis
+LAP_SCIENCE		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	  LAP_ASTRO
+	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
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+END
+
+LAP_POLE		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	  POLE_REFCAT
+	STACKPHOT_PSPHOT  STR     STACKPHOT
+	STACKPHOT_PPSUB   STR     STACKPHOT
+	STACKPHOT_PPSTACK STR     STACKPHOT
+	STACKPHOT_SINGLE_PSPHOT  STR    STACKPHOT_SINGLE
+        STATICSKY_CALIBRATION   STR     STATICSKY_POLE
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+END
+
+# basic science analysis
+POLE_REFCAT		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PSPHOT	  STR	  CHIP
+	JPEG_BIN1	  STR	  PPIMAGE_J1
+	JPEG_BIN2	  STR	  PPIMAGE_J2
+	ADDSTAR		  STR	  ADDSTAR
+	PSASTRO		  STR	  POLE_REFCAT
+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
+    CHIP_PPIMAGE                STR     CHIP
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF
+    DIFF_PSPHOT                 STR     SSTF_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
+END
+
+# Sweetspot reduction class
+SWEETSPOT_MASKTEST  METADATA
+    CHIP_PPIMAGE                STR     CHIP_MASKTEST
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF
+    DIFF_PSPHOT                 STR     SSTF_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
+END
+
+# Sweetspot reduction class
+SWEETSPOT_FLATTEST  METADATA
+    CHIP_PPIMAGE                STR     PPIMAGE_FLATTEST
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF
+    DIFF_PSPHOT                 STR     SSTF_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
+END
+
+SWEETSPOT_DARKTEST  METADATA
+    CHIP_PPIMAGE                STR     CHIP_DARKTEST
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF
+    DIFF_PSPHOT                 STR     SSTF_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
+END
+
+SWEETSPOT_DARKTEST_CONTINUITY  METADATA
+    CHIP_PPIMAGE                STR     CHIP_DARKTEST_CONTINUITY
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF
+    DIFF_PSPHOT                 STR     SSTF_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
+END
+
+# For use when both MASKTEST and DARKTEST are used
+# at the same time
+SWEETSPOT_DARKTEST_MASKTEST  METADATA
+    CHIP_PPIMAGE                STR     CHIP_DARKTEST_MASKTEST
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF
+    DIFF_PSPHOT                 STR     SSTF_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
+END
+
+
+# For use when both TIMEDARK and TIMEMASK are used
+# at the same time
+SWEETSPOT_TIMEDARK  METADATA
+    CHIP_PPIMAGE                STR     CHIP_TIMEDARK
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF
+    DIFF_PSPHOT                 STR     SSTF_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
+END
+
+SWEETSPOT_1DG  METADATA
+    CHIP_PPIMAGE                STR     CHIP
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK_1DG
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF_1DG
+    DIFF_PSPHOT                 STR     SSTF_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_1DG
+    STACKPHOT_PPSTACK           STR     STACKPHOT
+    STACKPHOT_SINGLE_PSPHOT     STR     STACKPHOT_SINGLE
+    BACKGROUND_PPBACKGROUND     STR     BACKGROUND
+    BACKGROUND_PSWARP           STR     BACKGROUND
+    PSVIDEOPHOT                 STR     PSVIDEOPHOT
+END
+
+# Sweetspot reduction class
+SWEETSPOT_WS  METADATA
+    CHIP_PPIMAGE                STR     CHIP
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     WARPSTACK
+    DIFF_PSPHOT                 STR     SSTF_WS_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
+END
+
+# sweetspot no dual test case
+SWEETSPOT_NODUAL  METADATA
+    DIFF_PPSUB        STR     DIFF_NODUAL
+    DIFF_PSPHOT       STR     SSTF_DIFF
+    JPEG_BIN1         STR     PPIMAGE_J1
+    JPEG_BIN2         STR     PPIMAGE_J2
+END
+
+# test for MOPS request reprocessing without masking
+NOMASKTEST  METADATA
+    CHIP_PPIMAGE                STR     CHIP_NOMASKTEST
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF
+    DIFF_PSPHOT                 STR     SSTF_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
+END
+
+# Sweetspot reduction class
+NOBURNTEST  METADATA
+    CHIP_PPIMAGE                STR     CHIP_NOBURNTOOL
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     QUICKSTACK
+    STACK_PPSUB                 STR     STACK
+    STACK_PSPHOT                STR     STACK
+    DIFF_PPSUB                  STR     DIFF
+    DIFF_PSPHOT                 STR     SSTF_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
+END
+
+
+#Recipe for processing engineering exposures
+ENGI_DEFAULT         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     ENGI_ASTRO
+        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
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+END
+
+CONSTANT_WEIGHTPHOT		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PSPHOT	  STR	  CHIP_CONSTANT_WEIGHTPHOT
+	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
+END
+
+DEFAULT_DARKTEST	METADATA
+	CHIP_PPIMAGE	  STR	  CHIP_DARKTEST
+	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
+END
+
+
+
+DEFAULT_MASKTEST		METADATA
+	CHIP_PPIMAGE	STR	CHIP_MASKTEST
+	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
+ 	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+ 	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
+SSTF_NOCONV		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	  SSTF_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
+END
+
+SSTF_4SIG		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	  SSTF_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
+END
+
+SSTF_NOCONV_4SIG		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	  SSTF_DIFF
+	DIFF_PSPHOT	  STR	  SSTF_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
+END
+
+
+
+# reduction class specifically for warpwarp diffs:
+WARPWARP	METADATA
+	DIFF_PPSUB	STR	WARPWARP
+	DIFF_PSPHOT	STR	DIFF
+	JPEG_BIN1	STR	PPIMAGE_J1
+	JPEG_BIN2	STR	PPIMAGE_J2
+END
+
+# reduction class specifically for warpstack diffs:
+WARPSTACK	METADATA
+	DIFF_PPSUB	STR	WARPSTACK
+	DIFF_PSPHOT	STR	DIFF
+	JPEG_BIN1	STR	PPIMAGE_J1
+	JPEG_BIN2	STR	PPIMAGE_J2
+END
+
+# specific for PV3 WSdiff processing to do inverse phot
+WARPSTACK_PV3       METADATA
+        DIFF_PPSUB      STR     WARPSTACK_PV3
+        DIFF_PSPHOT     STR     DIFF_PV3
+        JPEG_BIN1       STR     PPIMAGE_J1
+        JPEG_BIN2       STR     PPIMAGE_J2
+END
+
+# reduction class specifically for warpstack diffs:
+WARPSTACK_FORCED	METADATA
+	DIFF_PPSUB	STR	WARPSTACK_FORCED
+	DIFF_PSPHOT	STR	DIFF
+	JPEG_BIN1	STR	PPIMAGE_J1
+	JPEG_BIN2	STR	PPIMAGE_J2
+END
+
+# reduction class specifically for stackstack diffs:
+STACKSTACK	METADATA
+	DIFF_PPSUB	STR	STACKSTACK
+	DIFF_PSPHOT	STR	STACK_DIFF
+	JPEG_BIN1	STR	PPIMAGE_J1
+	JPEG_BIN2	STR	PPIMAGE_J2
+END
+
+WARPQSTACK	METADATA
+	DIFF_PPSUB	STR	WARPQSTACK
+	DIFF_PSPHOT	STR	DIFF
+	JPEG_BIN1	STR	PPIMAGE_J1
+	JPEG_BIN2	STR	PPIMAGE_J2
+END
+
+NOCONVDIFF	METADATA
+	DIFF_PPSUB	STR	UNCONVOLVED
+	DIFF_PSPHOT	STR	DIFF
+	JPEG_BIN1	STR	PPIMAGE_J1
+	JPEG_BIN2	STR	PPIMAGE_J2
+END
+
+# reduction classes for different stacks
+# regular stacks
+NIGHTLY_STACK         METADATA
+      STACK_PPSTACK   STR      STACK_NIGHTLY
+      STACK_PPSUB     STR      STACK
+      STACK_PSPHOT    STR      STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STATICSKY_CALIBRATION   STR     STATICSKY_NIGHTCAL
+END
+
+NIGHTLY_STACK_1DG         METADATA
+      STACK_PPSTACK   STR      STACK_NIGHTLY_1DG
+      STACK_PPSUB     STR      STACK_1DG
+      STACK_PSPHOT    STR      STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STATICSKY_CALIBRATION   STR     STATICSKY_NIGHTCAL
+END
+
+# deep stacks
+DEEP_STACK            METADATA
+      STACK_PPSTACK   	      STR     STACK_DEEP
+      STACK_PPSUB     	      STR     STACK
+      STACK_PSPHOT    	      STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STATICSKY_CALIBRATION   STR     STATICSKY_DEEPCAL	
+END
+
+# three pi stacks
+THREEPI_STACK         METADATA
+      STACK_PPSTACK   STR      STACK_THREEPI
+      STACK_PPSUB     STR      STACK
+      STACK_PSPHOT    STR      STACK
+END
+
+THREEPI_STACK_1DG         METADATA
+      STACK_PPSTACK   STR      STACK_THREEPI
+      STACK_PPSUB     STR      STACK_1DG
+      STACK_PSPHOT    STR      STACK
+END
+
+CNP_STACK_1DG         METADATA
+      STACK_PPSTACK   STR      STACK_CNP
+      STACK_PPSUB     STR      STACK_1DG
+      STACK_PSPHOT    STR      STACK
+END
+
+THREEPI_STACK_ALT     METADATA
+      STACK_PPSTACK   STR      STACK_THREEPI_ALT
+      STACK_PPSUB     STR      STACK
+      STACK_PSPHOT    STR      STACK
+END
+
+
+## MD IQ stack -- PV2 version (bscale correction and other changes)
+MD_IQ_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_MD_IQ_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+      STACKPHOT_PPSTACK       STR     STACKPHOT 
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_DEEPCAL 
+END
+
+## MD refstack
+MD_REF_STACK            METADATA
+      STACK_PPSTACK           STR     STACK_MD_REF
+      STACK_PPSUB             STR     STACK
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_DEEPCAL 
+END
+
+MD_REF_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_MD_REF_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+      STACKPHOT_PPSTACK       STR     STACKPHOT 
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_DEEPCAL 
+END
+
+## MD deepstack
+MD_DEEP_STACK            METADATA
+      STACK_PPSTACK           STR     STACK_MD_DEEP
+      STACK_PPSUB             STR     STACK
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_DEEPCAL 
+END
+
+MD_DEEP_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_MD_DEEP_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+      STACKPHOT_PPSTACK       STR     STACKPHOT 
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_DEEPCAL 
+END
+
+MDTHREEPI_DEEP_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_MDTHREEPI_DEEP_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG
+      STACKPHOT_PPSTACK       STR     STACKPHOT
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_DEEPCAL
+END
+
+## MD stacks -- PV3 version (NO bscale correction and other changes)
+MD_PV3_NIGHT_STACK_1DG         METADATA
+      STACK_PPSTACK   STR      STACK_MD_PV3_NIGHT_1DG
+      STACK_PPSUB     STR      STACK_1DG
+      STACK_PSPHOT    STR      STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG
+      STACKPHOT_PPSTACK       STR     STACKPHOT
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_NIGHTCAL
+END
+
+MD_PV3_IQ_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_MD_PV3_IQ_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+      STACKPHOT_PPSTACK       STR     STACKPHOT 
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_PV3_DEEPCAL 
+END
+
+MD_PV3_REF_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_MD_PV3_REF_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+      STACKPHOT_PPSTACK       STR     STACKPHOT 
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_PV3_DEEPCAL 
+END
+
+MD_PV3_DEEP_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_MD_PV3_DEEP_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+      STACKPHOT_PPSTACK       STR     STACKPHOT 
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_PV3_DEEPCAL 
+END
+
+## CNP stacks -- PV3 version (NO bscale correction and other changes)
+CNP_PV3_IQ_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_CNP_PV3_IQ_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+      STACKPHOT_PPSTACK       STR     STACKPHOT 
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_PV3_DEEPCAL 
+END
+
+CNP_PV3_REF_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_CNP_PV3_REF_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+      STACKPHOT_PPSTACK       STR     STACKPHOT 
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_PV3_DEEPCAL 
+END
+
+CNP_PV3_DEEP_STACK_1DG            METADATA
+      STACK_PPSTACK           STR     STACK_CNP_PV3_DEEP_1DG
+      STACK_PPSUB             STR     STACK_1DG
+      STACK_PSPHOT            STR     STACK
+      STACKPHOT_PSPHOT        STR     STACKPHOT
+      STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+      STACKPHOT_PPSTACK       STR     STACKPHOT 
+      STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+      STATICSKY_CALIBRATION   STR     STATICSKY_MD_PV3_DEEPCAL 
+END
+
+
+
+
+
+# quick stacks
+QUICKSTACK            METADATA
+      STACK_PPSTACK   STR      QUICKSTACK
+      STACK_PPSUB     STR      STACK
+      STACK_PSPHOT    STR      STACK
+END
+
+# quick deep stacks (for unconvolved refstacks and full,deep stacks)
+DEEP_QUICKSTACK            METADATA
+       STACK_PPSTACK   STR      QUICKSTACK_DEEP
+       STACK_PPSUB     STR      STACK
+       STACK_PSPHOT    STR      STACK
+END
+
+# all/deep stacks
+ALLDEEP_STACK            METADATA
+        STACK_PPSTACK           STR     STACK_ALLDEEP
+        STACK_PPSUB             STR     STACK
+        STACK_PSPHOT            STR     STACK
+        STACKPHOT_PSPHOT        STR     STACKPHOT
+        STATICSKY_CALIBRATION   STR     STATICSKY_DEEPCAL
+END
+
+ALLDEEP_STACK_1DG            METADATA
+        STACK_PPSTACK           STR     STACK_ALLDEEP_1DG
+        STACK_PPSUB             STR     STACK_1DG
+        STACK_PSPHOT            STR     STACK
+        STACKPHOT_PSPHOT        STR     STACKPHOT
+        STATICSKY_CALIBRATION   STR     STATICSKY_DEEPCAL
+END
+
+
+
+TESTSTACK            METADATA
+      STACK_PPSTACK   STR      TESTSTACK
+      STACK_PPSUB     STR      STACK
+      STACK_PSPHOT    STR      STACK
+END
+
+# basic science analysis
+PHOTFEST.SINGLE1	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.SINGLE1
+	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       STR     STACKPHOT
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+
+END
+
+# basic science analysis
+PHOTFEST.SINGLE2	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.SINGLE2
+	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       STR     STACKPHOT
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+
+END
+
+# basic science analysis with extra noise to mimic shorter exposures (bigboss 20110215)
+ADDNOISE		METADATA
+	CHIP_PPIMAGE	STR	CHIP_ADDNOISE
+	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       STR     STACKPHOT
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+END
+
+# No background removal
+PRESERVE_BG	METADATA
+	CHIP_PPIMAGE	STR	CHIP_PRESERVE_BG
+	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
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+END
+
+# Background removal, but then add it back in
+RESTORE_BG	METADATA
+	CHIP_PPIMAGE	STR	CHIP_RESTORE_BG
+	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
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+END
+
+# basic science analysis
+PS1_REFERENCE	METADATA
+	CHIP_PPIMAGE	STR	CHIP
+	CHIP_PSPHOT	STR	CHIP
+	WARP_PSWARP	STR	WARP
+	STACK_PPSTACK	STR	PS1_REFERENCE
+	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	PS1_REFERENCE
+	STACKPHOT       STR     STACKPHOT
+END
+
+# stackphot (static sky) test reduction
+STACKPHOT_TEST	METADATA
+	STACKPHOT_PSPHOT  STR     STACKPHOT_TEST
+	STACKPHOT_PPSUB   STR     STACKPHOT
+	STACKPHOT_PPSTACK STR     STACKPHOT
+	STACKPHOT_SINGLE_PSPHOT  STR     STACKPHOT_SINGLE
+END
+
+# stackphot (static sky) test reduction
+STACKPHOT_EUCLID	METADATA
+	STACKPHOT_PSPHOT  STR     STACKPHOT_EUCLID
+	STACKPHOT_PPSUB   STR     STACKPHOT
+	STACKPHOT_PPSTACK STR     STACKPHOT
+	STACKPHOT_SINGLE_PSPHOT  STR     STACKPHOT_SINGLE
+        FULLFORCE_PSPHOT  STR   FULLFORCE_EUCLID
+END
+
+# basic science analysis
+MAGICTEST.V0		METADATA
+	CHIP_PPIMAGE	STR	CHIP_NOPATTERN
+	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
+END
+
+# microtest no pattern reduction class
+MICROTEST_NOPATTERN		METADATA
+	CHIP_PPIMAGE	STR	CHIP_NOPATTERN
+	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
+END
+
+# basic science analysis
+STDSCIENCE_V0	METADATA
+	CHIP_PPIMAGE	STR	CHIP_PATTERN
+	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
+END
+
+# basic science analysis : test of GPC1 with alternate ZP analysis
+STDSCIENCE_T0	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	ZPTEST
+END
+
+# photometry for pre-detrended images
+PROCESSED	METADATA
+	CHIP_PPIMAGE	STR	PPIMAGE_P
+	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
+        FPCAMERA        STR     DEFAULT_RECIPE
+END
+
+# photometry for pre-detrended images
+MC_UBAND	METADATA
+	CHIP_PPIMAGE	STR	PPIMAGE_P
+	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	PSASTRO_COARSE
+END
+
+# photometry to make flat-field correction (apply flat_raw)
+FLATCORR	METADATA
+	CHIP_PPIMAGE	STR	PPIMAGE_FLATCORR
+	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	FLATCORR
+	PSASTRO		STR	DEFAULT_RECIPE
+END
+
+# photometry to make flat-field correction (apply flat_raw)
+FLATTEST	METADATA
+	CHIP_PPIMAGE	STR	PPIMAGE_FLATTEST
+	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	FLATCORR
+	PSASTRO		STR	DEFAULT_RECIPE
+END
+
+# Detrend Processing only for raw data
+DETREND_ONLY		METADATA
+	CHIP_PPIMAGE	STR	PPIMAGE_DET_ONLY
+	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
+	PSASTRO		STR	DEFAULT_RECIPE
+END
+
+# Detrend Processing only for raw data
+DARK_ONLY		METADATA
+	CHIP_PPIMAGE	STR	PPIMAGE_OD
+	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
+	PSASTRO		STR	DEFAULT_RECIPE
+END
+
+NO_PHOTOM	METADATA
+	CHIP_PPIMAGE	STR	PPIMAGE_OBDSF
+	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
+	PSASTRO		STR	DEFAULT_RECIPE
+END
+
+# Detrend Processing only for raw data
+MASKPHOT		METADATA
+	CHIP_PPIMAGE	STR	PPIMAGE_MASKPHOT
+	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
+END
+
+
+# Intended for areas with high stellar density
+DENSE_STARS	METADATA
+	CHIP_PPIMAGE	STR	CHIP_DENSE_STARS
+	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
+END
+
+# Intended for fast processing to make PR images
+PR		METADATA
+	CHIP_PPIMAGE  	STR	PR
+	CHIP_PSPHOT	STR	PR
+	WARP_PSWARP	STR	PR
+	STACK_PPSTACK	STR	PR
+	STACK_PPSUB	STR	PR
+	STACK_PSPHOT	STR	PR
+	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	PR_RECIPE
+END
+
+# Intended for fast processing to make PR images
+PR_DARKTEST	METADATA
+	CHIP_PPIMAGE  	STR	PR_DARKTEST_NOSUB
+	CHIP_PSPHOT	STR	PR
+	WARP_PSWARP	STR	PR
+	STACK_PPSTACK	STR	PR
+	STACK_PPSUB	STR	PR
+	STACK_PSPHOT	STR	PR
+	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	PR_RECIPE
+END
+
+PR_NOPATTERN	METADATA
+	CHIP_PPIMAGE  	STR	PR_NOPATTERN
+	CHIP_PSPHOT	STR	PR
+	WARP_PSWARP	STR	PR
+	STACK_PPSTACK	STR	PR
+	STACK_PPSUB	STR	PR
+	STACK_PSPHOT	STR	PR
+	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	PR_RECIPE
+END
+
+# Testing pattern subtraction
+TEST_PATTERN	METADATA
+ 	CHIP_PPIMAGE	STR	CHIP_PATTERN
+	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
+END
+
+
+# basic science analysis
+MOPS.TEST	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	MOPS.TEST
+	STACKPHOT       STR     STACKPHOT
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+
+END
+
+SAS_REFERENCE 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 SAS_REFERENCE
+   STACKPHOT_PSPHOT	 STR STACKPHOT
+   STATICSKY_CALIBRATION STR STATICSKY_CAL
+END
+
+STS_DATASET METADATA
+   CHIP_PPIMAGE STR CHIP_AUXMASK
+   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 STS_DATASET
+   STACKPHOT   STR STACKPHOT
+END
+
+STS_DATASET_NOCOMPRESS METADATA
+	# XXX: don't use this recipe
+   CHIP_PPIMAGE STR CHIP_NOCOMPRESS
+   CHIP_PSPHOT STR CHIP
+   WARP_PSWARP STR WARP_NOCOMPRESS
+   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 STS_DATASET
+   STACKPHOT       STR     STACKPHOT
+END
+
+M31_HSC_DEEP METADATA
+	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PSPHOT	  STR	  M31_DEEP
+	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	  M31_DEEP
+	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
+
+M31_MEGACAM_DEEP METADATA
+	CHIP_PPIMAGE	  STR	  PPIMAGE_P
+	CHIP_PSPHOT	  STR	  M31_DEEP
+	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	  M31_DEEP
+	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
+
+M31_BG_SUBTRACT		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP_AUXMASK
+	CHIP_PSPHOT	  STR	  CHIP
+	WARP_PSWARP	  STR	  WARP_NOCOMPRESS
+	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
+
+M31_BG_PRESERVE		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP_PRESERVE_BG_AUXMASK
+	CHIP_PSPHOT	  STR	  CHIP
+	WARP_PSWARP	  STR	  WARP_NOCOMPRESS
+	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
+
+BG_PRESERVE_SHALLOW     METADATA
+        CHIP_PPIMAGE      STR     CHIP_PRESERVE_BG
+        CHIP_PSPHOT       STR     CHIP_SHALLOW
+        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
+
+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
+
+CNP_PV3     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_ASTRO_PV3
+        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
+
+MD_PV3     METADATA
+        CHIP_PPIMAGE      STR     CHIP
+        CHIP_PSPHOT       STR     CHIP
+        WARP_PSWARP       STR     WARP
+        STACK_PPSTACK     STR     STACK_1DG
+        STACK_PPSUB       STR     STACK
+        STACK_PSPHOT      STR     STACK_1DG
+        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     MD_ASTRO_PV3
+        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_MD_PV3_DEEPCAL
+END
+
+
+# random user tests (may not be stable or consistent)
+TEST1 METADATA
+#  CHIP_PPIMAGE    STR PPIMAGE_PREMASK_PROCESS
+   CHIP_PPIMAGE    STR APTEST_V1
+   CHIP_PSPHOT     STR APTEST_V1
+   PSASTRO                  STR     DEFAULT_RECIPE
+   FAKEPHOT                 STR     FAKEPHOT
+   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
+   ADDSTAR                  STR     ADDSTAR
+   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
+   FULLFORCE_PSPHOT         STR     FULLFORCE_WARP
+#   STACK_PPSTACK   STR TEST1
+#   STACK_PPSUB     STR STACK
+#   STACK_PSPHOT    STR STACK
+END
+    
+TEST2 METADATA
+   CHIP_PPIMAGE    STR PPIMAGE_DET_ONLY
+   CHIP_PSPHOT     STR CHIP
+   STACK_PPSTACK   STR TEST2
+   STACK_PPSUB     STR STACK
+   STACK_PSPHOT    STR STACK
+END
+    
+TEST3 METADATA
+   STACK_PPSTACK   STR TEST3
+   STACK_PPSUB     STR STACK
+   STACK_PSPHOT    STR STACK
+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
+
+# same as default except for staticsky
+STATICSKY_DENSE		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	  DEFAULT_RECIPE
+	STACKPHOT_PSPHOT  STR     STACKPHOT_DENSE
+	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
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+END
+
+SWEETSPOT_TEST               METADATA
+        CHIP_PPIMAGE      STR     CHIP
+        CHIP_PSPHOT       STR     CHIP
+        WARP_PSWARP       STR     WARP
+#       WARP_PSWARP       STR     WARP_GAUSS
+        STACK_PPSTACK     STR     QUICKSTACK
+        STACK_PPSUB       STR     STACK
+        STACK_PSPHOT      STR     STACK
+        DIFF_PPSUB        STR     DIFF
+        DIFF_PSPHOT       STR     SSTF_DIFF
+        JPEG_BIN1         STR     PPIMAGE_J1
+        JPEG_BIN2         STR     PPIMAGE_J2
+        FAKEPHOT          STR     FAKEPHOT
+        ADDSTAR           STR     ADDSTAR
+#       PSASTRO           STR     SWEETSPOT_TEST
+        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
+END
+
+# MD test mods to pswarp science analysis
+MD_WARP_TEST		METADATA
+	CHIP_PPIMAGE	  STR	  CHIP
+	CHIP_PSPHOT	  STR	  CHIP
+	WARP_PSWARP	  STR	  WARP_GAUSS
+
+        STACK_PPSTACK           STR     STACK_MD_IQ_1DG
+        STACK_PPSUB             STR     STACK_1DG
+        STACK_PSPHOT            STR     STACK
+        STACKPHOT_PSPHOT        STR     STACKPHOT
+        STACKPHOT_PPSUB         STR     STACKPHOT_1DG 
+        STACKPHOT_PPSTACK       STR     STACKPHOT 
+        STACKPHOT_SINGLE_PSPHOT STR     STACKPHOT_SINGLE
+        STATICSKY_CALIBRATION   STR     STATICSKY_MD_DEEPCAL 
+
+	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	  MD_ASTRO
+
+	BACKGROUND_PPBACKGROUND	STR	BACKGROUND
+	BACKGROUND_PSWARP	STR	BACKGROUND
+        PSVIDEOPHOT             STR     PSVIDEOPHOT
+
+        FULLFORCE_PSPHOT  STR   FULLFORCE_WARP
+END
+
+# for localhost test without bias, dark, flat, mask - ccl 2019.11.06
+LOCALHOSTTEST             METADATA
+        CHIP_PPIMAGE      STR     LOCALHOSTTEST
+        CHIP_PSPHOT       STR     CHIP
+        JPEG_BIN1         STR     PPIMAGE_J1
+        JPEG_BIN2         STR     PPIMAGE_J2
+        PSASTRO           STR     DEFAULT_RECIPE
+        # this is for running addstar
+        ADDSTAR           STR     ADDSTAR
+END
+
+# for localhost test without bias, dark, flat, mask - ccl 2019.11.06
+SWEETSPOT_DENSE                     METADATA
+	CHIP_PPIMAGE	            STR	    CHIP
+	CHIP_PSPHOT	            STR	    SWEETSPOT_DENSE
+        WARP_PSWARP                 STR     WARP
+        STACK_PPSTACK               STR     QUICKSTACK
+        STACK_PPSUB                 STR     STACK
+        STACK_PSPHOT                STR     STACK
+        DIFF_PPSUB                  STR     DIFF
+        DIFF_PSPHOT                 STR     SSTF_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
+END
+
+# UNIONS DR3 reduction class
+UNIONS_DR3  METADATA
+    CHIP_PPIMAGE                STR     CHIP
+    CHIP_PSPHOT                 STR     CHIP
+    WARP_PSWARP                 STR     WARP
+    STACK_PPSTACK               STR     STACK_UNIONS_DR3
+    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     UNIONS_DR3
+    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
+END
Index: /branches/eam_branches/ippconfig.20240412/recipes/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/rejections.config	(revision 42661)
@@ -0,0 +1,526 @@
+# these names (BIAS, DARK, etc) must be upper case
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  0.5
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SNR         F32  0.0
+  IMFILE.BIN.STDEV   F32  0.5
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  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  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+DARK METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  0.5
+  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  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  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  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+DARK_PREMASK 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
+
+DARKTEST 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
+
+SHUTTER 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 20.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
+
+FLAT 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  3.0
+END
+
+FLATTEST 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  3.0
+END
+
+FLAT_RAW 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  3.0
+END
+
+FLAT_PREMASK 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  3.0
+END
+
+DOMEFLAT 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  3.0
+END
+
+DOMEFLAT_RAW 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  3.0
+END
+
+DOMEFLAT_PREMASK 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  3.0
+END
+
+SKYFLAT 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  3.0
+END
+
+SKYFLAT_RAW 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  3.0
+END
+
+SKYFLATTEST_RAW 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  3.0                                                       
+END 
+
+
+
+SKYFLAT_PREMASK 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  3.0
+END
+
+FRINGE 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
+
+DARKMASK 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
+
+FLATMASK 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
+
+CTEMASK 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
+
+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
+# IMFILE.MEAN is the maximum permitted mean value for an imfile, relative to the standard deviation
+# IMFILE.STDEV is the maximum permitted standard deviation for an imfile
+# EXP.MEAN is the maximum permitted mean value for an exposure, relative to the standard deviation
+# EXP.STDEV is the maximum permitted standard deviation for an exposure
+# EXP.MEANSTDEV is the maximum permitted mean standard deviation for an exposure relative to the mean
+# ENSEMBLE.MEAN is the maximum permitted mean for an ensemble of exposures
+# ENSEMBLE.STDEV is the maximum permitted standard deviation for an ensemble of exposures
+# ENSEMBLE.MEANSTDEV is the maximum permitted mean standard deviation for an ensemble of exposures
+# IMFILE.SNR is the minimum permitted signal-to-noise for an imfile
+# EXP.SNR is the minimum permitted signal-to-noise for an exposure
+# These values (all except FILTER) may be zero, in which case no clipping is applied.
+
+
+ITERATION	BOOL	TRUE		# Are iterations permitted?
+MASTER		BOOL	FALSE		# Force stacks to be accepted as a master?
+
Index: /branches/eam_branches/ippconfig.20240412/recipes/remote_hosts.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/recipes/remote_hosts.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/recipes/remote_hosts.config	(revision 42661)
@@ -0,0 +1,50 @@
+ACTIVE     STR    LANL
+
+LANL METADATA
+     DMZ_HOST	STR	wtrw
+
+     SEC_HOST MULTI
+     SEC_HOST METADATA
+       SEC_HOST1	STR	mu-fe1
+       SEC_HOST2 	STR	mu-fe2
+       SEC_HOST3	STR	mu-fe3
+       SEC_HOST4	STR	mu-fe4
+     END
+
+     IPP_PATH        STR     /turquoise/usr/projects/cosmo/mswarren/ipp/
+     REMOTE_ROOT     STR     /scratch3/watersc1/
+     REMOTE_HOSTNAME STR     LANL/Mustang	
+
+# This is used to decide if we bring back warp images, and if stack should ask for local copies.
+     TRANSFER_WARP_IMAGES BOOL FALSE
+
+     SCHEDULER       STR     MOAB
+
+     PROC_PER_NODE   S32     24
+     MIN_NODES	     S32     1
+     MAX_NODES	     S32     1000
+     MIN_TIME	     S32     1
+     MAX_TIME	     S32     8
+END
+
+UHCRAY METADATA
+     DMZ_HOST	STR	128.171.123.18
+
+     SEC_HOST MULTI
+     SEC_HOST METADATA
+     END
+
+     IPP_PATH	     STR     /home/watersc/src/
+     REMOTE_ROOT     STR     /lus/scratch/watersc/
+     REMOTE_HOSTNAME STR     UH/Cray
+
+     TRANSFER_WARP_IMAGES BOOL FALSE
+
+     SCHEDULER       STR     SLURM
+
+     PROC_PER_NODE   S32     20
+     MIN_NODES	     S32     1
+     MAX_NODES	     S32     10
+     MIN_TIME	     S32     1
+     MAX_TIME	     S32     8
+END     
Index: /branches/eam_branches/ippconfig.20240412/sdss/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/Makefile.am	(revision 42661)
@@ -0,0 +1,25 @@
+
+installdir = $(datadir)/ippconfig/sdss
+
+install_files = \
+	dvo.config \
+	dvo.layout \
+	camera.config \
+	format.config \
+	cmp.config \
+	cmf.config \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	pswarp.config \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/sdss/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/camera.config	(revision 42661)
@@ -0,0 +1,204 @@
+# Camera configuration file for co-adding reduced SDSS images of stripe82
+# Copied from ISP config files
+# Sebastian Jester jester at mpia.de August 7, 2007
+
+# File formats that we know about
+FORMATS         METADATA
+        SDSS     STR     sdss/format.config
+END
+ 
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip            STR     Cell
+END
+
+# valid filter names and corresponding IDs
+FILTER.ID       METADATA
+        g       STR     g
+        r       STR     r
+        i       STR     i
+        z       STR     z
+	u       STR     u
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID		METADATA
+	FPA	STR	fpa
+END
+
+DVO.CAMERADIR	STR	sdss		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        PSPHOT          STR     sdss/psphot.config               # psphot details
+        PSASTRO         STR     sdss/psastro.config              # psastro details
+        PPIMAGE         STR     sdss/ppImage.config              # Recipes for ppImage
+        PPMERGE         STR     sdss/ppMerge.config              # Recipes for ppMerge
+	PSWARP		STR	sdss/pswarp.config		# Recipes for pswarp
+	REJECTIONS	STR     sdss/rejections.config
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+## XXX replace with appropriate common filerules?
+FILERULES METADATA
+   PSASTRO.INPUT       STR PSASTRO.INPUT.CMF
+   PSASTRO.OUTPUT      STR PSASTRO.OUTPUT.CMF
+   PSPHOT.OUTPUT       STR PSPHOT.OUTPUT.CMF
+
+   ### input file definitions
+   ### use @DETDB entries to get the detrend images from the database
+   ### replace @DETDB with @FILES if you want to require it from the 
+   ### command line, or with an explicit name to require a specific file
+   TYPE               INPUT FILENAME.RULE DATA.LEVEL FILE.TYPE 
+
+   ## files used by ppImage
+   PPIMAGE.INPUT      INPUT @FILES        FPA        IMAGE     
+   PPIMAGE.MASK       INPUT @FILES        FPA        IMAGE     
+   PPIMAGE.BIAS       INPUT @DETDB        FPA        IMAGE     
+   PPIMAGE.DARK       INPUT @DETDB        FPA        DARK
+   PPIMAGE.FLAT       INPUT @DETDB        FPA        IMAGE     
+   PPIMAGE.FRINGE     INPUT @DETDB        FPA        FRINGE
+   PPIMAGE.SHUTTER    INPUT @DETDB        FPA        IMAGE     
+
+   ## files used to build and apply the flat-field correction images
+   DVOCORR.INPUT      INPUT @FILES        FPA        IMAGE
+   DVOCORR.REFHEAD    INPUT @FILES        FPA        HEADER
+   DVOFLAT.INPUT      INPUT @FILES        FPA        IMAGE
+   DVOFLAT.CORR       INPUT @DETDB        FPA        IMAGE
+
+   ## files used by psphot 
+   PSPHOT.LOAD        INPUT @FILES        FPA        IMAGE
+   PSPHOT.INPUT       INPUT @FILES        FPA        IMAGE     
+   PSPHOT.MASK        INPUT @FILES        FPA        MASK     
+   PSPHOT.WEIGHT      INPUT @FILES        FPA        WEIGHT     
+   PSPHOT.PSF.LOAD    INPUT @FILES        FPA        PSF       
+
+   ## files used by psastro 
+   PSASTRO.INPUT.CMP  INPUT @FILES        FPA        CMP       
+   PSASTRO.INPUT.CMF  INPUT @FILES        FPA        CMF       
+
+   ## files used by pswarp
+   PSWARP.INPUT       INPUT @FILES        FPA        IMAGE
+   PSWARP.WEIGHT      INPUT @FILES        FPA        WEIGHT
+   PSWARP.MASK        INPUT @FILES        FPA        MASK
+   PSWARP.SKYCELL     INPUT @FILES        FPA        IMAGE
+   PSWARP.ASTROM      INPUT @FILES        FPA        CMF
+
+   PPSUB.INPUT        INPUT @FILES        FPA	     IMAGE
+   PPSUB.INPUT.MASK   INPUT @FILES        FPA	     MASK
+   PPSUB.INPUT.WEIGHT INPUT @FILES        FPA	     WEIGHT
+   PPSUB.REF          INPUT @FILES        FPA	     IMAGE
+   PPSUB.REF.MASK     INPUT @FILES        FPA	     MASK
+   PPSUB.REF.WEIGHT   INPUT @FILES        FPA	     WEIGHT
+
+   PPSTACK.INPUT      INPUT @FILES        FPA	     IMAGE
+   PPSTACK.INPUT.MASK INPUT @FILES        FPA	     MASK
+   PPSTACK.INPUT.WEIGHT INPUT @FILES      FPA	     WEIGHT
+
+   PPARITH.INPUT.IMAGE INPUT @FILES        CHIP       IMAGE
+   PPARITH.INPUT.MASK  INPUT @FILES        CHIP       MASK
+
+   ### output file definitions
+   TYPE                  OUTPUT  FILENAME.RULE        FILE.TYPE FITS.TYPE DATA.LEVEL FILE.SAVE FILE.FORMAT
+   PPIMAGE.OUTPUT      	 OUTPUT  {OUTPUT}.sdss.fits   IMAGE     NONE      FPA        TRUE      NONE
+   PPIMAGE.OUTPUT.MASK 	 OUTPUT  {OUTPUT}.mask.fits   MASK      NONE      FPA        TRUE      NONE
+   PPIMAGE.OUTPUT.WEIGHT OUTPUT  {OUTPUT}.wt.fits     WEIGHT    NONE      FPA        TRUE      NONE
+   PPIMAGE.CHIP 	 OUTPUT  {OUTPUT}.chip.fits   IMAGE     NONE      FPA        TRUE      NONE
+   PPIMAGE.CHIP.MASK 	 OUTPUT  {OUTPUT}.chip.mask.fits MASK   NONE      FPA        TRUE      NONE
+   PPIMAGE.CHIP.WEIGHT 	 OUTPUT  {OUTPUT}.chip.wt.fits WEIGHT   NONE      FPA        TRUE      NONE
+   PPIMAGE.OUTPUT.FPA1 	 OUTPUT  {OUTPUT}.b1.fits     IMAGE     NONE      FPA        TRUE      NONE
+   PPIMAGE.OUTPUT.FPA2 	 OUTPUT  {OUTPUT}.b2.fits     IMAGE     NONE      FPA        TRUE      NONE
+   PPIMAGE.STATS 	 OUTPUT  {OUTPUT}.stats       STATS     NONE      FPA        TRUE      NONE
+
+   PPIMAGE.BIN1        	 OUTPUT  {OUTPUT}.b1c.fits    IMAGE     NONE      FPA        TRUE      NONE
+   PPIMAGE.BIN2        	 OUTPUT  {OUTPUT}.b2c.fits    IMAGE     NONE      FPA        TRUE      NONE
+
+   PPIMAGE.JPEG1       	 OUTPUT  {OUTPUT}.b1.jpg      JPEG      NONE      FPA        TRUE      NONE
+   PPIMAGE.JPEG2       	 OUTPUT  {OUTPUT}.b2.jpg      JPEG      NONE      FPA        TRUE      NONE
+
+   PPMERGE.OUTPUT        OUTPUT   {OUTPUT}.fits       IMAGE     NONE      FPA        TRUE      NONE
+
+   DVOCORR.OUTPUT    	 OUTPUT  {OUTPUT}.fc.fits     IMAGE     NONE      FPA        TRUE      NONE
+   DVOFLAT.OUTPUT    	 OUTPUT  {OUTPUT}.co.fits     IMAGE     NONE      FPA        TRUE      NONE
+
+   PSPHOT.RESID        	 OUTPUT  {OUTPUT}.res.fits    IMAGE     NONE      FPA        TRUE      NONE
+   PSPHOT.BACKGND      	 OUTPUT  {OUTPUT}.bck.fits    IMAGE     NONE      FPA        TRUE      NONE
+   PSPHOT.BACKSUB      	 OUTPUT  {OUTPUT}.sub.fits    IMAGE     NONE      FPA        TRUE      NONE
+   PSPHOT.BACKMDL      	 OUTPUT  {OUTPUT}.mdl.fits    IMAGE     NONE      FPA        TRUE      NONE
+
+   PSPHOT.OUTPUT.RAW   	 OUTPUT  {OUTPUT}             RAW       NONE      FPA        TRUE      NONE
+   PSPHOT.OUTPUT.SX    	 OUTPUT  {OUTPUT}.sx          SX        NONE      FPA        TRUE      NONE
+   PSPHOT.OUTPUT.OBJ   	 OUTPUT  {OUTPUT}.obj         OBJ       NONE      FPA        TRUE      NONE
+   PSPHOT.OUTPUT.CMP   	 OUTPUT  {OUTPUT}.cmp         CMP       NONE      FPA        TRUE      NONE
+   PSPHOT.OUTPUT.CMF   	 OUTPUT  {OUTPUT}.cmf         CMF       NONE      FPA        TRUE      NONE
+
+   PSPHOT.PSF.SAVE     	 OUTPUT  {OUTPUT}.psf         PSF       NONE      FPA        TRUE      NONE
+
+   SOURCE.PLOT.MOMENTS   OUTPUT  {OUTPUT}.mnt.png     KAPA      NONE      FPA        TRUE      NONE
+   SOURCE.PLOT.PSFMODEL  OUTPUT  {OUTPUT}.psf.png     KAPA      NONE      FPA        TRUE      NONE
+   SOURCE.PLOT.APRESID   OUTPUT  {OUTPUT}.dap.png     KAPA      NONE      FPA        TRUE      NONE
+
+   PSASTRO.OUTPUT.CMP    OUTPUT  {OUTPUT}.smp         CMP       NONE      FPA        TRUE      NONE
+   PSASTRO.OUTPUT.CMF    OUTPUT  {OUTPUT}.smf         CMF       NONE      FPA        TRUE      NONE
+
+   PSWARP.OUTPUT         OUTPUT {OUTPUT}.fits         IMAGE     NONE      FPA        TRUE      NONE
+   PSWARP.OUTPUT.MASK    OUTPUT {OUTPUT}.mask.fits    MASK      NONE      FPA        TRUE      NONE
+   PSWARP.OUTPUT.WEIGHT  OUTPUT {OUTPUT}.wt.fits      WEIGHT    NONE      FPA        TRUE      NONE
+   PSWARP.BIN1           OUTPUT {OUTPUT}.b1.fits      IMAGE     NONE      FPA        TRUE      NONE
+   PSWARP.BIN2           OUTPUT {OUTPUT}.b2.fits      IMAGE     NONE      FPA        TRUE      NONE
+
+   SKYCELL.STATS         OUTPUT {OUTPUT}.stats        STATS     NONE      FPA        TRUE      NONE
+   SKYCELL.TEMPLATE      OUTPUT {OUTPUT}.skycell      SKYCELL   NONE      FPA        TRUE      NONE
+
+   PPSUB.OUTPUT          OUTPUT {OUTPUT}.fits         IMAGE     NONE      FPA        TRUE      NONE
+   PPSUB.OUTPUT.MASK     OUTPUT {OUTPUT}.mask.fits    MASK      NONE      FPA        TRUE      NONE
+   PPSUB.OUTPUT.WEIGHT   OUTPUT {OUTPUT}.wt.fits      WEIGHT    NONE      FPA        TRUE      NONE
+
+   PPSTACK.OUTPUT        OUTPUT {OUTPUT}.fits         IMAGE     NONE      FPA        TRUE      NONE
+   PPSTACK.OUTPUT.MASK   OUTPUT {OUTPUT}.mask.fits    MASK      NONE      FPA        TRUE      NONE
+   PPSTACK.OUTPUT.WEIGHT OUTPUT {OUTPUT}.weight.fits  WEIGHT    NONE      FPA        TRUE      NONE
+
+   PPSIM.OUTPUT          OUTPUT {OUTPUT}.fits         IMAGE     NONE      FPA        TRUE      NONE
+
+   PPARITH.OUTPUT.IMAGE  OUTPUT {OUTPUT}.fits         IMAGE     NONE      CHIP       TRUE      NONE
+   PPARITH.OUTPUT.MASK   OUTPUT {OUTPUT}.fits         MASK      NONE      CHIP       TRUE      NONE
+
+   LOG.IMFILE            OUTPUT {OUTPUT}.{CHIP.NAME}.log TEXT   NONE      CHIP       TRUE      NONE
+   LOG.EXP               OUTPUT {OUTPUT}.log          TEXT      NONE      FPA        TRUE      NONE
+END
+
+EXTNAME.RULES METADATA
+  CMF.HEAD STR cmf.hdr
+  CMF.DATA STR cmf.psf # use .PSF and .EXT?
+  CMF.XSRC STR xsrc # use .PSF and .EXT?
+  CMF.XFIT STR xfit # use .PSF and .EXT?
+  CMF.DETEFF STR deteff
+
+  PSF.HEAD  STR	hdr
+  PSF.TABLE STR psf_model
+  PSF.RESID STR psf_resid
+END
+
+BLANK.HEADERS	METADATA
+	FPA.TIME	STR	TAI
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.AIRMASS	STR	AIRMASS
+END
+
+PHOTCODE.RULE           STR     {CAMERA}.{FILTER.ID}.{CHIP.N}	# Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/sdss/cmf.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/cmf.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/cmf.config	(revision 42661)
@@ -0,0 +1,84 @@
+# Pan-STARRS Imaging Sky Probe
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+	NAXIS		S32	0
+	TELESCOP	STR	ISP-1 
+	INSTRUME	STR	ISP-Apogee
+	DETECTOR	STR	ISP-Apogee-01
+	ISPCAMER	STR	Apogee U42
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	SEQID	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTER	STR	FILTNAME
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.TIME	STR	MJD-OBS
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.READNOISE	STR	RDNOISE
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdss/cmp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/cmp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/cmp.config	(revision 42661)
@@ -0,0 +1,84 @@
+# Pan-STARRS Imaging Sky Probe
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	FALSE
+	NAXIS		S32	0
+	TELESCOP	STR	ISP-1 
+	INSTRUME	STR	ISP-Apogee
+	DETECTOR	STR	ISP-Apogee-01
+	ISPCAMER	STR	Apogee U42
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	SEQID	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTER	STR	FILTNAME
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.TIME	STR	MJD-OBS
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.READNOISE	STR	RDNOISE
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdss/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/dvo.config	(revision 42661)
@@ -0,0 +1,47 @@
+
+# location of DVO database tables
+MOSAICNAME              SDSS
+
+# keywords used by DVO to interpret the headers
+
+# used by parse_time to find time-related keywords
+MJD-KEYWORD		NONE
+DATE-KEYWORD		DATE-OBS
+DATE-MODE		YYYY-MM-DD
+UT-KEYWORD		TAIHMS
+JD-KEYWORD		NONE
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		-7.0
+CAL_INSTMAG_MIN		-9.5
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# allowed astrometry error (arcseconds)
+ADDSTAR_MAX_CERROR	5.0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		5.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
Index: /branches/eam_branches/ippconfig.20240412/sdss/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/dvo.layout	(revision 42661)
@@ -0,0 +1,58 @@
+# this file defines the layout of the mosaic imager:
+
+# NCCD 40  # this needs work: sometimes 36, sometimes 40
+NCCD 36
+NAXIS1 2112
+NAXIS2 4644
+
+MOSAIC_X 11
+MOSAIC_Y  4
+
+# lines need to contain:
+
+CHIPID_KEYWORD EXTNAME
+
+# ID     CHIPID xoffset yoffset xflip yflip datasec         biassec            Xo      Yo      theta
+CCD.0     ccd00       1       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.1     ccd01       2       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.2     ccd02       3       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.3     ccd03       4       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.4     ccd04       5       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.5     ccd05       6       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.6     ccd06       7       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.7     ccd07       8       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.8     ccd08       9       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.9     ccd09       1       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.10    ccd10       2       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.11    ccd11       3       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.12    ccd12       4       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.13    ccd13       5       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.14    ccd14       6       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.15    ccd15       7       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.16    ccd16       8       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.17    ccd17       9       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.18    ccd18       1       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.19    ccd19       2       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.20    ccd20       3       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.21    ccd21       4       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.22    ccd22       5       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.23    ccd23       6       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.24    ccd24       7       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.25    ccd25       8       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.26    ccd26       9       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.27    ccd27       1       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.28    ccd28       2       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.29    ccd29       3       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.30    ccd30       4       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.31    ccd31       5       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.32    ccd32       6       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.33    ccd33       7       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.34    ccd34       8       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.35    ccd35       9       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.36    ccd36       0       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.37    ccd37      10       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.38    ccd38       0       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.39    ccd39      10       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/sdss/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/format.config	(revision 42661)
@@ -0,0 +1,112 @@
+# SDSS camera, starting from Pan-STARRS Imaging Sky Probe
+# Sebastian Jester jester at mpia.de August 7, 2007
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+#	NAXIS		S32	2
+	ORIGIN		STR	SDSS
+	TELESCOP	STR	2.5m
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS	STR	FRAME	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+#		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+#		CELL.BIASSEC.SOURCE	STR	HEADER
+#		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+#		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	ORIGIN
+# Need the following?
+	FPA.DETECTOR	STR	CCDLOC
+#	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBSTYPE	STR	FLAVOR
+	FPA.OBJECT	STR	OBJECT
+	FPA.FILTERID	STR	FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	IPA
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+#	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME    	STR     DATE-OBS TAIHMS # Two values are interpreted as date and time
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+#	FPA.TEMP	STR	CCDTEMP
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	EXPTIME
+	CELL.TIME	STR	DATE-OBS TAIHMS
+#	CELL.GAIN	STR	GAIN
+#	CELL.READNOISE	STR	RDNOISE
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+#	CELL.TIMESYS	STR	TIMESYS
+	CELL.XBIN	STR	COLBIN
+	CELL.YBIN	STR	ROWBIN
+# these were used for some early data
+#	CELL.XBIN	STR	XBIN
+#	CELL.YBIN	STR	YBIN
+#	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+# The gain is only roughly correct...
+	CELL.GAIN	F32	5.0
+# readnoise is from http://www.sdss.org/dr6/instruments/imager/index.html
+# Note that I have emails from Jim Gunn saying dark noise *is* important...
+	CELL.READNOISE	F32	5.0
+	FPA.AIRMASS	F32	1.3
+	CHIP.XSIZE	S32	2048
+	CHIP.YSIZE	S32	1361
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+#	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	60000
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+#	CELL.XBIN	S32	1
+#	CELL.YBIN	S32	1
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME    	STR     SEPARATE YEAR.FIRST
+#	FPA.TIME	STR	MJD
+	CELL.TIME    	STR     SEPARATE YEAR.FIRST
+#	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdss/format_skycell.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/format_skycell.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/format_skycell.config	(revision 42661)
@@ -0,0 +1,110 @@
+# SDSS camera, starting from Pan-STARRS Imaging Sky Probe
+# Sebastian Jester jester at mpia.de August 7, 2007
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+#	NAXIS		S32	2
+	ORIGIN		STR	SDSS
+	TELESCOP	STR	2.5m
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	FRAME	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+#		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+#		CELL.BIASSEC.SOURCE	STR	HEADER
+#		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+#		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	ORIGIN
+# Need the following?
+	FPA.DETECTOR	STR	CCDLOC
+#	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBSTYPE	STR	FLAVOR
+	FPA.OBJECT	STR	OBJECT
+	FPA.FILTERID	STR	FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	IPA
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+#	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	TAI
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+#	FPA.TEMP	STR	CCDTEMP
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	EXPTIME
+	CELL.TIME	STR	TAI
+#	CELL.GAIN	STR	GAIN
+#	CELL.READNOISE	STR	RDNOISE
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+#	CELL.TIMESYS	STR	TIMESYS
+	CELL.XBIN	STR	COLBIN
+	CELL.YBIN	STR	ROWBIN
+# these were used for some early data
+#	CELL.XBIN	STR	XBIN
+#	CELL.YBIN	STR	YBIN
+#	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+# The gain is only roughly correct...
+	CELL.GAIN	F32	5.0
+# readnoise is from http://www.sdss.org/dr6/instruments/imager/index.html
+# Note that I have emails from Jim Gunn saying dark noise *is* important...
+	CELL.READNOISE	F32	5.0
+	FPA.AIRMASS	F32	1.3
+	CHIP.XSIZE	S32	2048
+	CHIP.YSIZE	S32	1361
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+#	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	60000
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+#	CELL.XBIN	S32	1
+#	CELL.YBIN	S32	1
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdss/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/ppImage.config	(revision 42661)
@@ -0,0 +1,167 @@
+### ppImage recipe configuration file
+
+# Inherit everything from the top-level recipe file, except for what's below.
+
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR z
+FRINGE.FILTERS	STR y
+
+# apply the following constraints when selecting a detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+  END
+  SHUTTER METADATA
+  END	
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   VERSION STR RAW
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTERID
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR TWILIGHT:FPA.TIME
+  END
+END
+
+## these science-image analysis recipes are placed here set MASK = FALSE
+
+# Standard chip processing
+CHIP   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_DET_ONLY  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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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    FALSE           # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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?
+END
+
+# SDSS Softbias and photometry
+PPIMAGE_OP   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 base detrended image?
+  CHIP.VARIANCE.FITS BOOL   TRUE            # Save base detrended image?
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  OVERSCAN.CONSTANT BOOL  TRUE
+  OVERSCAN.VALUE  F32     1000.0
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL	  TRUE 		  # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL	  TRUE 		  # Save 2nd binned jpeg?
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE            # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
+
+# Overscan, bias, photometry, astrometry
+PPIMAGE_OA   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   FALSE           # Save base detrended image?
+  CHIP.VARIANCE.FITS BOOL   FALSE           # Save base detrended image?
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL	  TRUE 		# Save 1st binned jpeg?
+  BIN2.JPEG       BOOL	  TRUE 		# Save 2nd binned jpeg?
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
Index: /branches/eam_branches/ippconfig.20240412/sdss/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/ppMerge.config	(revision 42661)
@@ -0,0 +1,3 @@
+### ppImage recipe configuration file
+
+# Inherit everything from the top-level recipe file, except for what's below.
Index: /branches/eam_branches/ippconfig.20240412/sdss/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/psastro.config	(revision 42661)
@@ -0,0 +1,38 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  10.0
+
+# pmAstromGridMatch:
+PSASTRO.GRID.MIN.ANGLE F32 -2.0
+PSASTRO.GRID.MAX.ANGLE F32 +2.0
+PSASTRO.GRID.DEL.ANGLE F32  0.25
+PSASTRO.GRID.MIN.SIGMA F32  5.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32   10000.
+PSASTRO.GRID.SCALE     F32     500
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# match radius in pixels for CHIP astrometry
+PSASTRO.MATCH.RADIUS   F32    8
+
+# pmAstromMatchFit
+PSASTRO.CHIP.ORDER     S32      3  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      10   # min fitted stars in solution
+
+MAG_MAX                F32      10
+PSASTRO.CATDIR         STR      SYNTH.BRIGHT ## XXX this should probably be using SYNTH.GRIZY
+PSASTRO.MATCH.LUMFUNC  BOOL     TRUE
Index: /branches/eam_branches/ippconfig.20240412/sdss/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/psphot.config	(revision 42661)
@@ -0,0 +1,8 @@
+
+PSF_MODEL         STR  PS_MODEL_QGAUSS
+
+# check:
+PSF_CLUMP_NSIGMA   F32  2.5             # region of Sx,Sy plane to use for selecting PSF stars
+
+# is this needed to mask bad regions?
+XMIN F32 15
Index: /branches/eam_branches/ippconfig.20240412/sdss/pswarp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/pswarp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/pswarp.config	(revision 42661)
@@ -0,0 +1,2 @@
+ASTROM.SOURCE	STR	NULL	# Source file rule for astrometry; NULL to use existing WCS
+ASTROM.ACCEPT	BOOL	TRUE	# Accept astrometric solution unconditionally?
Index: /branches/eam_branches/ippconfig.20240412/sdss/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdss/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdss/rejections.config	(revision 42661)
@@ -0,0 +1,49 @@
+
+DARK 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.SN          F32  0.0
+  IMFILE.BIN.STDEV   F32  0.0
+  IMFILE.BIN.SN      F32  0.0
+  IMFILE.FLUX        F32  2.0
+  EXP.MEAN           F32  0.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.0
+  EXP.SN             F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SN         F32  0.0
+  EXP.FLUX           F32  2.0
+  ENSEMBLE.MEAN      F32  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+FRINGE 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.SN          F32  0.0
+  IMFILE.BIN.STDEV   F32  0.0
+  IMFILE.BIN.SN      F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  0.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.0
+  EXP.SN             F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SN         F32 10.0
+  EXP.FLUX           F32  0.0
+  ENSEMBLE.MEAN      F32  0.0
+  ENSEMBLE.STDEV     F32  0.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/Makefile.am	(revision 42661)
@@ -0,0 +1,28 @@
+
+installdir = $(datadir)/ippconfig/sdssmosaic/
+
+install_files = \
+	dvo.config \
+	dvo.layout \
+	camera.config \
+	format_split.config \
+	format_mef.config \
+	cmp.config \
+	cmf.config \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	pswarp.config \
+	reductionClasses.mdc \
+	addstar.config \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/addstar.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/addstar.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/addstar.config	(revision 42661)
@@ -0,0 +1,5 @@
+# IMAGES.ONLY  BOOL  FALSE
+# 
+# ADDSTAR	METADATA
+#     IMAGES.ONLY  BOOL  FALSE
+# END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/camera.config	(revision 42661)
@@ -0,0 +1,111 @@
+# Camera configuration file for co-adding reduced SDSS images of stripe82
+# Attempt to designate all 6 camcols as a single mosaic camera
+# Copied from SDSS camera config files, which in turn were copied 
+# from ISP config files 
+# Sebastian Jester jester at mpia.de August 27, 2007
+
+# File formats that we know about
+FORMATS         METADATA
+	MEF		STR	sdssmosaic/format_mef.config	# MEF version, required for psastro
+	SDSSmosaic	STR     sdssmosaic/format_split.config  # New (possibly) split format with 30 different chips
+        # SDSSmosaic	STR     sdssmosaic/format.config  	# Old split format with per-chip gains rolled up in DEPEND
+END
+ 
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+	CHIP11	STR	CELL11
+	CHIP12	STR	CELL12
+	CHIP13	STR	CELL13
+	CHIP14	STR	CELL14
+	CHIP15	STR	CELL15
+	CHIP16	STR	CELL16
+	CHIP21	STR	CELL21
+	CHIP22	STR	CELL22
+	CHIP23	STR	CELL23
+	CHIP24	STR	CELL24
+	CHIP25	STR	CELL25
+	CHIP26	STR	CELL26
+	CHIP31	STR	CELL31
+	CHIP32	STR	CELL32
+	CHIP33	STR	CELL33
+	CHIP34	STR	CELL34
+	CHIP35	STR	CELL35
+	CHIP36	STR	CELL36
+	CHIP41	STR	CELL41
+	CHIP42	STR	CELL42
+	CHIP43	STR	CELL43
+	CHIP44	STR	CELL44
+	CHIP45	STR	CELL45
+	CHIP46	STR	CELL46
+	CHIP51	STR	CELL51
+	CHIP52	STR	CELL52
+	CHIP53	STR	CELL53
+	CHIP54	STR	CELL54
+	CHIP55	STR	CELL55
+	CHIP56	STR	CELL56
+END
+
+# valid filter names and corresponding IDs
+FILTER.ID       METADATA
+        g       STR     g
+        r       STR     r
+        i       STR     i
+        z       STR     z
+	u       STR     u
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID		METADATA
+	FPA	STR	fpa
+END
+
+DVO.CAMERADIR	STR	sdssmosaic	# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        PSPHOT          STR     sdssmosaic/psphot.config               # psphot details
+        PSASTRO         STR     sdssmosaic/psastro.config              # psastro details
+        PPIMAGE         STR     sdssmosaic/ppImage.config              # Recipes for ppImage
+        PPMERGE         STR     sdssmosaic/ppMerge.config              # Recipes for ppMerge
+        PSWARP          STR     sdssmosaic/pswarp.config              # Recipes for pswarp
+	REJECTIONS	STR     sdssmosaic/rejections.config
+END
+
+REDUCTION	STR	sdssmosaic/reductionClasses.mdc
+
+FILERULES	STR	recipes/filerules-split.mdc
+
+EXTNAME.RULES METADATA
+  CMF.HEAD STR cmf.hdr
+  CMF.DATA STR cmf.psf
+  CMF.XSRC STR cmf.xsrc
+  CMF.XFIT STR cmf.xfit
+  CMF.XRAD STR cmf.xrad # use .PSF and .EXT?
+  CMF.DETEFF STR cmf.deteff
+
+  PSF.HEAD  STR	hdr
+  PSF.TABLE STR psf_model
+  PSF.RESID STR psf_resid
+
+  REF.ASTROM STR ref_astrom
+END
+
+BLANK.HEADERS	METADATA
+	FPA.TIME	STR	TAI
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.AIRMASS	STR	AIRMASS
+END
+
+PHOTCODE.RULE           STR     SDSS.{FILTER.ID}.{DETECTOR}		# Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/cmf.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/cmf.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/cmf.config	(revision 42661)
@@ -0,0 +1,84 @@
+# Pan-STARRS Imaging Sky Probe
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+	NAXIS		S32	0
+	TELESCOP	STR	ISP-1 
+	INSTRUME	STR	ISP-Apogee
+	DETECTOR	STR	ISP-Apogee-01
+	ISPCAMER	STR	Apogee U42
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	SEQID	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTER	STR	FILTNAME
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.TIME	STR	MJD-OBS
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.READNOISE	STR	RDNOISE
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/cmp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/cmp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/cmp.config	(revision 42661)
@@ -0,0 +1,84 @@
+# Pan-STARRS Imaging Sky Probe
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	FALSE
+	NAXIS		S32	0
+	TELESCOP	STR	ISP-1 
+	INSTRUME	STR	ISP-Apogee
+	DETECTOR	STR	ISP-Apogee-01
+	ISPCAMER	STR	Apogee U42
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	SEQID	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTER	STR	FILTNAME
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.TIME	STR	MJD-OBS
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.READNOISE	STR	RDNOISE
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/dvo.config	(revision 42661)
@@ -0,0 +1,74 @@
+# DVO.CAMERADIR		/home/jester/IPP/ippconfig/sdssmosaic
+# Previous one not needed any more?
+
+# location of DVO database tables
+CATDIR			/IPP/data/SDSS/stripe82/coadd/prod/catdir_default
+MOSAICNAME		SDSSmosaic
+
+# keywords used by DVO to interpret the headers
+
+# used by parse_time to find time-related keywords
+MJD-KEYWORD		NONE
+DATE-KEYWORD		DATE-OBS
+DATE-MODE		YYYY-MM-DD
+UT-KEYWORD		TAIHMS
+JD-KEYWORD		NONE
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		-7.0
+CAL_INSTMAG_MIN		-9.5
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# allowed astrometry error (arcseconds)
+ADDSTAR_MAX_CERROR	2.0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+GRID_TOOFEW             10     # keep grid FROZEN if N(good) < GRID_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/dvo.layout	(revision 42661)
@@ -0,0 +1,59 @@
+# this file defines the layout of the mosaic imager:
+# 
+# SJ: I don't know what it does... help!
+
+NCCD 6
+NAXIS1 2048
+NAXIS2 1361
+
+MOSAIC_X  6
+MOSAIC_Y  1
+
+# lines need to contain:
+
+CHIPID_KEYWORD EXTNAME
+
+# ID     CHIPID xoffset yoffset xflip yflip datasec         biassec            Xo      Yo      theta
+CCD.0     ccd00       1       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.1     ccd01       2       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.2     ccd02       3       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.3     ccd03       4       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.4     ccd04       5       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.5     ccd05       6       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.6     ccd06       7       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.7     ccd07       8       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.8     ccd08       9       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.9     ccd09       1       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.10    ccd10       2       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.11    ccd11       3       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.12    ccd12       4       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.13    ccd13       5       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.14    ccd14       6       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.15    ccd15       7       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.16    ccd16       8       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.17    ccd17       9       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.18    ccd18       1       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.19    ccd19       2       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.20    ccd20       3       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.21    ccd21       4       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.22    ccd22       5       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.23    ccd23       6       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.24    ccd24       7       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.25    ccd25       8       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.26    ccd26       9       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.27    ccd27       1       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.28    ccd28       2       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.29    ccd29       3       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.30    ccd30       4       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.31    ccd31       5       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.32    ccd32       6       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.33    ccd33       7       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.34    ccd34       8       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.35    ccd35       9       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.36    ccd36       0       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.37    ccd37      10       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.38    ccd38       0       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.39    ccd39      10       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/format.config	(revision 42661)
@@ -0,0 +1,181 @@
+# SDSSmosaic camera, starting from SDSS from Pan-STARRS Imaging Sky Probe
+# Sebastian Jester jester at mpia.de August 7, 2007
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+#	NAXIS		S32	2
+	ORIGIN		STR	SDSS
+	TELESCOP	STR	2.5m
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	CHIP	# The FITS file represents one camcol = chip, 
+					# 6 of which make the FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	FRAME	# A PHU keyword for unique identifier within 
+					# the hierarchy level - just needs to be the same
+					# for all 6 files belonging to the same "exposure"
+	CHIP.NAME	STR	CAMCOL	# Distinguishes chip name
+	CONTENT		STR	CAMCOL
+ # Is the following line the origin of the weirdly named output files?
+	CONTENT.RULE	STR	{CHIP.NUM} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+# CONTENTS	STR	Chip:Cell:amplifier
+CONTENTS	METADATA
+	# Content name, chipType
+	1		STR	CHIP1:Chip
+	2		STR	CHIP2:Chip
+	3		STR	CHIP3:Chip
+	4		STR	CHIP4:Chip
+	5		STR	CHIP5:Chip
+	6		STR	CHIP6:Chip
+END
+	
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	Chip	STR	Cell:Cell
+END
+
+
+# Specify the cell data
+CELLS	METADATA
+	Cell	METADATA
+#		CELL.TRIMSEC.SOURCE	STR	HEADER
+#		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+#		CELL.BIASSEC.SOURCE	STR	HEADER
+#		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+# NB: If we could look up the gains etc. separately for both amplifiers,
+# we could split the chips into cells for each amp
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+# FPA.INSTRUMENT actually needs to be identical to the CAMERA, 
+# so I'm moving it from here down to the defaults to make sure that
+# this is ture
+#	FPA.INSTRUMENT	STR	ORIGIN
+	FPA.DETECTOR	STR	CCDLOC
+#	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBSTYPE	STR	FLAVOR
+	FPA.OBJECT	STR	OBJECT
+	FPA.FILTERID	STR	FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	IPA
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+#	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME    	STR     DATE-OBS TAIHMS # Two values are interpreted as date and time
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+#	FPA.TEMP	STR	CCDTEMP
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	EXPTIME
+	CELL.TIME	STR	DATE-OBS TAIHMS
+#	CELL.GAIN	STR	GAIN
+#	CELL.READNOISE	STR	RDNOISE
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+#	CELL.TIMESYS	STR	TIMESYS
+	CELL.XBIN	STR	COLBIN
+	CELL.YBIN	STR	ROWBIN
+# these were used for some early data
+#	CELL.XBIN	STR	XBIN
+#	CELL.YBIN	STR	YBIN
+#	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+# FPA.CAMERA contains the name of the camera according to the config system (i.e. SDSSmosaic)
+# FPA.INSTRUMENT contains the name of the camera according to the fits headers (i.e. itself)
+# Normally, this will be in the header keyword INSTRUME but for this one, we override it to 
+# SDSSmosaic to avoid confusion between this and the non-mosaic SDSS configuration.
+	INSTRUME	STR	SDSSmosaic
+	FPA.INSTRUMENT	STR	INSTRUME
+	CELL.GAIN.ORIGIN STR	VALUE
+	CELL.GAIN	 F32	5.0
+# The following doesn't work - don't know why. Use format_split.config
+# instead to get correct per-chip gains.
+# 	CELL.GAIN.DEPEND STR	FPA.DETECTOR
+# 	CELL.GAIN	METADATA
+#                 11      F32     4.71
+#                 12      F32     4.6
+#                 13      F32     4.72
+#                 14      F32     4.76
+#                 15      F32     4.725
+#                 16      F32     4.895
+#                 21      F32     5.165
+#                 22      F32     6.565
+#                 23      F32     4.86
+#                 24      F32     4.885
+#                 25      F32     4.64
+#                 26      F32     4.76
+#                 31      F32     1.62
+#                 32      F32     1.595
+#                 33      F32     1.58
+#                 34      F32     1.6
+#                 35      F32     1.47
+#                 36      F32     2.17
+#                 41      F32     4.745
+#                 42      F32     5.155
+#                 43      F32     4.885
+#                 44      F32     4.775
+#                 45      F32     3.48
+#                 46      F32     4.69
+#                 51      F32     4.745
+#                 52      F32     5.155
+#                 53      F32     4.885
+#                 54      F32     4.775
+#                 55      F32     3.48
+#                 56      F32     4.69		
+# END
+# readnoise is from http://www.sdss.org/dr6/instruments/imager/index.html
+# Note that I have emails from Jim Gunn saying dark noise *is* important...
+	CELL.READNOISE	F32	5.0
+	FPA.AIRMASS	F32	1.3
+	CHIP.XSIZE	S32	2048
+	CHIP.YSIZE	S32	1361
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	1361
+#	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	60000
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+#	CELL.XBIN	S32	1
+#	CELL.YBIN	S32	1
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME    	STR     SEPARATE YEAR.FIRST
+#	FPA.TIME	STR	MJD
+	CELL.TIME    	STR     SEPARATE YEAR.FIRST
+#	CELL.TIME	STR	MJD
+	CHIP.NUM	STR	FORTRAN
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/format_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/format_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/format_mef.config	(revision 42661)
@@ -0,0 +1,140 @@
+# SDSSmosaic camera, starting from SDSS from Pan-STARRS Imaging Sky Probe
+# Sebastian Jester jester at mpia.de August 7, 2007
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+	ORIGIN		STR	SDSS
+	TELESCOP	STR	2.5m
+	PSFORMAT	STR	MEF
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA
+	EXTENSIONS	STR	CHIP
+	FPA.OBS		STR	FRAME	# A PHU keyword for unique identifier within 
+					# the hierarchy level - just needs to be the same
+					# for all 6 files belonging to the same "exposure"
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Chips name, chipType
+	chip1		STR	CHIP1:Chip
+	chip2		STR	CHIP2:Chip
+	chip3		STR	CHIP3:Chip
+	chip4		STR	CHIP4:Chip
+	chip5		STR	CHIP5:Chip
+	chip6		STR	CHIP6:Chip
+END
+	
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	Chip	STR	Cell:Cell
+END
+
+
+# Specify the cell data
+CELLS	METADATA
+	Cell	METADATA
+#		CELL.TRIMSEC.SOURCE	STR	HEADER
+#		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+#		CELL.BIASSEC.SOURCE	STR	HEADER
+#		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+# NB: If we could look up the gains etc. separately for both amplifiers,
+# we could split the chips into cells for each amp
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+# FPA.INSTRUMENT actually needs to be identical to the CAMERA, 
+# so I'm moving it from here down to the defaults to make sure that
+# this is ture
+#	FPA.INSTRUMENT	STR	ORIGIN
+	FPA.DETECTOR	STR	CCDLOC
+#	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBSTYPE	STR	FLAVOR
+	FPA.OBJECT	STR	OBJECT
+	FPA.FILTERID	STR	FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	IPA
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+#	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME    	STR     DATE-OBS TAIHMS # Two values are interpreted as date and time
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+#	FPA.TEMP	STR	CCDTEMP
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	EXPTIME
+	CELL.TIME	STR	DATE-OBS TAIHMS
+#	CELL.GAIN	STR	GAIN
+#	CELL.READNOISE	STR	RDNOISE
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+#	CELL.TIMESYS	STR	TIMESYS
+	CELL.XBIN	STR	COLBIN
+	CELL.YBIN	STR	ROWBIN
+# these were used for some early data
+#	CELL.XBIN	STR	XBIN
+#	CELL.YBIN	STR	YBIN
+#	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+# FPA.CAMERA contains the name of the camera according to the config system (i.e. SDSSmosaic)
+# FPA.INSTRUMENT contains the name of the camera according to the fits headers (i.e. itself)
+# Normally, this will be in the header keyword INSTRUME but for this one, we override it to 
+# SDSSmosaic to avoid confusion between this and the non-mosaic SDSS configuration.
+	INSTRUME	STR	SDSSmosaic
+	FPA.INSTRUMENT	STR	INSTRUME
+# The gain is only roughly correct...
+	CELL.GAIN	F32	5.0
+# readnoise is from http://www.sdss.org/dr6/instruments/imager/index.html
+# Note that I have emails from Jim Gunn saying dark noise *is* important...
+	CELL.READNOISE	F32	5.0
+	FPA.AIRMASS	F32	1.3
+	CHIP.XSIZE	S32	2048
+	CHIP.YSIZE	S32	1361
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	1361
+#	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	60000
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+#	CELL.XBIN	S32	1
+#	CELL.YBIN	S32	1
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME    	STR     SEPARATE YEAR.FIRST
+#	FPA.TIME	STR	MJD
+	CELL.TIME    	STR     SEPARATE YEAR.FIRST
+#	CELL.TIME	STR	MJD
+	CHIP.NUM	STR	FORTRAN
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/format_skycell.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/format_skycell.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/format_skycell.config	(revision 42661)
@@ -0,0 +1,110 @@
+# SDSS camera, starting from Pan-STARRS Imaging Sky Probe
+# Sebastian Jester jester at mpia.de August 7, 2007
+
+# How to identify this type - if the following header values match, it's accepted.
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+#	NAXIS		S32	2
+	ORIGIN		STR	SDSS
+	TELESCOP	STR	2.5m
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	FRAME	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+#		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+#		CELL.BIASSEC.SOURCE	STR	HEADER
+#		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+#		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	ORIGIN
+# Need the following?
+	FPA.DETECTOR	STR	CCDLOC
+#	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBSTYPE	STR	FLAVOR
+	FPA.OBJECT	STR	OBJECT
+	FPA.FILTERID	STR	FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	IPA
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+#	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	TAI
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+#	FPA.TEMP	STR	CCDTEMP
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	EXPTIME
+	CELL.TIME	STR	TAI
+#	CELL.GAIN	STR	GAIN
+#	CELL.READNOISE	STR	RDNOISE
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+#	CELL.TIMESYS	STR	TIMESYS
+	CELL.XBIN	STR	COLBIN
+	CELL.YBIN	STR	ROWBIN
+# these were used for some early data
+#	CELL.XBIN	STR	XBIN
+#	CELL.YBIN	STR	YBIN
+#	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+# The gain is only roughly correct...
+	CELL.GAIN	F32	5.0
+# readnoise is from http://www.sdss.org/dr6/instruments/imager/index.html
+# Note that I have emails from Jim Gunn saying dark noise *is* important...
+	CELL.READNOISE	F32	5.0
+	FPA.AIRMASS	F32	1.3
+	CHIP.XSIZE	S32	2048
+	CHIP.YSIZE	S32	1361
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+#	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	60000
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+#	CELL.XBIN	S32	1
+#	CELL.YBIN	S32	1
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/format_split.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/format_split.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/format_split.config	(revision 42661)
@@ -0,0 +1,412 @@
+# SDSSmosaic camera, starting from SDSS from Pan-STARRS Imaging Sky Probe
+# Sebastian Jester jester at mpia.de August 7, 2007
+#
+# Renamed to format_split.config to specify different chips for the actual 30 different chips following megacam/format_split.config
+# Here we want 60 cells, corresponding to the 6 camcols x 5 chips (one per filter) x 2 amps (which can have different gains)
+# October 2008 
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+#	NAXIS		S32	2
+	ORIGIN		STR	SDSS
+	TELESCOP	STR	2.5m
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	CHIP	# The FITS file represents one
+					# camcol = chip, 6 of which
+					# make the FPA in one filter,
+					# times 5 to make all filters.
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	FRAME	# A PHU keyword for unique identifier within 
+					# the hierarchy level - just needs to be the same
+					# for all 6 files belonging to the same "exposure"
+# was	CHIP.NAME	STR	CAMCOL	# Distinguishes chip name
+	CHIP.NAME	STR	CCDLOC	# Distinguishes chip name
+	CONTENT		STR	CCDLOC
+ # Is the following line the origin of the weirdly named output files?
+	CONTENT.RULE	STR	{CHIP.NUM} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+# CONTENTS	STR	Chip:Cell:amplifier
+CONTENTS	METADATA
+	# Content name, chipType
+	11		STR	CHIP11:Chip11
+	12		STR	CHIP12:Chip12
+	13		STR	CHIP13:Chip13
+	14		STR	CHIP14:Chip14
+	15		STR	CHIP15:Chip15
+	16		STR	CHIP16:Chip16
+	21		STR	CHIP21:Chip21
+	22		STR	CHIP22:Chip22
+	23		STR	CHIP23:Chip23
+	24		STR	CHIP24:Chip24
+	25		STR	CHIP25:Chip25
+	26		STR	CHIP26:Chip26
+	31		STR	CHIP31:Chip31
+	32		STR	CHIP32:Chip32
+	33		STR	CHIP33:Chip33
+	34		STR	CHIP34:Chip34
+	35		STR	CHIP35:Chip35
+	36		STR	CHIP36:Chip36
+	41		STR	CHIP41:Chip41
+	42		STR	CHIP42:Chip42
+	43		STR	CHIP43:Chip43
+	44		STR	CHIP44:Chip44
+	45		STR	CHIP45:Chip45
+	46		STR	CHIP46:Chip46
+	51		STR	CHIP51:Chip51
+	52		STR	CHIP52:Chip52
+	53		STR	CHIP53:Chip53
+	54		STR	CHIP54:Chip54
+	55		STR	CHIP55:Chip55
+	56		STR	CHIP56:Chip56
+END
+	
+# Specify the chips - only u3 has 2 amps, and I don't even know if the gains differ.
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	Chip11	STR	CELL11:Amp11
+	Chip12	STR	CELL12:Amp12
+	Chip13	STR	CELL13:Amp13
+	Chip14	STR	CELL14:Amp14
+	Chip15	STR	CELL15:Amp15
+	Chip16	STR	CELL16:Amp16
+	Chip21	STR	CELL21:Amp21
+	Chip22	STR	CELL22:Amp22
+	Chip23	STR	CELL23:Amp23
+	Chip24	STR	CELL24:Amp24
+	Chip25	STR	CELL25:Amp25
+	Chip26	STR	CELL26:Amp26
+	Chip31	STR	CELL31:Amp31
+	Chip32	STR	CELL32:Amp32
+	Chip33	STR	CELL33:Amp33
+	Chip34	STR	CELL34:Amp34
+	Chip35	STR	CELL35:Amp35
+	Chip36	STR	CELL36:Amp36
+	Chip41	STR	CELL41:Amp41
+	Chip42	STR	CELL42:Amp42
+	Chip43	STR	CELL43:Amp43
+	Chip44	STR	CELL44:Amp44
+	Chip45	STR	CELL45:Amp45
+	Chip46	STR	CELL46:Amp46
+	Chip51	STR	CELL51:Amp51
+	Chip52	STR	CELL52:Amp52
+	Chip53	STR	CELL53:Amp53
+	Chip54	STR	CELL54:Amp54
+	Chip55	STR	CELL55:Amp55
+	Chip56	STR	CELL56:Amp56
+END
+
+
+# Specify the cell data
+# Gain is from ? XXX
+
+# readnoise is from http://www.sdss.org/dr6/instruments/imager/index.html and just one number for all chips.
+# Note that I have emails from Jim Gunn saying dark noise *is* important...
+CELLS	METADATA
+	Amp11	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.71
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp12	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.6
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp13	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.72
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp14	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.76
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp15	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.725
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp16	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.895
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp21	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	5.165
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp22	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	6.565
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp23	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.86
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp24	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.885
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp25	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.64
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp26	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.76
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp31	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	1.62
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp32	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	1.595
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp33	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	1.58
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp34	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	1.6
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp35	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	1.47
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp36	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	2.17
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp41	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.745
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp42	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	5.155
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp43	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.885
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp44	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.775
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp45	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	3.48
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp46	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.69
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp51	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.745
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp52	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	5.155
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp53	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.885
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp54	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.775
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp55	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	3.48
+		CELL.X0			S32	0 # or 1?
+	END
+	Amp56	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:2048,1:1361]
+		CELL.GAIN.SOURCE	STR	VALUE
+		CELL.GAIN		F32	4.69
+		CELL.X0			S32	0 # or 1?
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+# FPA.INSTRUMENT actually needs to be identical to the CAMERA, 
+# so I'm moving it from here down to the defaults to make sure that
+# this is ture
+#	FPA.INSTRUMENT	STR	ORIGIN
+	FPA.DETECTOR	STR	CCDLOC
+#	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBSTYPE	STR	FLAVOR
+	FPA.OBJECT	STR	OBJECT
+	FPA.FILTERID	STR	FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	IPA
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+#	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME    	STR     DATE-OBS TAIHMS # Two values are interpreted as date and time
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+#	FPA.TEMP	STR	CCDTEMP
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	EXPTIME
+	CELL.TIME	STR	DATE-OBS TAIHMS
+#	CELL.GAIN	STR	GAIN
+#	CELL.READNOISE	STR	RDNOISE
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+#	CELL.TIMESYS	STR	TIMESYS
+	CELL.XBIN	STR	COLBIN
+	CELL.YBIN	STR	ROWBIN
+# these were used for some early data
+#	CELL.XBIN	STR	XBIN
+#	CELL.YBIN	STR	YBIN
+#	CELL.BAD	STR	BADLEVEL
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+# FPA.CAMERA contains the name of the camera according to the config system (i.e. SDSSmosaic)
+# FPA.INSTRUMENT contains the name of the camera according to the fits headers (i.e. itself)
+# Normally, this will be in the header keyword INSTRUME but for this one, we override it to 
+# SDSSmosaic to avoid confusion between this and the non-mosaic SDSS configuration.
+	INSTRUME	STR	SDSSmosaic
+	FPA.INSTRUMENT	STR	INSTRUME
+# readnoise is from http://www.sdss.org/dr6/instruments/imager/index.html
+# Note that I have emails from Jim Gunn saying dark noise *is* important...
+       	CELL.READNOISE.SOURCE	STR	VALUE
+	CELL.READNOISE	F32	5.0
+# What are the units of readnoise? Electrons?
+	FPA.AIRMASS	F32	1.3
+	CHIP.XSIZE	S32	2048
+	CHIP.YSIZE	S32	1361
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	1361
+#	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	60000
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+# Do we now need a CHIP.X0.DEPEND STR DETECTOR and a table of
+# locations? If so, again dr6/imager/index.html gives the necessary
+# parameters
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.Y0		S32	0
+#	CELL.XBIN	S32	1
+#	CELL.YBIN	S32	1
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME    	STR     SEPARATE YEAR.FIRST
+#	FPA.TIME	STR	MJD
+	CELL.TIME    	STR     SEPARATE YEAR.FIRST
+#	CELL.TIME	STR	MJD
+	CHIP.NUM	STR	FORTRAN
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/ppImage.config	(revision 42661)
@@ -0,0 +1,177 @@
+### ppImage recipe configuration file
+
+# Inherit everything from the top-level recipe file, except for what's below.
+
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR z
+# FRINGE.FILTERS	STR y
+
+# apply the following constraints when selecting a detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+  END
+  SHUTTER METADATA
+  END	
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   VERSION STR RAW
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTERID
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR TWILIGHT:FPA.TIME
+  END
+  MASK METADATA
+    FILTER   STR FPA.FILTERID
+  END
+END
+
+## these science-image analysis recipes are placed here set MASK = FALSE
+
+# Standard chip processing
+CHIP   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_DET_ONLY  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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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    FALSE           # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # 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    TRUE            # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
+# SDSS Softbias and photometry
+PPIMAGE_OP_SOFT   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 base detrended image?
+  CHIP.VARIANCE.FITS BOOL   TRUE            # Save base detrended image?
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  OVERSCAN.CONSTANT BOOL  TRUE
+  OVERSCAN.VALUE  F32     1000.0
+  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
+# To turn on masking, use the following lines:
+#  MASK            BOOL    TRUE            # Mask bad pixels
+#  MASK.VALUE	  U8	  1		  # Bad-pixel value in my SDSS masks (see IPPwiki/stripe82)
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL	  TRUE 		  # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL	  TRUE 		  # Save 2nd binned jpeg?
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE            # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
+# SDSS Softbias, photometry, astrometry
+PPIMAGE_OA_SOFT   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 base detrended image?
+  CHIP.VARIANCE.FITS BOOL   TRUE            # Save base detrended image?
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  OVERSCAN.CONSTANT BOOL  TRUE
+  OVERSCAN.VALUE  F32     1000.0
+  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
+# To turn on masking, use the following lines:
+#  MASK            BOOL    TRUE            # Mask bad pixels
+#  MASK.VALUE	  U8	  1		  # Bad-pixel value in my SDSS masks (see IPPwiki/stripe82)
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL	  TRUE 		  # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL	  TRUE 		  # Save 2nd binned jpeg?
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    TRUE            # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/ppMerge.config	(revision 42661)
@@ -0,0 +1,3 @@
+### ppImage recipe configuration file
+
+# Inherit everything from the top-level recipe file, except for what's below.
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/psastro.config	(revision 42661)
@@ -0,0 +1,133 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  10.0
+
+# pmAstromGridMatch:
+PSASTRO.GRID.MIN.ANGLE F32 -2.0
+PSASTRO.GRID.MAX.ANGLE F32 +2.0
+PSASTRO.GRID.DEL.ANGLE F32  0.25
+PSASTRO.GRID.MIN.SIGMA F32  5.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+# PSASTRO.GRID.OFFSET    F32     10000.
+PSASTRO.GRID.OFFSET    F32     100.
+PSASTRO.GRID.SCALE     F32     500
+PSASTRO.GRID.NSTAR.MAX S32     800 # max stars accepted for fitting
+
+PSASTRO.MAX.NRAW      S32       800   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF      S32      5000   # max stars accepted for fitting (0 for all)
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32     0.15
+
+# 
+PSASTRO.MIN.INST.MAG.RAW       F32     -15.0   # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32       0.0   # max instrumental magnitude for stars accepted for fitting
+
+#
+PSASTRO.GRID.MIN.ANGLE F32 -2.0 # start angle (degrees)
+PSASTRO.GRID.MAX.ANGLE F32 +2.0
+PSASTRO.GRID.DEL.ANGLE F32  0.5
+
+#
+PSASTRO.GRID.MIN.SCALE F32  1.00
+PSASTRO.GRID.MAX.SCALE F32  1.00
+PSASTRO.GRID.DEL.SCALE F32  0.01
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.RADIUS.N0 F32    90
+PSASTRO.MATCH.RADIUS.N1 F32    60
+PSASTRO.MATCH.RADIUS.N2 F32    30
+PSASTRO.MATCH.RADIUS.N3 F32    20
+PSASTRO.MATCH.RADIUS.N4 F32    20
+PSASTRO.MATCH.RADIUS.N5 F32    20
+PSASTRO.MATCH.RADIUS.N6 F32    10
+PSASTRO.MATCH.RADIUS.N7 F32    10
+PSASTRO.MATCH.FIT.NITER S32     8
+
+# XXX Test for taurus
+PSASTRO.GRID.MIN.SIGMA  F32  1.0
+PSASTRO.IGNORE          STR  BLEND
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# This used to be true...
+PSASTRO.USE.MODEL             BOOL     FALSE
+
+# PSASTRO.FIX.CHIPS             BOOL     TRUE
+PSASTRO.PIXEL.TOLERANCE       F32      20.0
+PSASTRO.ANGLE.TOLERANCE       F32      1.0
+
+# now use PSASTRO.CATDIR, it seems - and probably should only use it
+# once anyway - used to have both synth.grizy and 2mass listed here...
+# 2MASS is a symbolic name that needs to be defined in site.config
+# in the PSASTRO.CATDIRS METADATA section. SYNTH.GRIZY is currently
+# the other option.
+PSASTRO.CATDIR STR SYNTH.GRIZY
+
+# Mosaic Astrometry options
+PSASTRO.MOSAIC.MODE         BOOL   FALSE
+# PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.80 # max allow error for valid solution (arcsec)
+# PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.20 # max allow error for valid solution (arcsec)
+# PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.80 # max allow error for valid solution (arcsec)
+# PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.50 # max allow error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    5.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    5.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    5.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    5.00 # max allow error for valid solution (arcsec)
+
+# mosaic radius match in pixels
+PSASTRO.MOSAIC.RADIUS.N0    F32    10
+PSASTRO.MOSAIC.RADIUS.N1    F32    5
+PSASTRO.MOSAIC.RADIUS.N2    F32    3
+
+PSASTRO.MOSAIC.CHIP.ORDER     S32      1  # limit chip-fit order to 1
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+
+# we need to allow a loose fit if we are fitting to 2mass (50mas internal error -> 100mas limit?)
+# if we are fitting against quality digital data, we can require tighter constraints
+
+PSASTRO.MODEL.REF.CHIP        STR      CHIP31
+
+# Do I need to change this photcode now that I'm using 30 SDSS photcodes?
+DVO.GETSTAR.PHOTCODE        STR      g
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32 24.0
+  PHOTCODE STR r_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+  ZEROPT   F32 22.0
+  PHOTCODE STR i_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR u
+  ZEROPT   F32 23.8
+  PHOTCODE STR g_SYNTH
+  # there is no u_SYNTH, so use g as a close substitute
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+  ZEROPT   F32 21.9
+  PHOTCODE STR z_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 24.4
+  PHOTCODE STR g_SYNTH
+END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/psphot.config	(revision 42661)
@@ -0,0 +1,52 @@
+
+BACKGROUND.XBIN	    S32  256            # size of background superpixels
+BACKGROUND.YBIN	    S32  256            # size of background superpixels
+
+# what is the 2D variation of the SDSS PSF?
+PSF_CLUMP_NX        S32   3               # subdivide image in to NX x NY regions for 
+PSF_CLUMP_NY        S32   2               # selecting PSF stars
+
+# test this:
+PSF_CLUMP_GRID_SCALE F32 2.5		# size of Sx,Sy image pixel
+
+# PSF model parameters : choose the PSF model desired
+# PSF_MODEL           STR  PS_MODEL_PS1_V1
+PSF_MODEL           STR  PS_MODEL_QGAUSS
+
+# Use same default setting as in 2.6.1 (MAP is now global default)
+PSF.TREND.MODE                      STR   MAP
+PSF.TREND.NX                        S32   3 
+PSF.TREND.NY                        S32   2
+
+# match the SDSS radius:
+PSF_REF_RADIUS      F32  18.7            # aperture magnitudes are scaled via 
+					 # curve-of-growth to this radius
+# for tests: Default is noap, nopsf; following recipes turn on one or both of these
+PSPHOT_NOAP_PSF METADATA
+ PSF.TREND.MODE		STR	MAP
+ PSF.TREND.NX		S32	3
+ PSF.TREND.NY		S32	3
+ MEASURE.APTREND        BOOL  FALSE
+END
+
+PSPHOT_AP_NOPSF METADATA
+ PSF.TREND.MODE		STR	POLY_ORD
+ PSF.TREND.NX		S32	0
+ PSF.TREND.NY		S32	0
+ MEASURE.APTREND        BOOL  TRUE
+ APTREND.ORDER.MAX    	S32   3 # used to be 1
+END
+
+PSPHOT_AP_PSF METADATA
+ PSF.TREND.MODE		STR	MAP
+ PSF.TREND.NX		S32	3
+ PSF.TREND.NY		S32	3
+ MEASURE.APTREND        BOOL  TRUE
+ APTREND.ORDER.MAX    	S32   3 # used to be 1
+END
+
+# put these values in the master?
+DIFF	METADATA
+	BACKGROUND.XBIN	    S32  32            # size of background superpixels
+	BACKGROUND.YBIN	    S32  32            # size of background superpixels
+END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/pswarp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/pswarp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/pswarp.config	(revision 42661)
@@ -0,0 +1,11 @@
+### Recipe for pswarp
+
+GRID.NX			S32	128		# Iso-astrom grid size in x (pixels)
+GRID.NY			S32	128		# Iso-astrom grid size in y (pixels)
+INTERPOLATION.MODE	STR	LANCZOS3	# Interpolation mode to use
+POOR.FRAC		F32	0.01		# Max fraction of bad flux for a "poor" warped pixel
+ASTROM.SOURCE		STR	PSASTRO.OUTPUT	# Source file rule for astrometry, or NULL
+#ASTROM.SOURCE		STR	NULL		# Source file rule for astrometry, or NULL
+ASTROM.ACCEPT		BOOL	TRUE		# Accept astrometric solution unconditionally?
+ASTROM.DEPTH		STR	SPLIT           # Source file rule for astrometry, or NULL
+ACCEPT.FRAC		F32	0.1		# Minimum fraction of good pixels to accept result
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/reductionClasses.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/reductionClasses.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/reductionClasses.mdc	(revision 42661)
@@ -0,0 +1,72 @@
+# Reduction classes
+# REDUCTION	METADATA
+	# Detrend processing not needed for these
+        # photometry only for pre-detrended images
+	# This one used to be called PROCESSED
+	SDSSphotonly	METADATA
+		CHIP_PPIMAGE	STR	PPIMAGE_OP_SOFT
+		CHIP_PSPHOT	STR	CHIP
+		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
+	END
+        # photometry and astrometry for pre-detrended images
+	SDSSphotast	METADATA
+		CHIP_PPIMAGE	STR	PPIMAGE_OA_SOFT
+		CHIP_PSPHOT	STR	CHIP
+		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
+	END
+	SDSSphotast_ap	METADATA
+		CHIP_PPIMAGE	STR	PPIMAGE_OA_SOFT
+		CHIP_PSPHOT	STR	PSPHOT_AP_PSF
+		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
+	END
+	SDSSphotast_p	METADATA
+		CHIP_PPIMAGE	STR	PPIMAGE_OA_SOFT
+		CHIP_PSPHOT	STR	PSPHOT_NOAP_PSF
+		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
+	END
+	SDSSphotast_a	METADATA
+		CHIP_PPIMAGE	STR	PPIMAGE_OA_SOFT
+		CHIP_PSPHOT	STR	PSPHOT_AP_NOPSF
+		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
+	END
+# END
Index: /branches/eam_branches/ippconfig.20240412/sdssmosaic/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/sdssmosaic/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/sdssmosaic/rejections.config	(revision 42661)
@@ -0,0 +1,45 @@
+
+DARK METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  0.0
+  IMFILE.STDEV       F32  0.0
+  IMFILE.MEANSTDEV   F32  0.0
+  IMFILE.SN          F32  0.0
+  IMFILE.BIN.STDEV   F32  0.0
+  IMFILE.BIN.SN      F32  0.0
+  IMFILE.FLUX        F32  2.0
+  EXP.MEAN           F32  0.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.0
+  EXP.SN             F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SN         F32  0.0
+  EXP.FLUX           F32  2.0
+  ENSEMBLE.MEAN      F32  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+FRINGE METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  0.0
+  IMFILE.STDEV       F32  0.0
+  IMFILE.MEANSTDEV   F32  0.0
+  IMFILE.SN          F32  0.0
+  IMFILE.BIN.STDEV   F32  0.0
+  IMFILE.BIN.SN      F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  0.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.0
+  EXP.SN             F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SN         F32 10.0
+  EXP.FLUX           F32  0.0
+  ENSEMBLE.MEAN      F32  0.0
+  ENSEMBLE.STDEV     F32  0.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/Makefile.am	(revision 42661)
@@ -0,0 +1,21 @@
+
+installdir = $(datadir)/ippconfig/simmosaic
+
+install_files = \
+	camera.config \
+	format_split.config \
+	format_together.config \
+	ppImage.config \
+	psastro.config \
+	psphot.config \
+	rejections.config \
+	dvo.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/camera.config	(revision 42661)
@@ -0,0 +1,88 @@
+# Camera configuration file for simulated mosaic
+
+# File formats that we know about
+FORMATS         METADATA
+	MEF     STR	simmosaic/format_together.config
+	SPLIT	STR	simmosaic/format_split.config
+END
+ 
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip00		STR	Cell00 Cell01 Cell10 Cell11
+        Chip01		STR	Cell00 Cell01 Cell10 Cell11
+        Chip10		STR	Cell00 Cell01 Cell10 Cell11
+        Chip11		STR	Cell00 Cell01 Cell10 Cell11
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+	NONE	STR	NONE
+	B	STR	B
+	V	STR	V
+	R	STR	R
+	I	STR	I
+	g	STR	g
+	r	STR	r
+	i	STR	i
+	z	STR	z
+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	simmosaic		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES		METADATA
+        PPIMAGE         STR     simmosaic/ppImage.config	# Default: all (normal) options on
+	PSPHOT		STR	simmosaic/psphot.config		# psphot details
+	PSASTRO		STR	simmosaic/psastro.config	# psastro details
+	REJECTIONS	STR	simmosaic/rejections.config	# Rejection limits
+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
+        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
+
+	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
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}.{CHIP.N}		# Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/dvo.config	(revision 42661)
@@ -0,0 +1,58 @@
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+DATE-KEYWORD		NONE
+UT-KEYWORD		NONE
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/filerules-mef.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/filerules-mef.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/filerules-mef.mdc	(revision 42661)
@@ -0,0 +1,277 @@
+### File rules for PHU=FPA, EXT=CHIP (eg, Megacam)
+### this file specifies compression types for various output files
+### The image types are defined in fitstypes.mdc
+### The default type of NONE means no compression
+
+### Redirections (MEF)
+PPIMAGE.OUTPUT        STR PPIMAGE.OUTPUT.MEF
+PPIMAGE.OUTPUT.MASK   STR PPIMAGE.OUT.MK.MEF
+PPIMAGE.OUTPUT.VARIANCE STR PPIMAGE.OUT.WT.MEF
+
+PPIMAGE.CHIP          STR PPIMAGE.CHIP.MEF
+PPIMAGE.CHIP.MASK     STR PPIMAGE.CHIP.MK.MEF
+PPIMAGE.CHIP.VARIANCE STR PPIMAGE.CHIP.WT.MEF
+
+PPIMAGE.BIN1          STR PPIMAGE.BIN1.MEF
+PPIMAGE.BIN2          STR PPIMAGE.BIN2.MEF
+
+PSASTRO.OUTPUT        STR PSASTRO.OUT.CMF.MEF
+PSPHOT.OUTPUT         STR PSPHOT.OUT.CMF.MEF
+PSPHOT.PSF.SAVE       STR PSPHOT.PSF.RAW.SAVE
+
+### Redirections (SPL)
+# PPIMAGE.OUTPUT        STR PPIMAGE.OUTPUT.SPL
+# PPIMAGE.OUTPUT.MASK   STR PPIMAGE.OUT.MK.SPL
+# PPIMAGE.OUTPUT.VARIANCE STR PPIMAGE.OUT.WT.SPL
+# 
+# PPIMAGE.CHIP          STR PPIMAGE.CHIP.SPL
+# PPIMAGE.CHIP.MASK     STR PPIMAGE.CHIP.MK.SPL
+# PPIMAGE.CHIP.VARIANCE STR PPIMAGE.CHIP.WT.SPL
+# 
+# PPIMAGE.BIN1          STR PPIMAGE.BIN1.SPL
+# PPIMAGE.BIN2          STR PPIMAGE.BIN2.SPL
+# 
+# PSASTRO.OUTPUT        STR PSASTRO.OUT.CMF.SPL
+# PSPHOT.OUTPUT         STR PSPHOT.OUT.CMF.SPL
+
+### Redirections (common)
+
+PPIMAGE.OUTPUT.FPA1   STR PPIMAGE.OUTPUT.FPA1.MEF
+PPIMAGE.OUTPUT.FPA2   STR PPIMAGE.OUTPUT.FPA2.MEF
+PPSTAMP.CHIP          STR PPSTAMP.CHIP.MEF
+PSASTRO.INPUT         STR PSASTRO.INPUT.CMF
+PSASTRO.OUTPUT.MEF    STR PSASTRO.OUT.CMF.MEF
+DVOCORR.OUTPUT        STR DVOCORR.MEF.OUTPUT
+DVOFLAT.OUTPUT        STR DVOFLAT.MEF.OUTPUT
+
+### input file definitions
+### use @DETDB entries to get the detrend images from the database
+### replace @DETDB with @FILES if you want to require it from the 
+### command line, or with an explicit name to require a specific file
+TYPE                    INPUT    FILENAME.RULE DATA.LEVEL FILE.TYPE
+
+## files used by ppImage
+PPIMAGE.INPUT           INPUT    @FILES        CHIP       IMAGE
+PPIMAGE.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PPIMAGE.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+PPIMAGE.INPUT.PSF       INPUT    @FILES        CHIP       PSF
+PPIMAGE.INPUT.SRC       INPUT    @FILES        CHIP       CMF
+PPIMAGE.MASK            INPUT    @DETDB        CHIP       MASK
+PPIMAGE.BIAS            INPUT    @DETDB        CHIP       IMAGE
+PPIMAGE.DARK            INPUT    @DETDB        CHIP       DARK
+PPIMAGE.FLAT            INPUT    @DETDB        CHIP       IMAGE
+PPIMAGE.FRINGE          INPUT    @DETDB        CHIP       FRINGE
+PPIMAGE.SHUTTER         INPUT    @DETDB        CHIP       IMAGE     
+
+## Files used by ppMerge
+PPMERGE.INPUT           INPUT    @FILES        CHIP       IMAGE
+PPMERGE.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PPMERGE.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+
+## files used to build and apply the flat-field correction images
+DVOCORR.INPUT           INPUT    @FILES        CHIP       IMAGE
+DVOCORR.REFHEAD         INPUT    @FILES        CHIP       HEADER
+DVOFLAT.INPUT           INPUT    @FILES        CHIP       IMAGE
+DVOFLAT.CORR            INPUT    @DETDB        CHIP       IMAGE
+
+## files used by psphot 
+PSPHOT.LOAD             INPUT    @FILES        CHIP       IMAGE
+PSPHOT.INPUT            INPUT    @FILES        CHIP       IMAGE
+PSPHOT.MASK             INPUT    @FILES        CHIP       MASK     
+PSPHOT.VARIANCE         INPUT    @FILES        CHIP       VARIANCE   
+PSPHOT.PSF.LOAD         INPUT    @FILES        CHIP       PSF       
+PSPHOT.INPUT.CMF        INPUT    @FILES        CHIP       CMF       
+
+## files used by psastro 
+PSASTRO.INPUT.CMP       INPUT    @FILES        CHIP       CMP
+PSASTRO.INPUT.CMF       INPUT    @FILES        CHIP       CMF
+PSASTRO.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PSASTRO.REFMASK         INPUT    @DETDB        CHIP       MASK
+PSASTRO.WCS             INPUT    @FILES        CHIP       CMF
+PSASTRO.MODEL           INPUT    @DETDB        FPA        ASTROM
+
+PSASTRO.EXTRACT.ASTROM  INPUT    @FILES        CHIP       CMF
+PSASTRO.EXTRACT.INPUT   INPUT    @FILES        CHIP       IMAGE
+
+## files used by pswarp
+PSWARP.INPUT            INPUT    @FILES        CHIP       IMAGE
+PSWARP.VARIANCE         INPUT    @FILES        CHIP       VARIANCE
+PSWARP.MASK             INPUT    @FILES        CHIP       MASK
+PSWARP.SKYCELL          INPUT    @FILES        CHIP       IMAGE
+PSWARP.ASTROM           INPUT    @FILES        CHIP       CMF
+
+## files used by ppsub
+PPSUB.INPUT             INPUT    @FILES        FPA        IMAGE
+PPSUB.INPUT.MASK        INPUT    @FILES        FPA        MASK
+PPSUB.INPUT.VARIANCE    INPUT    @FILES        FPA        VARIANCE
+PPSUB.INPUT.SOURCES     INPUT    @FILES        FPA        CMF
+PPSUB.REF               INPUT    @FILES        FPA        IMAGE
+PPSUB.REF.MASK          INPUT    @FILES        FPA        MASK
+PPSUB.REF.VARIANCE      INPUT    @FILES        FPA        VARIANCE
+PPSUB.REF.SOURCES       INPUT    @FILES        FPA        CMF
+
+## files used by ppstack
+PPSTACK.INPUT           INPUT    @FILES        FPA        IMAGE
+PPSTACK.INPUT.MASK      INPUT    @FILES        FPA        MASK
+PPSTACK.INPUT.VARIANCE  INPUT    @FILES        FPA        VARIANCE
+PPSTACK.INPUT.PSF       INPUT    @FILES        CHIP       PSF
+PPSTACK.INPUT.SOURCES   INPUT    @FILES        FPA        CMF
+
+## files used by ppstamp
+PPSTAMP.INPUT           INPUT 	 @FILES        CHIP       IMAGE
+PPSTAMP.INPUT.MASK      INPUT 	 @FILES        CHIP       MASK
+PPSTAMP.INPUT.VARIANCE  INPUT 	 @FILES        CHIP       VARIANCE
+
+# files used by pparith
+PPARITH.INPUT.IMAGE     INPUT    @FILES        CHIP       IMAGE
+PPARITH.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+
+PPSKYCELL.IMAGE      	INPUT 	 @FILES        CHIP       IMAGE
+PPSKYCELL.MASK      	INPUT 	 @FILES        CHIP       MASK
+
+PPSIM.INPUT             INPUT    @FILES        FPA        IMAGE     
+PPSIM.REAL.SOURCES      INPUT    @FILES        CHIP       CMF       
+
+### output file definitions
+TYPE                    OUTPUT FILENAME.RULE                     FILE.TYPE FITS.TYPE  DATA.LEVEL FILE.SAVE FILE.FORMAT
+PPIMAGE.OUTPUT.MEF      OUTPUT {OUTPUT}.b0.fits                  IMAGE     COMP_IMG   CHIP       TRUE      MEF
+PPIMAGE.OUT.MK.MEF      OUTPUT {OUTPUT}.mk.fits                  MASK      COMP_MASK  CHIP       TRUE      MEF
+PPIMAGE.OUT.WT.MEF      OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    CHIP       TRUE      MEF
+PPIMAGE.OUTPUT.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.b0.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+PPIMAGE.OUT.MK.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK      NONE       CHIP       TRUE      SPLIT
+PPIMAGE.OUT.WT.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.wt.fits      VARIANCE  NONE       CHIP       TRUE      SPLIT
+PPIMAGE.OUTPUT.DETMASK  OUTPUT {OUTPUT}.fits                     IMAGE     MASK       CHIP       TRUE      MEF
+PPIMAGE.OUTPUT.DETREND  OUTPUT {OUTPUT}.fits                     IMAGE     COMP_DET   CHIP       TRUE      MEF
+PPIMAGE.OUTPUT.RESID    OUTPUT {OUTPUT}.b0.fits                  IMAGE     COMP_SUB   CHIP       TRUE      MEF
+PPIMAGE.CONFIG          OUTPUT {OUTPUT}.{CHIP.NAME}.ppImage.mdc  TEXT      NONE       CHIP       TRUE      NONE
+                                                                                             
+PPIMAGE.CHIP.MEF        OUTPUT {OUTPUT}.ch.fits                  IMAGE     COMP_IMG   CHIP       TRUE      MEF
+PPIMAGE.CHIP.MK.MEF     OUTPUT {OUTPUT}.ch.mk.fits               MASK      COMP_MASK  CHIP       TRUE      MEF
+PPIMAGE.CHIP.WT.MEF     OUTPUT {OUTPUT}.ch.wt.fits               VARIANCE  COMP_WT    CHIP       TRUE      MEF
+PPIMAGE.CHIP.SPL        OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+PPIMAGE.CHIP.MK.SPL     OUTPUT {OUTPUT}.{CHIP.NAME}.ch.mk.fits   MASK      NONE       CHIP       TRUE      SPLIT
+PPIMAGE.CHIP.WT.SPL     OUTPUT {OUTPUT}.{CHIP.NAME}.ch.wt.fits   VARIANCE  NONE       CHIP       TRUE      SPLIT
+                                                                                     
+PPIMAGE.OUTPUT.FPA1.MEF OUTPUT {OUTPUT}.b1.fits                  IMAGE     COMP_IMG   FPA        TRUE      MEF
+PPIMAGE.OUTPUT.FPA2.MEF OUTPUT {OUTPUT}.b2.fits                  IMAGE     COMP_IMG   FPA        TRUE      MEF
+PPIMAGE.OUTPUT.FPA1.SPL OUTPUT {OUTPUT}.{CHIP.NAME}.b1.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+PPIMAGE.OUTPUT.FPA2.SPL OUTPUT {OUTPUT}.{CHIP.NAME}.b2.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+                                                                                     
+PPIMAGE.BIN1.MEF        OUTPUT {OUTPUT}.b1c.fits                 IMAGE     COMP_IMG   CHIP       TRUE      MEF
+PPIMAGE.BIN2.MEF        OUTPUT {OUTPUT}.b2c.fits                 IMAGE     COMP_IMG   CHIP       TRUE      MEF
+PPIMAGE.BIN1.SPL        OUTPUT {OUTPUT}.{CHIP.NAME}.b1.fits      IMAGE     COMP_IMG   CHIP       TRUE      SPLIT
+PPIMAGE.BIN2.SPL        OUTPUT {OUTPUT}.{CHIP.NAME}.b2.fits      IMAGE     COMP_IMG   CHIP       TRUE      SPLIT
+                                                                                     
+PPIMAGE.JPEG1           OUTPUT {OUTPUT}.b1.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPIMAGE.JPEG2           OUTPUT {OUTPUT}.b2.jpg                   JPEG      NONE       FPA        TRUE      NONE
+                                                                                     
+PPIMAGE.STATS           OUTPUT {OUTPUT}.stats                    STATS     NONE       FPA        TRUE      MEF
+
+
+## note: these use the same output naming convention since they are used for different ppMerge runs
+PPMERGE.OUTPUT.MASK     OUTPUT {OUTPUT}.fits                     MASK      NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.BIAS     OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.DARK     OUTPUT {OUTPUT}.fits                     DARK      NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.SHUTTER  OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.FLAT     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
+PPMERGE.OUTPUT.COUNT    OUTPUT {OUTPUT}.count.fits               IMAGE     NONE       CHIP       TRUE      NONE
+                                                                                     
+DVOCORR.MEF.OUTPUT      OUTPUT {OUTPUT}.fc.fits                  IMAGE     NONE       CHIP       TRUE      MEF
+DVOCORR.SPL.OUTPUT      OUTPUT {OUTPUT}.{CHIP.NAME}.fc.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+DVOFLAT.MEF.OUTPUT      OUTPUT {OUTPUT}.co.fits                  IMAGE     NONE       CHIP       TRUE      MEF
+DVOFLAT.SPL.OUTPUT      OUTPUT {OUTPUT}.{CHIP.NAME}.co.fits      IMAGE     NONE       CHIP       TRUE      SPLIT
+                                                                                     
+PSPHOT.RESID            OUTPUT {OUTPUT}.res.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+PSPHOT.BACKGND          OUTPUT {OUTPUT}.bck.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+PSPHOT.BACKSUB          OUTPUT {OUTPUT}.sub.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+PSPHOT.BACKMDL          OUTPUT {OUTPUT}.mdl.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+PSPHOT.BACKMDL.MEF      OUTPUT {OUTPUT}.mdl.fits                 IMAGE     NONE       CHIP       FALSE     MEF
+                                                                                     
+PSPHOT.OUTPUT.RAW       OUTPUT {OUTPUT}.{CHIP.NAME}              RAW       NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.SX        OUTPUT {OUTPUT}.{CHIP.NAME}.sx           SX        NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.OBJ       OUTPUT {OUTPUT}.{CHIP.NAME}.obj          OBJ       NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.CMP       OUTPUT {OUTPUT}.{CHIP.NAME}.cmp          CMP       NONE       CHIP       TRUE      NONE
+PSPHOT.OUT.CMF.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.cmf          CMF       NONE       CHIP       TRUE      SPLIT
+PSPHOT.OUT.CMF.MEF      OUTPUT {OUTPUT}.cmf                      CMF       NONE       CHIP       TRUE      MEF
+PSPHOT.PSF.RAW.SAVE     OUTPUT {OUTPUT}.psf                      PSF       NONE       CHIP       TRUE      MEF
+PSPHOT.PSF.SKY.SAVE     OUTPUT {OUTPUT}.psf                      PSF       NONE       CHIP       TRUE      MEF
+                                                                                     
+SOURCE.PLOT.MOMENTS     OUTPUT {OUTPUT}.mnt.png                  KAPA      NONE       FPA        TRUE      NONE
+SOURCE.PLOT.PSFMODEL    OUTPUT {OUTPUT}.psf.png                  KAPA      NONE       FPA        TRUE      NONE
+SOURCE.PLOT.APRESID     OUTPUT {OUTPUT}.dap.png                  KAPA      NONE       FPA        TRUE      NONE
+                                                                                     
+PSASTRO.OUTPUT.CMP      OUTPUT {OUTPUT}.{CHIP.NAME}.smp          CMP       NONE       CHIP       TRUE      NONE
+PSASTRO.OUT.CMF.SPL     OUTPUT {OUTPUT}.{CHIP.NAME}.smf          CMF       NONE       CHIP       TRUE      SPLIT
+PSASTRO.OUT.CMF.MEF     OUTPUT {OUTPUT}.smf                      CMF       NONE       FPA        TRUE      MEF
+PSASTRO.OUT.MODEL       OUTPUT {OUTPUT}.asm                ASTROM.MODEL    NONE       FPA        TRUE      NONE
+PSASTRO.OUT.REFSTARS    OUTPUT {OUTPUT}.aref.fits          ASTROM.REFSTARS NONE       FPA        TRUE      NONE
+PSASTRO.STATS           OUTPUT {OUTPUT}.stats                    STATS     NONE       FPA        TRUE      NONE
+PSASTRO.CONFIG          OUTPUT {OUTPUT}.psastro.mdc              TEXT      NONE       FPA        TRUE      NONE
+PSASTRO.OUTPUT.MASK     OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK      COMP_MASK  CHIP       TRUE      NONE
+                                                                                     
+PSWARP.OUTPUT           OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   FPA        TRUE      NONE
+PSWARP.OUTPUT.MASK      OUTPUT {OUTPUT}.mk.fits                  MASK      COMP_MASK  FPA        TRUE      NONE
+PSWARP.OUTPUT.VARIANCE  OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
+PSWARP.OUTPUT.SOURCES   OUTPUT {OUTPUT}.cmf                      CMF       NONE       FPA        TRUE      NONE
+PSWARP.BIN1             OUTPUT {OUTPUT}.b1.fits                  IMAGE     COMP_IMG   FPA        TRUE      NONE
+PSWARP.BIN2             OUTPUT {OUTPUT}.b2.fits                  IMAGE     COMP_IMG   FPA        TRUE      NONE
+PSWARP.CONFIG           OUTPUT {OUTPUT}.pswarp.mdc               TEXT      NONE       FPA        TRUE      NONE
+                                                                                     
+SKYCELL.STATS           OUTPUT {OUTPUT}.stats                    STATS     NONE       FPA        TRUE      NONE
+SKYCELL.TEMPLATE        OUTPUT {OUTPUT}.skycell                  SKYCELL   NONE       FPA        TRUE      NONE
+                                                                                     
+PPSUB.OUTPUT            OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSUB.OUTPUT.MASK       OUTPUT {OUTPUT}.mk.fits                  MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.OUTPUT.VARIANCE   OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSUB.OUTPUT.SOURCES    OUTPUT {OUTPUT}.cmf                      CMF       NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.KERNELS    OUTPUT {OUTPUT}.subkernel                SUBKERNEL NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG1      OUTPUT {OUTPUT}.b1.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG2      OUTPUT {OUTPUT}.b2.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSUB.INVERSE           OUTPUT {OUTPUT}.inv.fits                 IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSUB.INVERSE.MASK      OUTPUT {OUTPUT}.inv.mask.fits            MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.INVERSE.VARIANCE  OUTPUT {OUTPUT}.inv.wt.fits              VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSUB.INVERSE.SOURCES   OUTPUT {OUTPUT}.inv.cmf                  CMF       NONE       FPA        TRUE      NONE
+PPSUB.CONFIG            OUTPUT {OUTPUT}.ppSub.mdc                TEXT      NONE       FPA        TRUE      NONE
+PPSUB.INPUT.CONV        OUTPUT {OUTPUT}.inConv.fits              IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSUB.INPUT.CONV.MASK   OUTPUT {OUTPUT}.inConv.mk.fits           MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.INPUT.CONV.VARIANCE OUTPUT {OUTPUT}.inConv.wt.fits         VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSUB.REF.CONV        	OUTPUT {OUTPUT}.refConv.fits             IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSUB.REF.CONV.MASK   	OUTPUT {OUTPUT}.refConv.mk.fits          MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.REF.CONV.VARIANCE	OUTPUT {OUTPUT}.refConv.wt.fits          VARIANCE  COMP_WT    FPA        TRUE      NONE
+		      						       		     
+                                                                                     
+PPSTACK.OUTPUT          OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSTACK.OUTPUT.MASK     OUTPUT {OUTPUT}.mk.fits                  MASK      COMP_MASK  FPA        TRUE      NONE
+PPSTACK.OUTPUT.VARIANCE OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSTACK.TARGET.PSF      OUTPUT {OUTPUT}.target.psf               PSF       NONE       CHIP       TRUE      NONE
+PPSTACK.CONV.KERNEL     OUTPUT {OUTPUT}.{FILE.INDEX}.kernel      SUBKERNEL NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG1    OUTPUT {OUTPUT}.b1.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG2    OUTPUT {OUTPUT}.b2.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSTACK.CONFIG          OUTPUT {OUTPUT}.ppStack.mdc              TEXT      NONE       FPA        TRUE      NONE
+                                                                                     
+PPSTAMP.OUTPUT          OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   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.CHIP.MEF        OUTPUT {OUTPUT}.ch.fits                  IMAGE     NONE       CHIP       FALSE     MEF
+                                                                                     
+PPSIM.OUTPUT.MEF        OUTPUT {OUTPUT}.fits                     IMAGE     NONE       CHIP       TRUE      SPLIT
+PPSIM.OUTPUT.SPL        OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     NONE       CHIP       TRUE      SPLIT
+PPSIM.FAKE.CHIP         OUTPUT {OUTPUT}.fake.fits                IMAGE     NONE       FPA        TRUE      NONE
+PPSIM.FORCE.CHIP        OUTPUT {OUTPUT}.force.fits               IMAGE     NONE       FPA        TRUE      NONE
+PPSIM.SOURCES           OUTPUT {OUTPUT}.cmf                      CMF       NONE       FPA        TRUE      NONE
+PPSIM.FAKE.SOURCES      OUTPUT {OUTPUT}.fake.cmf                 CMF       NONE       FPA        TRUE      NONE
+PPSIM.FORCE.SOURCES     OUTPUT {OUTPUT}.force.cmf                CMF       NONE       FPA        TRUE      NONE
+                                                                                     
+PPARITH.OUTPUT.IMAGE    OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   CHIP       TRUE      NONE
+PPARITH.OUTPUT.MASK     OUTPUT {OUTPUT}.fits                     MASK      COMP_MASK  CHIP       TRUE      NONE
+                                                                                     
+PPSKYCELL.JPEG1    	OUTPUT {OUTPUT}.{FILE.INDEX}.b1.jpeg     JPEG      NONE       CHIP       TRUE      NONE
+PPSKYCELL.JPEG2    	OUTPUT {OUTPUT}.{FILE.INDEX}.b2.jpeg     JPEG      NONE       CHIP       TRUE      NONE
+
+LOG.IMFILE              OUTPUT {OUTPUT}.{CHIP.NAME}.log          TEXT      NONE       CHIP       TRUE      NONE
+LOG.EXP                 OUTPUT {OUTPUT}.log                      TEXT      NONE       FPA        TRUE      NONE
+                                                                                     
+TRACE.IMFILE            OUTPUT {OUTPUT}.{CHIP.NAME}.trace        TEXT      NONE       CHIP       TRUE      NONE
+TRACE.EXP               OUTPUT {OUTPUT}.trace                    TEXT      NONE       FPA        TRUE      NONE
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/filerules-simple.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/filerules-simple.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/filerules-simple.mdc	(revision 42661)
@@ -0,0 +1,225 @@
+### File rules for PHU=FPA, EXT=NONE
+### The default type of NONE means no compression
+
+
+PSASTRO.INPUT      STR PSASTRO.INPUT.CMF
+PSASTRO.OUTPUT     STR PSASTRO.OUTPUT.CMF
+PSPHOT.OUTPUT      STR PSPHOT.OUTPUT.CMF
+PSPHOT.PSF.SAVE    STR PSPHOT.PSF.RAW.SAVE
+
+### input file definitions
+### use @DETDB entries to get the detrend images from the database
+### replace @DETDB with @FILES if you want to require it from the 
+### command line, or with an explicit name to require a specific file
+TYPE                    INPUT    FILENAME.RULE DATA.LEVEL FILE.TYPE
+
+## files used by ppImage
+PPIMAGE.INPUT           INPUT    @FILES        FPA        IMAGE     
+PPIMAGE.INPUT.MASK      INPUT    @FILES        FPA        MASK      
+PPIMAGE.INPUT.VARIANCE  INPUT    @FILES        FPA        VARIANCE  
+PPIMAGE.INPUT.PSF       INPUT    @FILES        READOUT    PSF       
+PPIMAGE.INPUT.SRC       INPUT    @FILES        READOUT    CMF       
+PPIMAGE.MASK            INPUT    @DETDB        CHIP       MASK
+PPIMAGE.BIAS            INPUT    @DETDB        CHIP       IMAGE     
+PPIMAGE.DARK            INPUT    @DETDB        CHIP       DARK     
+PPIMAGE.FLAT            INPUT    @DETDB        CHIP       IMAGE     
+PPIMAGE.FRINGE          INPUT    @DETDB        CHIP       FRINGE
+PPIMAGE.SHUTTER         INPUT    @DETDB        CHIP       IMAGE     
+
+## Files used by ppMerge
+PPMERGE.INPUT           INPUT    @FILES        CHIP       IMAGE
+PPMERGE.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PPMERGE.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+
+## files used to build and apply the flat-field correction images
+DVOCORR.INPUT           INPUT    @FILES        CHIP       IMAGE
+DVOCORR.REFHEAD         INPUT    @FILES        CHIP       HEADER
+DVOFLAT.INPUT           INPUT    @FILES        CHIP       IMAGE
+DVOFLAT.CORR            INPUT    @DETDB        CHIP       IMAGE
+
+## files used by psphot 
+PSPHOT.LOAD             INPUT    @FILES        CHIP       IMAGE
+PSPHOT.INPUT            INPUT    @FILES        CHIP       IMAGE     
+PSPHOT.MASK             INPUT    @FILES        CHIP       MASK     
+PSPHOT.VARIANCE         INPUT    @FILES        CHIP       VARIANCE   
+PSPHOT.PSF.LOAD         INPUT    @FILES        CHIP       PSF       
+PSPHOT.INPUT.CMF        INPUT    @FILES        CHIP       CMF       
+
+## files used by psastro 
+PSASTRO.INPUT.CMP       INPUT    @FILES        CHIP       CMP       
+PSASTRO.INPUT.CMF       INPUT    @FILES        CHIP       CMF       
+PSASTRO.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PSASTRO.REFMASK         INPUT    @DETDB        CHIP       MASK
+PSASTRO.WCS             INPUT    @FILES        CHIP       CMF
+PSASTRO.MODEL           INPUT    @DETDB        FPA        ASTROM
+
+PSASTRO.EXTRACT.ASTROM  INPUT    @FILES        CHIP       CMF
+PSASTRO.EXTRACT.INPUT   INPUT    @FILES        CHIP       IMAGE
+
+## files used by pswarp
+PSWARP.INPUT            INPUT    @FILES        FPA        IMAGE     
+PSWARP.VARIANCE         INPUT    @FILES        FPA        VARIANCE
+PSWARP.MASK             INPUT    @FILES        FPA        MASK
+PSWARP.SKYCELL          INPUT    @FILES        FPA        IMAGE     
+PSWARP.ASTROM           INPUT    @FILES        FPA        CMF
+
+## files used by ppsub
+PPSUB.INPUT             INPUT    @FILES        FPA        IMAGE
+PPSUB.INPUT.MASK        INPUT    @FILES        FPA        MASK
+PPSUB.INPUT.VARIANCE    INPUT    @FILES        FPA        VARIANCE
+PPSUB.INPUT.SOURCES     INPUT    @FILES        FPA        CMF
+PPSUB.REF               INPUT    @FILES        FPA        IMAGE
+PPSUB.REF.MASK          INPUT    @FILES        FPA        MASK
+PPSUB.REF.VARIANCE      INPUT    @FILES        FPA        VARIANCE
+PPSUB.REF.SOURCES       INPUT    @FILES        FPA        CMF
+
+## files used by ppstack
+PPSTACK.INPUT           INPUT    @FILES        FPA        IMAGE
+PPSTACK.INPUT.MASK      INPUT    @FILES        FPA        MASK
+PPSTACK.INPUT.VARIANCE  INPUT    @FILES        FPA        VARIANCE
+PPSTACK.INPUT.PSF       INPUT    @FILES        CHIP       PSF
+PPSTACK.INPUT.SOURCES   INPUT    @FILES        FPA        CMF
+
+## files used by ppstamp
+PPSTAMP.INPUT           INPUT    @FILES        FPA        IMAGE
+PPSTAMP.INPUT.MASK      INPUT    @FILES        FPA        MASK
+PPSTAMP.INPUT.VARIANCE  INPUT    @FILES        FPA        VARIANCE
+
+# files used by pparith
+PPARITH.INPUT.IMAGE     INPUT    @FILES        CHIP       IMAGE
+PPARITH.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+
+PPSKYCELL.IMAGE      	INPUT 	 @FILES        CHIP       IMAGE
+PPSKYCELL.MASK      	INPUT 	 @FILES        CHIP       MASK
+
+PPSIM.INPUT             INPUT    @FILES        FPA        IMAGE     
+PPSIM.REAL.SOURCES      INPUT    @FILES        CHIP       CMF       
+
+### output file definitions
+TYPE                    OUTPUT FILENAME.RULE         FILE.TYPE FITS.TYPE  DATA.LEVEL FILE.SAVE FILE.FORMAT
+PPIMAGE.OUTPUT          OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.MASK     OUTPUT {OUTPUT}.mk.fits      MASK      NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.VARIANCE OUTPUT {OUTPUT}.wt.fits      VARIANCE  NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.DETMASK  OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.DETREND  OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.RESID    OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      SIMPLE
+PPIMAGE.CONFIG          OUTPUT {OUTPUT}.ppImage.mdc  TEXT      NONE       FPA        TRUE      NONE
+                                                     
+PPIMAGE.CHIP            OUTPUT {OUTPUT}.ch.fits      IMAGE     NONE       FPA        TRUE      SIMPLE
+PPIMAGE.CHIP.MASK       OUTPUT {OUTPUT}.ch.mk.fits   MASK      NONE       FPA        TRUE      SIMPLE
+PPIMAGE.CHIP.VARIANCE   OUTPUT {OUTPUT}.ch.wt.fits   VARIANCE  NONE       FPA        TRUE      SIMPLE
+                                                     
+PPIMAGE.OUTPUT.FPA1     OUTPUT {OUTPUT}.b1.fits      IMAGE     NONE       FPA        TRUE      SIMPLE
+PPIMAGE.OUTPUT.FPA2     OUTPUT {OUTPUT}.b2.fits      IMAGE     NONE       FPA        TRUE      SIMPLE
+                                                     
+PPIMAGE.BIN1            OUTPUT {OUTPUT}.b1.fits      IMAGE     NONE       FPA        TRUE      SIMPLE
+PPIMAGE.BIN2            OUTPUT {OUTPUT}.b2.fits      IMAGE     NONE       FPA        TRUE      SIMPLE
+                                                     
+PPIMAGE.JPEG1           OUTPUT {OUTPUT}.b1.jpg       JPEG      NONE       FPA        TRUE      NONE
+PPIMAGE.JPEG2           OUTPUT {OUTPUT}.b2.jpg       JPEG      NONE       FPA        TRUE      NONE
+                                                     
+PPIMAGE.STATS           OUTPUT {OUTPUT}.stats        STATS     NONE       FPA        TRUE      NONE
+
+
+## note: these use the  same output naming convention since they are used for different ppMerge runs
+PPMERGE.OUTPUT.MASK     OUTPUT {OUTPUT}.fits         MASK      NONE       FPA        TRUE      SIMPLE
+PPMERGE.OUTPUT.BIAS     OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      SIMPLE
+PPMERGE.OUTPUT.DARK     OUTPUT {OUTPUT}.fits         DARK      NONE       FPA        TRUE      SIMPLE
+PPMERGE.OUTPUT.SHUTTER  OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      SIMPLE
+PPMERGE.OUTPUT.FLAT     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
+PPMERGE.OUTPUT.COUNT    OUTPUT {OUTPUT}.count.fits   IMAGE     NONE       FPA        TRUE      SIMPLE
+                                                     
+DVOCORR.OUTPUT          OUTPUT {OUTPUT}.fc.fits      IMAGE     NONE       FPA        TRUE      SIMPLE
+DVOFLAT.OUTPUT          OUTPUT {OUTPUT}.co.fits      IMAGE     NONE       FPA        TRUE      SIMPLE
+                                                     
+PSPHOT.RESID            OUTPUT {OUTPUT}.res.fits     IMAGE     NONE       FPA        TRUE      SIMPLE
+PSPHOT.BACKGND          OUTPUT {OUTPUT}.bck.fits     IMAGE     NONE       FPA        TRUE      SIMPLE
+PSPHOT.BACKSUB          OUTPUT {OUTPUT}.sub.fits     IMAGE     NONE       FPA        TRUE      SIMPLE
+PSPHOT.BACKMDL          OUTPUT {OUTPUT}.mdl.fits     IMAGE     NONE       FPA        TRUE      SIMPLE
+PSPHOT.BACKMDL.MEF      OUTPUT {OUTPUT}.mdl.fits     IMAGE     NONE       FPA        TRUE      SIMPLE
+                                                     
+PSPHOT.OUTPUT.RAW       OUTPUT {OUTPUT}              RAW       NONE       FPA        TRUE      NONE
+PSPHOT.OUTPUT.SX        OUTPUT {OUTPUT}.sx           SX        NONE       FPA        TRUE      NONE
+PSPHOT.OUTPUT.OBJ       OUTPUT {OUTPUT}.obj          OBJ       NONE       FPA        TRUE      NONE
+PSPHOT.OUTPUT.CMP       OUTPUT {OUTPUT}.cmp          CMP       NONE       FPA        TRUE      NONE
+PSPHOT.OUTPUT.CMF       OUTPUT {OUTPUT}.cmf          CMF       NONE       CHIP       TRUE      NONE
+PSPHOT.OUT.CMF.MEF      OUTPUT {OUTPUT}.cmf          CMF       NONE       CHIP       TRUE      NONE
+PSPHOT.PSF.RAW.SAVE     OUTPUT {OUTPUT}.psf          PSF       NONE       FPA        TRUE      NONE
+PSPHOT.PSF.SKY.SAVE     OUTPUT {OUTPUT}.psf          PSF       NONE       FPA        TRUE      NONE
+                                                     
+SOURCE.PLOT.MOMENTS     OUTPUT {OUTPUT}.mnt.png      KAPA      NONE       FPA        TRUE      NONE
+SOURCE.PLOT.PSFMODEL    OUTPUT {OUTPUT}.psf.png      KAPA      NONE       FPA        TRUE      NONE
+SOURCE.PLOT.APRESID     OUTPUT {OUTPUT}.dap.png      KAPA      NONE       FPA        TRUE      NONE
+                                                     
+PSASTRO.OUTPUT.CMP      OUTPUT {OUTPUT}.smp          CMP       NONE       FPA        TRUE      NONE
+PSASTRO.OUTPUT.CMF      OUTPUT {OUTPUT}.smf          CMF       NONE       FPA        TRUE      NONE
+PSASTRO.OUT.MODEL       OUTPUT {OUTPUT}.asm          ASTROM.MODEL    NONE FPA        TRUE      NONE
+PSASTRO.OUT.REFSTARS    OUTPUT {OUTPUT}.aref.fits    ASTROM.REFSTARS NONE FPA        TRUE      NONE
+PSASTRO.STATS           OUTPUT {OUTPUT}.stats        STATS     NONE       FPA        TRUE      NONE
+PSASTRO.CONFIG          OUTPUT {OUTPUT}.psastro.mdc  TEXT      NONE       FPA        TRUE      NONE
+PSASTRO.OUTPUT.MASK     OUTPUT {OUTPUT}.mk.fits      MASK      COMP_MASK  CHIP       TRUE      NONE
+                                                     
+PSWARP.OUTPUT           OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      NONE
+PSWARP.OUTPUT.MASK      OUTPUT {OUTPUT}.mask.fits    MASK      NONE       FPA        TRUE      NONE
+PSWARP.OUTPUT.VARIANCE  OUTPUT {OUTPUT}.wt.fits      VARIANCE  NONE       FPA        TRUE      NONE
+PSWARP.OUTPUT.SOURCES   OUTPUT {OUTPUT}.cmf          CMF       NONE       FPA        TRUE      NONE
+PSWARP.BIN1             OUTPUT {OUTPUT}.b1.fits      IMAGE     NONE       FPA        TRUE      NONE
+PSWARP.BIN2             OUTPUT {OUTPUT}.b2.fits      IMAGE     NONE       FPA        TRUE      NONE
+PSWARP.CONFIG           OUTPUT {OUTPUT}.pswarp.mdc   TEXT      NONE       FPA        TRUE      NONE
+                                                     
+SKYCELL.STATS           OUTPUT {OUTPUT}.stats        STATS     NONE       FPA        TRUE      NONE
+SKYCELL.TEMPLATE        OUTPUT {OUTPUT}.skycell      SKYCELL   NONE       FPA        TRUE      NONE
+                                                     
+PPSUB.OUTPUT            OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.MASK       OUTPUT {OUTPUT}.mask.fits    MASK      NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.VARIANCE   OUTPUT {OUTPUT}.wt.fits      VARIANCE  NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.SOURCES    OUTPUT {OUTPUT}.cmf          CMF       NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.KERNELS    OUTPUT {OUTPUT}.subkernel    SUBKERNEL NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG1      OUTPUT {OUTPUT}.b1.jpg       JPEG      NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG2      OUTPUT {OUTPUT}.b2.jpg       JPEG      NONE       FPA        TRUE      NONE
+PPSUB.INVERSE           OUTPUT {OUTPUT}.inv.fits     IMAGE     NONE       FPA        TRUE      NONE
+PPSUB.INVERSE.MASK      OUTPUT {OUTPUT}.inv.mask.fits MASK     NONE       FPA        TRUE      NONE
+PPSUB.INVERSE.VARIANCE  OUTPUT {OUTPUT}.inv.wt.fits  VARIANCE  NONE       FPA        TRUE      NONE
+PPSUB.INVERSE.SOURCES   OUTPUT {OUTPUT}.inv.cmf      CMF       NONE       FPA        TRUE      NONE
+PPSUB.CONFIG            OUTPUT {OUTPUT}.ppSub.mdc    TEXT      NONE       FPA        TRUE      NONE
+PPSUB.INPUT.CONV        OUTPUT {OUTPUT}.inConv.fits     IMAGE  COMP_SUB   FPA        TRUE      NONE
+PPSUB.INPUT.CONV.MASK   OUTPUT {OUTPUT}.inConv.mk.fits  MASK   COMP_MASK  FPA        TRUE      NONE
+PPSUB.INPUT.CONV.VARIANCE OUTPUT {OUTPUT}.inConv.wt.fits VARIANCE COMP_WT FPA        TRUE      NONE
+PPSUB.REF.CONV        	OUTPUT {OUTPUT}.refConv.fits    IMAGE  COMP_SUB   FPA        TRUE      NONE
+PPSUB.REF.CONV.MASK   	OUTPUT {OUTPUT}.refConv.mk.fits MASK   COMP_MASK  FPA        TRUE      NONE
+PPSUB.REF.CONV.VARIANCE OUTPUT {OUTPUT}.refConv.wt.fits VARIANCE COMP_WT  FPA        TRUE      NONE
+					     
+PPSTACK.OUTPUT          OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.MASK     OUTPUT {OUTPUT}.mask.fits    MASK      NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.VARIANCE OUTPUT {OUTPUT}.weight.fits  VARIANCE  NONE       FPA        TRUE      NONE
+PPSTACK.TARGET.PSF      OUTPUT {OUTPUT}.target.psf   PSF       NONE       CHIP       TRUE      NONE
+PPSTACK.CONV.KERNEL     OUTPUT {OUTPUT}.{FILE.INDEX}.kernel SUBKERNEL NONE FPA       TRUE      NONE
+PPSTACK.OUTPUT.JPEG1    OUTPUT {OUTPUT}.b1.jpg       JPEG      NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG2    OUTPUT {OUTPUT}.b2.jpg       JPEG      NONE       FPA        TRUE      NONE
+PPSTACK.CONFIG          OUTPUT {OUTPUT}.ppStack.mdc  TEXT      NONE       FPA        TRUE      NONE
+                                             
+PPSTAMP.OUTPUT          OUTPUT {OUTPUT}.fits         IMAGE     COMP_IMG   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.CHIP            OUTPUT {OUTPUT}.ch.fits      IMAGE     NONE       CHIP       FALSE     NONE
+                                                     
+PPSIM.OUTPUT            OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      SPLIT
+PPSIM.FAKE.CHIP         OUTPUT {OUTPUT}.fake.fits    IMAGE     NONE       FPA        TRUE      SIMPLE
+PPSIM.FORCE.CHIP        OUTPUT {OUTPUT}.force.fits   IMAGE     NONE       FPA        TRUE      SIMPLE
+PPSIM.SOURCES           OUTPUT {OUTPUT}.cmf          CMF       NONE       FPA        TRUE      NONE
+PPSIM.FAKE.SOURCES      OUTPUT {OUTPUT}.fake.cmf     CMF       NONE       FPA        TRUE      NONE
+PPSIM.FORCE.SOURCES     OUTPUT {OUTPUT}.force.cmf    CMF       NONE       FPA        TRUE      NONE
+                                                     
+PPARITH.OUTPUT.IMAGE    OUTPUT {OUTPUT}.fits         IMAGE     NONE       FPA        TRUE      SIMPLE
+PPARITH.OUTPUT.MASK     OUTPUT {OUTPUT}.fits         MASK      NONE       FPA        TRUE      SIMPLE
+
+PPSKYCELL.JPEG1    	OUTPUT {OUTPUT}.{FILE.INDEX}.b1.jpeg JPEG NONE    CHIP       TRUE      NONE
+PPSKYCELL.JPEG2    	OUTPUT {OUTPUT}.{FILE.INDEX}.b2.jpeg JPEG NONE    CHIP       TRUE      NONE
+
+LOG.IMFILE              OUTPUT {OUTPUT}.imfile.log   TEXT      NONE       FPA        TRUE      NONE
+LOG.EXP                 OUTPUT {OUTPUT}.exp.log      TEXT      NONE       FPA        TRUE      NONE
+
+TRACE.IMFILE            OUTPUT {OUTPUT}.imfile.trace TEXT      NONE       FPA        TRUE      NONE
+TRACE.EXP               OUTPUT {OUTPUT}.exp.trace    TEXT      NONE       FPA        TRUE      NONE
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/filerules-split.mdc
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/filerules-split.mdc	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/filerules-split.mdc	(revision 42661)
@@ -0,0 +1,259 @@
+### File rules for PHU=CHIP, EXT=CELL (eg, GPC1)
+### this file specifies compression types for various output files
+### The default type of NONE means no compression
+
+# for basic chip analysis, psphot should produce SPLIT output
+# for basic camera analysis, psastro should produce MEF output
+PSPHOT.OUTPUT        STR PSPHOT.OUT.CMF.SPL
+PSASTRO.INPUT        STR PSASTRO.INPUT.CMF
+PSPHOT.PSF.SAVE      STR PSPHOT.PSF.RAW.SAVE
+
+SOURCE.PLOT.MOMENTS  STR SOURCE.PLOT.RAW.MOMENTS
+SOURCE.PLOT.PSFMODEL STR SOURCE.PLOT.RAW.PSFMODEL
+SOURCE.PLOT.APRESID  STR SOURCE.PLOT.RAW.APRESID
+
+# PSASTRO.OUTPUT     STR PSASTRO.OUT.CMF.MEF
+# PSASTRO.OUTPUT.SPL STR PSASTRO.OUT.CMF.SPL
+# PSASTRO.OUTPUT.MEF STR PSASTRO.OUT.CMF.MEF
+
+### input file definitions
+### use @DETDB entries to get the detrend images from the database
+### replace @DETDB with @FILES if you want to require it from the 
+### command line, or with an explicit name to require a specific file
+TYPE                    INPUT    FILENAME.RULE DATA.LEVEL FILE.TYPE
+
+## files used by ppImage
+PPIMAGE.INPUT           INPUT    @FILES        CHIP       IMAGE
+PPIMAGE.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PPIMAGE.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+PPIMAGE.INPUT.PSF       INPUT    @FILES        CHIP       PSF
+PPIMAGE.INPUT.SRC       INPUT    @FILES        CHIP       CMF
+PPIMAGE.MASK            INPUT    @DETDB        CHIP       MASK
+PPIMAGE.BIAS            INPUT    @DETDB        CHIP       IMAGE
+PPIMAGE.DARK            INPUT    @DETDB        CHIP       DARK
+PPIMAGE.FLAT            INPUT    @DETDB        CHIP       IMAGE
+PPIMAGE.FRINGE     	INPUT 	 @DETDB        CHIP       FRINGE
+PPIMAGE.SHUTTER         INPUT    @DETDB        CHIP       IMAGE
+
+## Files used by ppMerge
+PPMERGE.INPUT           INPUT    @FILES        CHIP       IMAGE
+PPMERGE.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PPMERGE.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+
+## files used to build and apply the flat-field correction images
+DVOCORR.INPUT      	INPUT 	 @FILES        CHIP       IMAGE
+DVOCORR.REFHEAD    	INPUT 	 @FILES        CHIP       HEADER
+DVOFLAT.INPUT      	INPUT 	 @FILES        CHIP       IMAGE
+DVOFLAT.CORR       	INPUT 	 @DETDB        CHIP       IMAGE
+
+## files used by psphot
+PSPHOT.LOAD             INPUT    @FILES        CHIP       IMAGE
+PSPHOT.INPUT            INPUT    @FILES        CHIP       IMAGE
+PSPHOT.MASK             INPUT    @FILES        CHIP       MASK     
+PSPHOT.VARIANCE         INPUT    @FILES        CHIP       VARIANCE     
+PSPHOT.PSF.LOAD         INPUT    @FILES        CHIP       PSF       
+PSPHOT.INPUT.CMF        INPUT    @FILES        CHIP       CMF       
+
+## files used by psastro 
+PSASTRO.INPUT.CMP       INPUT    @FILES        CHIP       CMP
+PSASTRO.INPUT.CMF       INPUT    @FILES        CHIP       CMF
+PSASTRO.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PSASTRO.REFMASK         INPUT    @DETDB        CHIP       MASK
+PSASTRO.WCS             INPUT    @FILES        CHIP       WCS
+PSASTRO.MODEL           INPUT    @DETDB        FPA        ASTROM
+
+PSASTRO.EXTRACT.ASTROM  INPUT    @FILES        CHIP       CMF
+PSASTRO.EXTRACT.INPUT   INPUT    @FILES        CHIP       IMAGE
+
+## files used by pswarp
+PSWARP.INPUT            INPUT    @FILES        CHIP       IMAGE
+PSWARP.VARIANCE         INPUT    @FILES        CHIP       VARIANCE
+PSWARP.MASK             INPUT    @FILES        CHIP       MASK
+PSWARP.SKYCELL          INPUT    @FILES        FPA        IMAGE
+PSWARP.ASTROM           INPUT    @FILES        CHIP       CMF
+
+## files used by ppsub
+PPSUB.INPUT             INPUT    @FILES        FPA        IMAGE
+PPSUB.INPUT.MASK        INPUT    @FILES        FPA        MASK
+PPSUB.INPUT.VARIANCE    INPUT    @FILES        FPA        VARIANCE
+PPSUB.INPUT.SOURCES    	INPUT 	 @FILES        FPA        CMF
+PPSUB.REF               INPUT    @FILES        FPA        IMAGE
+PPSUB.REF.MASK          INPUT    @FILES        FPA        MASK
+PPSUB.REF.VARIANCE      INPUT    @FILES        FPA        VARIANCE
+PPSUB.REF.SOURCES    	INPUT 	 @FILES        FPA        CMF
+
+## files used by ppstack
+PPSTACK.INPUT           INPUT    @FILES        FPA        IMAGE
+PPSTACK.INPUT.MASK      INPUT    @FILES        FPA        MASK
+PPSTACK.INPUT.VARIANCE  INPUT    @FILES        FPA        VARIANCE
+PPSTACK.INPUT.PSF  	INPUT 	 @FILES        CHIP       PSF
+PPSTACK.INPUT.SOURCES   INPUT    @FILES        FPA        CMF
+
+## files used by ppstamp
+PPSTAMP.INPUT           INPUT    @FILES        CHIP       IMAGE
+PPSTAMP.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+PPSTAMP.INPUT.VARIANCE  INPUT    @FILES        CHIP       VARIANCE
+
+# files used by pparith
+PPARITH.INPUT.IMAGE     INPUT    @FILES        CHIP       IMAGE
+PPARITH.INPUT.MASK      INPUT    @FILES        CHIP       MASK
+
+PPSKYCELL.IMAGE      	INPUT 	 @FILES        CHIP       IMAGE
+PPSKYCELL.MASK      	INPUT 	 @FILES        CHIP       MASK
+
+PPSIM.INPUT             INPUT    @FILES        CHIP       IMAGE     
+PPSIM.REAL.SOURCES      INPUT    @FILES        CHIP       CMF       
+
+### output file definitions
+TYPE                    OUTPUT FILENAME.RULE                     FILE.TYPE FITS.TYPE  DATA.LEVEL FILE.SAVE FILE.FORMAT
+PPIMAGE.OUTPUT          OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     COMP_IMG   CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.MASK     OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK      COMP_MASK  CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.VARIANCE OUTPUT {OUTPUT}.{CHIP.NAME}.wt.fits      VARIANCE  COMP_WT    CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.DETMASK  OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     DET_MASK   CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.DETREND  OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     COMP_DET   CHIP       TRUE      NONE
+PPIMAGE.OUTPUT.RESID    OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     COMP_SUB   CHIP       TRUE      NONE
+PPIMAGE.CONFIG          OUTPUT {OUTPUT}.{CHIP.NAME}.ppImage.mdc  TEXT      NONE       CHIP       TRUE      NONE
+	        									        
+PPIMAGE.CHIP            OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE     COMP_IMG   CHIP       TRUE      NONE
+PPIMAGE.CHIP.DETMASK    OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE     NONE       CHIP       TRUE      NONE
+PPIMAGE.CHIP.MASK       OUTPUT {OUTPUT}.{CHIP.NAME}.ch.mk.fits   MASK      COMP_MASK  CHIP       TRUE      NONE
+PPIMAGE.CHIP.VARIANCE   OUTPUT {OUTPUT}.{CHIP.NAME}.ch.wt.fits   VARIANCE  COMP_WT    CHIP       TRUE      NONE
+PPIMAGE.CHIP.RESID      OUTPUT {OUTPUT}.{CHIP.NAME}.ch.fits      IMAGE     COMP_SUB   CHIP       TRUE      NONE
+		        									        
+PPIMAGE.OUTPUT.FPA1     OUTPUT {OUTPUT}.b1.fits                  IMAGE     NONE       FPA        TRUE      NONE
+PPIMAGE.OUTPUT.FPA2     OUTPUT {OUTPUT}.b2.fits                  IMAGE     NONE       FPA        TRUE      NONE
+		        									        
+PPIMAGE.BIN1            OUTPUT {OUTPUT}.{CHIP.NAME}.b1.fits      IMAGE     NONE       CHIP       TRUE      NONE
+PPIMAGE.BIN2            OUTPUT {OUTPUT}.{CHIP.NAME}.b2.fits      IMAGE     NONE       CHIP       TRUE      NONE
+		        									        
+PPIMAGE.JPEG1           OUTPUT {OUTPUT}.b1.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPIMAGE.JPEG2           OUTPUT {OUTPUT}.b2.jpg                   JPEG      NONE       FPA        TRUE      NONE
+
+PPIMAGE.STATS           OUTPUT {OUTPUT}.{CHIP.NAME}.stats        STATS     NONE       CHIP       TRUE      NONE
+
+## note: these use the  same output naming convention since they are used for different ppMerge runs
+PPMERGE.OUTPUT.MASK     OUTPUT {OUTPUT}.{CHIP.NAME}.fits         MASK      DET_MASK   CHIP       TRUE      NONE
+PPMERGE.OUTPUT.BIAS     OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.DARK     OUTPUT {OUTPUT}.{CHIP.NAME}.fits         DARK      NONE       CHIP       TRUE      NONE
+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.FRINGE   OUTPUT {OUTPUT}.{CHIP.NAME}.fits         FRINGE    NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.SIGMA    OUTPUT {OUTPUT}.{CHIP.NAME}.sigma.fits   IMAGE     NONE       CHIP       TRUE      NONE
+PPMERGE.OUTPUT.COUNT    OUTPUT {OUTPUT}.{CHIP.NAME}.count.fits   IMAGE     NONE       CHIP       TRUE      NONE
+		        									        
+DVOCORR.OUTPUT          OUTPUT {OUTPUT}.{CHIP.NAME}.fc.fits      IMAGE     NONE       CHIP       TRUE      NONE
+DVOFLAT.OUTPUT          OUTPUT {OUTPUT}.{CHIP.NAME}.co.fits      IMAGE     NONE       CHIP       TRUE      NONE
+		        									        
+PSPHOT.RESID            OUTPUT {OUTPUT}.{CHIP.NAME}.res.fits     IMAGE     COMP_SUB   CHIP       TRUE      NONE
+PSPHOT.BACKGND          OUTPUT {OUTPUT}.{CHIP.NAME}.bck.fits     IMAGE     COMP_IMG   CHIP       TRUE      NONE
+PSPHOT.BACKSUB          OUTPUT {OUTPUT}.{CHIP.NAME}.sub.fits     IMAGE     COMP_SUB   CHIP       TRUE      NONE
+PSPHOT.BACKMDL          OUTPUT {OUTPUT}.{CHIP.NAME}.mdl.fits     IMAGE     COMP_IMG   CHIP       TRUE      NONE
+PSPHOT.BACKMDL.MEF      OUTPUT {OUTPUT}.mdl.fits                 IMAGE     COMP_IMG   CHIP       TRUE      NONE
+		        									        
+PSPHOT.OUTPUT.RAW       OUTPUT {OUTPUT}.{CHIP.NAME}              RAW       NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.SX        OUTPUT {OUTPUT}.{CHIP.NAME}.sx           SX        NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.OBJ       OUTPUT {OUTPUT}.{CHIP.NAME}.obj          OBJ       NONE       CHIP       TRUE      NONE
+PSPHOT.OUTPUT.CMP       OUTPUT {OUTPUT}.{CHIP.NAME}.cmp          CMP       NONE       CHIP       TRUE      NONE
+PSPHOT.OUT.CMF.SPL      OUTPUT {OUTPUT}.{CHIP.NAME}.cmf          CMF       NONE       CHIP       TRUE      NONE
+PSPHOT.OUT.CMF.MEF      OUTPUT {OUTPUT}.cmf                      CMF       NONE       FPA        TRUE      MEF
+PSPHOT.PSF.RAW.SAVE     OUTPUT {OUTPUT}.{CHIP.NAME}.psf          PSF       NONE       CHIP       TRUE      MEF
+PSPHOT.PSF.SKY.SAVE     OUTPUT {OUTPUT}.psf          		 PSF       NONE       FPA        TRUE      MEF
+		        									        
+SOURCE.PLOT.RAW.MOMENTS  OUTPUT {OUTPUT}.{CHIP.NAME}.mnt.png      KAPA      NONE       CHIP       TRUE      NONE
+SOURCE.PLOT.RAW.PSFMODEL OUTPUT {OUTPUT}.{CHIP.NAME}.psf.png      KAPA      NONE       CHIP       TRUE      NONE
+SOURCE.PLOT.RAW.APRESID  OUTPUT {OUTPUT}.{CHIP.NAME}.dap.png      KAPA      NONE       CHIP       TRUE      NONE
+		        									        
+SOURCE.PLOT.SKY.MOMENTS  OUTPUT {OUTPUT}.mnt.png      KAPA      NONE       CHIP       TRUE      NONE
+SOURCE.PLOT.SKY.PSFMODEL OUTPUT {OUTPUT}.psf.png      KAPA      NONE       CHIP       TRUE      NONE
+SOURCE.PLOT.SKY.APRESID  OUTPUT {OUTPUT}.dap.png      KAPA      NONE       CHIP       TRUE      NONE
+
+# PSASTRO.OUTPUT.CMP      OUTPUT {OUTPUT}.{CHIP.NAME}.smp          CMP       NONE       CHIP       TRUE      NONE
+# PSASTRO.OUT.CMF.SPL     OUTPUT {OUTPUT}.{CHIP.NAME}.smf          CMF       NONE       CHIP       TRUE      NONE
+# PSASTRO.OUT.CMF.MEF     OUTPUT {OUTPUT}.smf                      CMF       NONE       FPA        TRUE      MEF
+PSASTRO.OUT.MODEL       OUTPUT {OUTPUT}.asm               ASTROM.MODEL     NONE       FPA        TRUE      NONE
+PSASTRO.OUT.REFSTARS    OUTPUT {OUTPUT}.aref.fits         ASTROM.REFSTARS  NONE       FPA        TRUE      NONE
+PSASTRO.OUTPUT          OUTPUT {OUTPUT}.smf                      CMF       NONE       FPA        TRUE      MEF
+PSASTRO.STATS           OUTPUT {OUTPUT}.stats                    STATS     NONE       FPA        TRUE      NONE
+PSASTRO.CONFIG          OUTPUT {OUTPUT}.psastro.mdc              TEXT      NONE       FPA        TRUE      NONE
+PSASTRO.OUTPUT.MASK     OUTPUT {OUTPUT}.{CHIP.NAME}.mk.fits      MASK      COMP_MASK  CHIP       TRUE      NONE
+		        									        
+PSWARP.OUTPUT           OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   FPA        TRUE      NONE
+PSWARP.OUTPUT.MASK      OUTPUT {OUTPUT}.mask.fits                MASK      COMP_MASK  FPA        TRUE      NONE
+PSWARP.OUTPUT.VARIANCE  OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
+PSWARP.OUTPUT.SOURCES   OUTPUT {OUTPUT}.cmf                      CMF       NONE       FPA        TRUE      NONE
+PSWARP.BIN1             OUTPUT {OUTPUT}.b1.fits                  IMAGE     NONE       FPA        TRUE      NONE
+PSWARP.BIN2             OUTPUT {OUTPUT}.b2.fits                  IMAGE     NONE       FPA        TRUE      NONE
+PSWARP.CONFIG           OUTPUT {OUTPUT}.pswarp.mdc               TEXT      NONE       FPA        TRUE      NONE
+		        									        
+SKYCELL.STATS           OUTPUT {OUTPUT}.stats                    STATS     NONE       FPA        TRUE      NONE
+SKYCELL.TEMPLATE        OUTPUT {OUTPUT}.skycell                  SKYCELL   NONE       FPA        TRUE      NONE
+		        									        
+PPSUB.OUTPUT            OUTPUT {OUTPUT}.fits                     IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSUB.OUTPUT.MASK       OUTPUT {OUTPUT}.mask.fits                MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.OUTPUT.VARIANCE   OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSUB.OUTPUT.SOURCES    OUTPUT {OUTPUT}.cmf                      CMF       NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.KERNELS    OUTPUT {OUTPUT}.subkernel                SUBKERNEL NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG1      OUTPUT {OUTPUT}.b1.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSUB.OUTPUT.JPEG2      OUTPUT {OUTPUT}.b2.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSUB.INVERSE           OUTPUT {OUTPUT}.inv.fits                 IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSUB.INVERSE.MASK      OUTPUT {OUTPUT}.inv.mask.fits            MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.INVERSE.VARIANCE  OUTPUT {OUTPUT}.inv.wt.fits              VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSUB.INVERSE.SOURCES   OUTPUT {OUTPUT}.inv.cmf                  CMF       NONE       FPA        TRUE      NONE
+PPSUB.CONFIG            OUTPUT {OUTPUT}.ppSub.mdc                TEXT      NONE       FPA        TRUE      NONE
+PPSUB.INPUT.CONV        OUTPUT {OUTPUT}.inConv.fits              IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSUB.INPUT.CONV.MASK   OUTPUT {OUTPUT}.inConv.mk.fits           MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.INPUT.CONV.VARIANCE OUTPUT {OUTPUT}.inConv.wt.fits         VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSUB.REF.CONV          OUTPUT {OUTPUT}.refConv.fits             IMAGE     COMP_SUB   FPA        TRUE      NONE
+PPSUB.REF.CONV.MASK     OUTPUT {OUTPUT}.refConv.mk.fits          MASK      COMP_MASK  FPA        TRUE      NONE
+PPSUB.REF.CONV.VARIANCE OUTPUT {OUTPUT}.refConv.wt.fits          VARIANCE  COMP_WT    FPA        TRUE      NONE
+											        
+PPSTACK.OUTPUT          OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   FPA        TRUE      NONE
+PPSTACK.OUTPUT.MASK     OUTPUT {OUTPUT}.mask.fits                MASK      COMP_MASK  FPA        TRUE      NONE
+PPSTACK.OUTPUT.VARIANCE OUTPUT {OUTPUT}.wt.fits                  VARIANCE  COMP_WT    FPA        TRUE      NONE
+PPSTACK.TARGET.PSF      OUTPUT {OUTPUT}.target.psf               PSF       NONE       CHIP       TRUE      NONE
+PPSTACK.CONV.KERNEL     OUTPUT {OUTPUT}.{FILE.INDEX}.kernel      SUBKERNEL NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG1	OUTPUT {OUTPUT}.b1.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSTACK.OUTPUT.JPEG2	OUTPUT {OUTPUT}.b2.jpg                   JPEG      NONE       FPA        TRUE      NONE
+PPSTACK.CONFIG          OUTPUT {OUTPUT}.ppStack.mdc              TEXT      NONE       FPA        TRUE      NONE
+
+PPSTAMP.OUTPUT          OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   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.CHIP            OUTPUT {OUTPUT}.ch.fits                  IMAGE     NONE       CHIP       FALSE     MEF
+		        									        
+PPSIM.OUTPUT            OUTPUT {OUTPUT}.{CHIP.NAME}.fits         IMAGE     NONE       CHIP       TRUE      SPLIT
+PPSIM.FAKE.CHIP        	OUTPUT {OUTPUT}.{CHIP.NAME}.fake.fits    IMAGE     NONE       CHIP       TRUE      NONE
+PPSIM.FORCE.CHIP       	OUTPUT {OUTPUT}.{CHIP.NAME}.force.fits   IMAGE     NONE       CHIP       TRUE      NONE
+PPSIM.SOURCES           OUTPUT {OUTPUT}.{CHIP.NAME}.cmf          CMF       NONE       CHIP       TRUE      NONE
+PPSIM.FAKE.SOURCES     	OUTPUT {OUTPUT}.{CHIP.NAME}.fake.cmf     CMF       NONE       CHIP       TRUE      NONE
+PPSIM.FORCE.SOURCES    	OUTPUT {OUTPUT}.{CHIP.NAME}.force.cmf    CMF       NONE       CHIP       TRUE      NONE
+
+PPARITH.OUTPUT.IMAGE   	OUTPUT {OUTPUT}.fits                     IMAGE     COMP_IMG   CHIP       TRUE      NONE
+PPARITH.OUTPUT.MASK    	OUTPUT {OUTPUT}.fits                     MASK      COMP_MASK  CHIP       TRUE      NONE
+		       										        
+PPSKYCELL.JPEG1    	OUTPUT {OUTPUT}.{FILE.INDEX}.b1.jpeg     JPEG      NONE       CHIP       TRUE      NONE
+PPSKYCELL.JPEG2    	OUTPUT {OUTPUT}.{FILE.INDEX}.b2.jpeg     JPEG      NONE       CHIP       TRUE      NONE
+
+LOG.IMFILE             	OUTPUT {OUTPUT}.{CHIP.NAME}.log          TEXT      NONE       CHIP       TRUE      NONE
+LOG.EXP                	OUTPUT {OUTPUT}.log                      TEXT      NONE       FPA        TRUE      NONE
+		       										        
+TRACE.IMFILE           	OUTPUT {OUTPUT}.{CHIP.NAME}.trace        TEXT      NONE       CHIP       TRUE      NONE
+TRACE.EXP              	OUTPUT {OUTPUT}.trace                    TEXT      NONE       FPA        TRUE      NONE
+
+
+# {FPA.OBS}
+# {FPA.NAME}
+# {CHIP.NAME}
+# {CHIP.ID}
+# {CHIP.N}
+# {CHIP.NUM}
+# {CELL.NAME}
+# {CELL.N}
+# {CELL.NUM}
+# {EXTNAME}
+# {FILTER}
+# {FILTER.ID}
+# {CAMERA}
+# {INSTRUMENT}
+# {DETECTOR}
+# {TELESCOPE}
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/format_split.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/format_split.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/format_split.config	(revision 42661)
@@ -0,0 +1,128 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	SimScope
+	INSTRUME	STR	SIMMOSAIC
+	FORMAT		STR	SPLIT
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	CHIP		# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CELL		# The extensions represent cells
+	FPA.OBS		STR	FPANAME		# A PHU keyword for unique FPA identifier
+	CONTENT	        STR     CHIPNAME	# How to determine content of FITS file
+	CONTENT.RULE	STR	{CHIP.NAME}	# How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# File identifier with corresponding file layout name
+	Chip00		STR	Chip00:SimChip
+	Chip01		STR	Chip01:SimChip
+	Chip10		STR	Chip10:SimChip
+	Chip11		STR	Chip11:SimChip
+END
+
+# Specify the layout
+CHIPS	METADATA
+	SimChip		METADATA
+		# Extension name, cellName:cellType
+		Cell00	STR	Cell00:SimCell
+		Cell01	STR	Cell01:SimCell
+		Cell10	STR	Cell10:SimCell
+		Cell11	STR	Cell11:SimCell
+	END
+END
+
+# Specify the cell data
+CELLS	METADATA
+	SimCell		METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.FILTER	STR	FILTER
+	FPA.FILTERID	STR	FILTER
+	FPA.POSANGLE	STR	POSANGLE
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.OBJECT	STR	OBJECT
+	FPA.TIME	STR	DATE-OBS UTC-OBS
+	FPA.EXPOSURE	STR	EXPTIME
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	DATE-OBS UTC-OBS
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+END
+#FPA.TIME	STR	MJD-OBS
+#CELL.TIME	STR	MJD-OBS
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.DETECTOR	STR	SIMMOSAIC
+	FPA.TIMESYS	STR	UTC
+	FPA.RADECSYS	STR	ICRS
+	CELL.SATURATION	F32	65535
+	CELL.BAD	F32	0
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0.DEPEND	STR	CELL.NAME
+	CELL.X0		METADATA
+		Cell00	S32	0
+		Cell01	S32	0
+		Cell10	S32	1024
+		Cell11	S32	1024
+	END
+	CELL.Y0.DEPEND	STR	CELL.NAME
+	CELL.Y0		METADATA
+		Cell00	S32	0
+		Cell01	S32	1024
+		Cell10	S32	0
+		Cell11	S32	1024
+	END
+	CHIP.X0.DEPEND	STR	CHIP.NAME
+	CHIP.X0		METADATA
+		Chip00	S32	0
+		Chip01	S32	0
+		Chip10	S32	2072
+		Chip11	S32	2072
+	END
+	CHIP.Y0.DEPEND	STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		Chip00	S32	0
+		Chip01	S32	2072
+		Chip10	S32	0
+		Chip11	S32	2072
+	END
+	CELL.XSIZE	S32	1000
+	CELL.YSIZE	S32	1000
+	CELL.XWINDOW	S32	0
+	CELL.YWINDOW	S32	0
+	CELL.GAIN	F32	1.0
+	CELL.READNOISE	F32	10.0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	SEPARATE,YEAR.FIRST
+	CELL.TIME	STR	SEPARATE,YEAR.FIRST
+END
+#FPA.TIME	STR	MJD
+#CELL.TIME	STR	MJD
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/format_together.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/format_together.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/format_together.config	(revision 42661)
@@ -0,0 +1,123 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	SimScope
+	INSTRUME	STR	SIMMOSAIC
+	FORMAT		STR	TOGETHER
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA		# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP		# There are no extensions
+	FPA.OBS		STR	FPANAME		# A PHU keyword for unique FPA identifier
+	CONTENT	        STR     CHIPNAME	# How to determine content of FITS file
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name ---> chip_name:chip_type
+	Chip00		STR	Chip00:SimChip
+	Chip01		STR	Chip01:SimChip
+	Chip10		STR	Chip10:SimChip
+	Chip11		STR	Chip11:SimChip
+END
+
+# Specify the layout
+CHIPS	METADATA
+	# Chip type ---> cell_name:cell_type
+	SimChip		STR	Cell00:SimCell Cell01:SimCell Cell10:SimCell Cell11:SimCell
+END
+
+
+# Specify the cell data
+CELLS	METADATA
+	SimCell		METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.FILTER	STR	FILTER
+	FPA.FILTERID	STR	FILTER
+	FPA.POSANGLE	STR	POSANGLE
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.OBJECT	STR	OBJECT
+	FPA.TIME	STR	DATE-OBS UTC-OBS
+	FPA.EXPOSURE	STR	EXPTIME
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	DATE-OBS UTC-OBS
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+END
+#FPA.TIME	STR	MJD-OBS
+#CELL.TIME	STR	MJD-OBS
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.DETECTOR	STR	SIMMOSAIC
+	FPA.TIMESYS	STR	UTC
+	FPA.RADECSYS	STR	ICRS
+	CELL.SATURATION	F32	65535
+	CELL.BAD	F32	0
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0.DEPEND	STR	CELL.NAME
+	CELL.X0		METADATA
+		Cell00	S32	0
+		Cell01	S32	0
+		Cell10	S32	1024
+		Cell11	S32	1024
+	END
+	CELL.Y0.DEPEND	STR	CELL.NAME
+	CELL.Y0		METADATA
+		Cell00	S32	0
+		Cell01	S32	1024
+		Cell10	S32	0
+		Cell11	S32	1024
+	END
+	CHIP.X0.DEPEND	STR	CHIP.NAME
+	CHIP.X0		METADATA
+		Chip00	S32	0
+		Chip01	S32	0
+		Chip10	S32	2072
+		Chip11	S32	2072
+	END
+	CHIP.Y0.DEPEND	STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		Chip00	S32	0
+		Chip01	S32	2072
+		Chip10	S32	0
+		Chip11	S32	2072
+	END
+	CELL.XSIZE	S32	1000
+	CELL.YSIZE	S32	1000
+	CELL.XWINDOW	S32	0
+	CELL.YWINDOW	S32	0
+	CELL.GAIN	F32	1.0
+	CELL.READNOISE	F32	10.0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	SEPARATE,YEAR.FIRST
+	CELL.TIME	STR	SEPARATE,YEAR.FIRST
+END
+#FPA.TIME	STR	MJD
+#CELL.TIME	STR	MJD
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/notes-8.17.09.txt
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/notes-8.17.09.txt	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/notes-8.17.09.txt	(revision 42661)
@@ -0,0 +1,93 @@
+Simmosaic Simtest Notes
+
+setup:
+------------------
+in pantasks:
+$SIMTEST_CAMERA = SIMMOSAIC
+
+image injection error:
+-------------------
+edit ippconfig/simmosaic/ppImage.config
+->remove line APPLY.TILTYSTREAK
+
+TIME errors reported during image injection
+------------------
+edit ippconfig/simmosaic/format_split.config
+edit ippconfig/simmosaic/format_together.config
+->in ~/simmosaic/fix-files
+
+output format error:
+-------------------
+edit ippconfig/simmosaic/filerules-*
+->in ~/simmosaic/fix-files/filerules
+
+ppImage error in detrend_resid_exp.pl:
+-------------------
+"failed to find class ID fpa in normalization table"
+edit ippconfig/simmosaic/ppImage.config
+NORM.CLASS              STR     CHIP             # How to find the per-class normalizations
+edit line 13
+-> in fix-files/ppImage.config
+
+edit ippconfig/simmosaic/ppImage.config
+MASK             BOOL    FALSE	# Mask bad pixels
+->in ~/simmosaic/fix-files
+
+ppImage seg fault:
+---------------------
+ipp/psModules/src/detrend/pmShutterCorrection.c
+breaks in pmShutterCorrectionGuess at line:
+    // fit a line and extrapolate the fit to counts = A (1 + dTk/dTo) : exptime = dTo
+    if (!psVectorFitPolynomial1D (line, NULL, 0, tmpY, NULL, tmpX)) {
+        printf("Unable to fit for the reference offset.\n");
+        printf("tmpX0: %f, tmpX1: %f, tmpY0: %f, tmpY1: %f\n", tmpX->data.F32[0], tmpX->data.F32[1], tmpY->data.F32[0], tmpY->data.F32[1]);
+        goto GUESS_ERROR;
+    }
+see ~/simmosaic/baz.Chip10.log generated by 
+detrend_stack.pl --threads @MAX_THREADS@ --det_id 3 --iteration 0 --class_id Chip10 --det_type SHUTTER --camera SIMMOSAIC --outroot file:///netdisks/panstarrs/giebink/simmosaic/baz --redirect-output --dbname simtest_mosaic --verbose --save-temps
+
+/netdisks/panstarrs/giebink/psconfig/default.lin64/bin/ppMerge .toad.Chip10.list file:///netdisks/panstarrs/giebink/simmosaic/toad -recipe PPMERGE PPMERGE_SHUTTER -type SHUTTER -stats file:///netdisks/panstarrs/giebink/simmosaic/toad.Chip10.stats -recipe PPSTATS DARKSTATS -tracedest file:///netdisks/panstarrs/giebink/simmosaic/toad.Chip10.trace -log file:///netdisks/panstarrs/giebink/simmosaic/toad.Chip10.log -dbname simtest_mosaic -threads @MAX_THREADS@
+
+Unable to fit for the reference offset.
+tmpX0: 0.977549, tmpX1: 0.977389, tmpY0: 10.000000, tmpY1: 20.000000
+
+added workaround to: 
+ipp/psModules/src/detrend/pmShutterCorrection.c
+line 195:
+//    psFree(corr);
+//    return NULL;
+    corr->scale = 0.5;
+    corr->offset = 0.5;
+    corr->offref = 0.5;
+
+psastro error in camera_exp.pl:
+--------------------
+photcode r not found in photcode table
+cp simtest/psastro.config simmosaic/psastro.config
+->Had to remove:
+PSASTRO.GRID.OFFSET    F32    500.
+PSASTRO.GRID.SCALE     F32     50.
+->in ~/simmosaic/fix-files
+->not sure how much has be put in the file
+
+addstar error in cam_exp.pl:
+--------------------
+missing MJD Keyword MJD-OBS
+->cp simtest/dvo.config simmosaic/dvo.config
+
+psastro error:
+---------------------
+ipp/psModules/src/astrom/pmAstrometryObjects.c
+programming error for: camera_exp.pl --exp_tag simtest.005.001.Chip00.74 --cam_id 16 --camera SIMMOSAIC --outroot /data/ipp002.0/simmosaic/cam/cam --redirect-output --run-state new --dvodb /data/ipp002.0/simmosaic/DVO --dbname simtest_mosaic --verbose
+edit pantasks/modules/simtest.basic.config
+to set all object exposures to 240s
+also, edit simmosaic/psastro.config
+PSASTRO.PIXEL.SCALE    F32  1.0
+->in ~/simmosaic/file-fix
+
+psastro/ppStack error:
+--------------------
+ipp/psLib/src/fits/psFits.c
+ -> p_psFitsError (psFits.c:74): I/O error
+      Could not find HDU with EXTNAME = 'MATCHED_REFS'
+According to Paul, this should be ignored.
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/ppImage.config	(revision 42661)
@@ -0,0 +1,664 @@
+
+# binned output image options
+BIN1.XBIN               S32      16
+BIN1.YBIN               S32      16
+BIN2.XBIN               S32     150
+BIN2.YBIN               S32     150
+
+OVERSCAN.SINGLE         BOOL    FALSE            # Reduce overscan to a single value?
+OVERSCAN.STAT           STR     MEDIAN
+OVERSCAN.BOXCAR         S32     3
+
+# Normalization class
+NORM.CLASS              STR     CHIP             # How to find the per-class normalizations
+
+OLDDARK                 BOOL    FALSE
+
+# use the deburned image instead of the raw, if it exists
+USE.DEBURNED.IMAGE      BOOL    TRUE           # use burntool-repaired image?
+
+# crosstalk measurements : only valid for GPC1 for now
+CROSSTALK.MEASURE  BOOL    FALSE          # Subtract model background?
+CROSSTALK.CORRECT  BOOL    FALSE           # Subtract model background?
+
+## XXX use these local variations until we are building real detrend images
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+    EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+  END
+  FLATCORR METADATA
+    FILTER   STR FPA.FILTERID
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTERID
+  END
+  SHUTTER METADATA
+  END
+  MASK METADATA
+  END	
+  ASTROM METADATA
+  END	
+END
+
+
+# Standard chip processing
+CHIP               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
+  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    FALSE	# Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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 for areas with high stellar density
+# Turn remnance masking off --- it kills all the detector
+CHIP_DENSE_STARS	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
+  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    FALSE	# Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+
+# Overscan, bias
+PPIMAGE_OB         METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  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
+  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?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD        METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark -- search for DARK_PREMASK
+PPIMAGE_DARKMASK_PROCESS METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    FALSE           # Flat-field normalisation
+  MASK               BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_FLATPROC_PREMASK       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    FALSE           # Flat-field normalisation
+  MASK               BOOL    FALSE           # Mask bad pixels
+  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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDSF      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_FLATMASK_PROCESS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+
+  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
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_DET_ONLY   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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE	# Mask bad pixels
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  FPA1.FITS        BOOL    TRUE            # Save 1st binned fpa image? 
+  FPA2.FITS        BOOL    TRUE            # Save 2nd binned fpa image? 
+  PHOTOM           BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE	# Mask bad pixels
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM           BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRP    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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE	# Mask bad pixels
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA    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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE	# Mask bad pixels
+  BACKGROUND       BOOL    TRUE            # Subtract background?
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATCORR    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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE	# Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      DETTYPE STR DARK_PREMASK
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      DETTYPE STR FLAT_PREMASK
+      FILTER  STR FPA.FILTERID
+    END
+    FLATCORR METADATA
+      FILTER  STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END	
+    ASTROM METADATA
+    END	
+  END
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATTEST    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
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE	# Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    BIAS METADATA
+    END
+    DARK METADATA
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      DETTYPE STR FLATTEST
+      FILTER  STR FPA.FILTERID
+    END
+    FRINGE METADATA
+      FILTER   STR FPA.FILTERID
+    END
+    SHUTTER METADATA
+    END
+    MASK METADATA
+    END	
+    ASTROM METADATA
+    END	
+  END
+END
+
+# Photometry and astrometry only (for pre-reduced data)
+PPIMAGE_PA         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    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
+  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
+  FRINGE           BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS        BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS        BOOL    TRUE            # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  PHOTOM           BOOL    TRUE            # Source identification and photometry
+  ASTROM.CHIP      BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC    BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# JPEG images for different types of residual images
+# Save JPEG from BIN1 for bias
+PPIMAGE_J1_RESID_B      METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  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
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  # GPC1 has significant dark structures: use a wide greyscale range
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     VALUE
+    SCALE.MIN      F32     -50.0
+    SCALE.MAX      F32     +50.0
+  END
+END
+
+# Save JPEG from BIN2 for bias
+PPIMAGE_J2_RESID_B        METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  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
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  # GPC1 has significant dark structures: use a wide greyscale range
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     VALUE
+    SCALE.MIN      F32     -50.0
+    SCALE.MAX      F32     +50.0
+  END
+END
+
+# Save JPEG from BIN1 for flat
+PPIMAGE_J1_RESID_F      METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  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
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    TRUE            # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    FALSE           # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+
+  PPIMAGE.JPEG1    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.98
+    SCALE.MAX      F32     1.02
+  END
+END
+
+# Save JPEG from BIN2 for flat
+PPIMAGE_J2_RESID_F        METADATA
+  OVERSCAN         BOOL    FALSE           # Overscan subtraction
+  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
+  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?
+  BASE.FITS        BOOL    FALSE           # Save base 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? 
+  BIN1.FITS        BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS        BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG        BOOL    FALSE           # Save 1st binned jpeg?
+  BIN2.JPEG        BOOL    TRUE            # Save 2nd binned jpeg?
+  BIN1.XBIN        S32     1               # Image is already binned
+  BIN1.YBIN        S32     1               # Image is already binned
+  BIN2.XBIN        S32     1               # Image is already binned
+  BIN2.YBIN        S32     1               # Image is already binned
+		   
+  PPIMAGE.JPEG2    METADATA
+    COLORMAP       STR     -greyscale
+    SCALE.MODE     STR     FRACTION
+    SCALE.MIN      F32     0.98
+    SCALE.MAX      F32     1.02
+  END
+END
+
+# generate CTE map image
+PPIMAGE_CTEMAP     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    FALSE           # Overscan subtraction
+  OVERSCAN         BOOL    TRUE            # Overscan subtraction
+  BIAS             BOOL    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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    TRUE            # measure CTE errors?
+
+  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
+
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/psastro.config	(revision 42661)
@@ -0,0 +1,31 @@
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+PSASTRO.IGNORE         STR    CRLIMIT,SATURATED,DEFECT,BLEND
+
+PSASTRO.CATDIR		STR	SYNTH.SIMTEST
+DVO.GETSTAR.PHOTCODE	STR	r
+PSASTRO.MAX.NSTAR	S32	50	# max stars accepted for fitting
+DVO.GETSTAR.MAX.RHO     F32    10000.0
+DVO.GETSTAR.MIN.MAG     F32      10.0
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 24.0
+  PHOTCODE STR g_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32  25.15
+  PHOTCODE STR r_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+  ZEROPT   F32  25.00
+  PHOTCODE STR i_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+  ZEROPT   F32  24.50
+  PHOTCODE STR z_SYNTH
+END
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/psphot.config	(revision 42661)
@@ -0,0 +1,3 @@
+
+# ppSim currently uses PS_MODEL_GAUSS
+PSF_MODEL                           STR   PS_MODEL_PGAUSS
Index: /branches/eam_branches/ippconfig.20240412/simmosaic/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simmosaic/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simmosaic/rejections.config	(revision 42661)
@@ -0,0 +1,78 @@
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0 # 2 sigma from expected mean
+  IMFILE.STDEV       F32 20.0 # per-image sigma of < 20.0 (supplied read-noise is 10.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.5 # binned stdev < 0.5 (binning is 64x64 : 10.0 / 64.0 = 0.15)
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0 
+  EXP.STDEV          F32 20.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  5.0
+  ENSEMBLE.STDEV     F32  5.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+DARK METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.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  1.0
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.5
+  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  5.0
+  ENSEMBLE.STDEV     F32  5.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+
+SHUTTER 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
+
+
+ITERATION	BOOL	FALSE		# Are iterations permitted?
+MASTER		BOOL	TRUE		# Force stacks to be accepted as a master?
+
Index: /branches/eam_branches/ippconfig.20240412/simple/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simple/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simple/Makefile.am	(revision 42661)
@@ -0,0 +1,18 @@
+
+installdir = $(datadir)/ippconfig/simple
+
+install_files = \
+	camera.config \
+	format.config \
+	ppImage.config \
+	psastro.config \
+	psphot.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/simple/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simple/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simple/camera.config	(revision 42661)
@@ -0,0 +1,70 @@
+# Camera configuration file for drop-dead boring camera, consisting of a single chip with single cell.
+
+# File formats that we know about
+FORMATS         METADATA
+	SIMPLE	STR	simple/format.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip		STR	Cell
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+	B	STR	B
+	V	STR	V
+	R	STR	R
+	I	STR	I
+	z	STR	z
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID		METADATA
+	FPA	STR	fpa
+END
+
+DVO.CAMERADIR	STR	megacam		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES		METADATA
+        PPIMAGE         STR     simple/ppImage.config   # Default: all (normal) options on
+	PSPHOT		STR	simple/psphot.config	# psphot details
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}.{CHIP.NAME}	# Rule for generating photcode
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES       STR     recipes/filerules-simple.mdc
+
+EXTNAME.RULES METADATA
+  CMF.HEAD STR hdr
+  CMF.DATA STR psf
+  CMF.XSRC STR xsrc
+  CMF.XRAD STR xrad
+  CMF.XFIT STR xfit
+  CMF.DETEFF STR deteff
+  CMF.XGAL STR xgal
+
+  PSF.HEAD  STR hdr
+  PSF.TABLE STR psf_model
+  PSF.RESID STR psf_resid
+END
+
+MASK.FORCE	BOOL	TRUE	# Force reliance on MASKS recipe if headers not present
Index: /branches/eam_branches/ippconfig.20240412/simple/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simple/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simple/format.config	(revision 42661)
@@ -0,0 +1,75 @@
+# Drop-dead simple camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+###	NAXIS		S32	2
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	NAXIS	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[0:0,0:0]
+		# alternatives for getting these from the headers
+		# CELL.TRIMSEC.SOURCE	STR	HEADER
+		# CELL.BIASSEC.SOURCE	STR	VALUE
+		# CELL.TRIMSEC		STR	DATASEC
+		# CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	POSANGLE
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.OBJECT	STR	OBJECT
+	FPA.TIME	STR	DATE-OBS UTC-OBS	# Date and time
+	FPA.EXPOSURE	STR	EXPTIME
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+#	CELL.TIME	STR	DATE-OBS TIME-OBS	# Date and time
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	CELL.XBIN	S32	1
+	CELL.YBIN	S32	1
+	FPA.TIMESYS	STR	UTC
+	FPA.RADECSYS	STR	ICRS
+	CELL.GAIN	F32	1.0
+	CELL.READNOISE	F32	2.0
+	CELL.BAD	F32	0
+	CELL.SATURATION	F32	65535
+#	CELL.BAD	F32	-65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	SEPARATE,YEAR.FIRST
+END
Index: /branches/eam_branches/ippconfig.20240412/simple/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simple/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simple/ppImage.config	(revision 42661)
@@ -0,0 +1,120 @@
+### ppImage recipe configuration file for drop-dead simple camera
+
+# List of tasks to perform
+SHUTTER         BOOL    FALSE           # Shutter correction
+DARK		BOOL	TRUE		# Dark correction
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+BIN1.FITS	BOOL    TRUE            # Save 1st binned chip image?
+BIN2.FITS	BOOL    TRUE		# Save 2nd binned chip image?
+
+# binned output image options
+BIN1.XBIN               S32     8
+BIN1.YBIN               S32     8
+BIN2.XBIN               S32     64
+BIN2.YBIN               S32     64
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	3		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# How to select the appropriate detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  MASK METADATA
+  END
+  DARK METADATA
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+  END
+  SHUTTER METADATA
+  END	
+END
+
+########################################################################################
+# Need the following in order to turn off overscan and shutter for the site-level recipe
+########################################################################################
+
+# Overscan subtraction only
+PPIMAGE_O         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Dark subtraction only
+PPIMAGE_D         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Shutter correction only
+PPIMAGE_S         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD      METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS      METADATA
+  OVERSCAN        BOOL    FALSE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF     METADATA
+  OVERSCAN        BOOL    FALSE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE            # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR    METADATA
+  OVERSCAN        BOOL    FALSE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    TRUE            # Fringe subtraction
+END
Index: /branches/eam_branches/ippconfig.20240412/simple/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simple/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simple/psastro.config	(revision 42661)
@@ -0,0 +1,36 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+# PSASTRO.PLATE.SCALE    F32  13.5
+PSASTRO.PLATE.SCALE    F32  1.0
+
+# pmAstromGridMatch:
+PSASTRO.GRID.MIN.ANGLE F32 -0.0851
+PSASTRO.GRID.MAX.ANGLE F32 +0.0851
+PSASTRO.GRID.DEL.ANGLE F32  0.0170
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+# PSASTRO.GRID.OFFSET    F32  10000.
+# PSASTRO.GRID.SCALE     F32    500.
+PSASTRO.GRID.OFFSET    F32   1000.
+PSASTRO.GRID.SCALE     F32     50
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# pmAstromRadiusMatch
+# use plate-scale to make this in pixels?
+PSASTRO.MATCH.RADIUS   F32    8
+
+# pmAstromMatchFit
+PSASTRO.CHIP.NX        S32      1  # fit order
+PSASTRO.CHIP.NY        S32      1  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
Index: /branches/eam_branches/ippconfig.20240412/simple/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simple/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simple/psphot.config	(revision 42661)
@@ -0,0 +1,2 @@
+
+SAVE.RESID	BOOL 	FALSE
Index: /branches/eam_branches/ippconfig.20240412/simtest/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/Makefile.am	(revision 42661)
@@ -0,0 +1,27 @@
+
+installdir = $(datadir)/ippconfig/simtest
+
+install_files = \
+	camera.config \
+	format.config \
+	format_relphot.config \
+	ppImage.config \
+	psastro.config \
+	psphot.config \
+	rejections.config \
+	dvo.config \
+	dvo.layout \
+	gDiff.config \
+	ppSim.config \
+	ppSub.config \
+	ppMerge.config \
+	ppStack.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/simtest/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/camera.config	(revision 42661)
@@ -0,0 +1,85 @@
+# Camera configuration file for simulation test
+
+# File formats that we know about
+FORMATS         METADATA
+	RELPHOT	STR	simtest/format_relphot.config
+	SIMPLE	STR	simtest/format.config
+END
+ 
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip		STR	Cell
+END
+
+# valid filter names and corresponding IDs
+FILTER.ID       METADATA
+	NONE	STR	NONE
+	g	STR	g
+	r	STR	r
+	i	STR	i
+	z	STR	z
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID		METADATA
+	FPA	STR	fpa
+END
+
+DVO.CAMERADIR	STR	simtest		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES		METADATA
+        PPIMAGE         STR     simtest/ppImage.config   # Default: all (normal) options on
+	PSPHOT		STR	simtest/psphot.config	# psphot details
+	PPSIM		STR	simtest/ppSim.config	# ppSim details
+	PPSUB		STR	simtest/ppSub.config	# ppSub details
+	GDIFF		STR	simtest/gDiff.config	# ppSub details
+	PPSTACK		STR	simtest/ppStack.config	# ppStack recipe overrides
+	PSASTRO		STR	simtest/psastro.config	# psastro details
+	PPMERGE		STR	simtest/ppMerge.config	# ppMerge details
+	REJECTIONS	STR	simtest/rejections.config # Rejection for detrend creation
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	recipes/filerules-simple.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.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
+
+  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
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}.{CHIP.NAME}	# Rule for generating photcode
+
+# don't censor any masked pixels when making postage stamps
+# MASK.NO.CENSOR               U32 0xFFFFFFFF -- need to fix the MDC parser(s) to handle hex values
+MASK.NO.CENSOR               U32 4294967295
Index: /branches/eam_branches/ippconfig.20240412/simtest/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/dvo.config	(revision 42661)
@@ -0,0 +1,72 @@
+
+# keywords used by DVO to interpret the headers
+
+# new keyword abstractions (mimic gpc1)
+#DATE-KEYWORD		DATE-OBS
+#DATE-MODE		yyyy-mm-dd
+#UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# old keyword abstractions:
+## DATE-KEYWORD		DATE-OBS
+## UT-KEYWORD		UTC-OBS
+## DATE-MODE		YYYY-MM-DD
+## JD-KEYWORD		NONE
+## MJD-KEYWORD		NONE
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+IMAGE-ID-KEYWORD        IMAGEID
+SOURCE-ID-KEYWORD       SOURCEID
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+GRID_TOOFEW             10     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 6
+
+MOSAICNAME SIMTEST
Index: /branches/eam_branches/ippconfig.20240412/simtest/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/dvo.layout	(revision 42661)
@@ -0,0 +1,27 @@
+# this file defines the layout of the mosaic imager:
+
+NCCD 1
+NAXIS1 2048
+NAXIS2 2048
+
+MOSAIC_X 1
+MOSAIC_Y 1
+
+## XXX is this a good place for this, or is ptolemy.rc better?
+REFCELL.X 2
+REFCELL.Y 2
+
+# header format lines : these are added to the PHU to specify the format to IPP tools
+NFORMAT 4
+FORMAT  INSTRUME  SIMTEST
+FORMAT  TELESCOP  SimScope
+FORMAT  PSFORMAT  RELPHOT
+
+# lines need to contain:
+CHIPID_KEYWORD EXTNAME
+
+# ID     CHIPID xoffset yoffset xflip yflip datasec         biassec            Xo      Yo      theta
+CCD.0        00       0       0     0     0 [0:2048,0:2048] [2085:2110,2:4400] 0       0       0
+
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/simtest/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/format.config	(revision 42661)
@@ -0,0 +1,127 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	INSTRUME	STR	SIMTEST
+	TELESCOP	STR	SimScope1
+#	NAXIS		S32	2
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	OBJECT	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+#FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBSTYPE	STR	OBS-TYPE
+	FPA.AIRMASS	STR	AIRMASS
+        FPA.FILTERID    STR     FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	POSANGLE
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.OBJECT	STR	OBJECT
+        FPA.OBS.MODE    STR     OBS_MODE
+#	FPA.TIME	STR	FOOBIRD			# keyword name does not imply format
+#	FPA.TIME	STR	DATE-OBS UTC-OBS	# Date and time
+	FPA.TIME	STR	MJD-OBS	 		# Date and time
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.TEMP	STR	DETTEMP
+	FPA.ZP		STR	MAG_ZP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+#	CELL.TIME	STR	DATE-OBS UTC-OBS	# Date and time
+	CELL.TIME	STR	MJD-OBS	 		# Date and time
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TIMESYS	STR	TAI  # valid values: TAI, UTC, UT1, TT (JD, MJD require TAI)
+#	FPA.TIMESYS	STR	UTC  # valid values: TAI, UTC, UT1, TT (JD, MJD require TAI)
+	FPA.RADECSYS	STR	ICRS
+	FPA.DETECTOR	STR	SIMTEST
+        FPA.LONGITUDE   F64     10.4170608521 # West Longitude in Hours 
+        FPA.LATITUDE    F64     20.7070999146 # North Latitude in Degrees 
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+	CELL.SATURATION	F32	1000000
+	CELL.BAD	F32	0
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	TAI  # valid values: TAI, UTC, UT1, TT (JD, MJD require TAI)
+#	CELL.TIMESYS	STR	UTC  # valid values: TAI, UTC, UT1, TT (JD, MJD require TAI)
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+	CELL.XSIZE	S32	1000
+	CELL.YSIZE	S32	1000
+	CELL.XWINDOW	S32	0
+	CELL.YWINDOW	S32	0
+	CELL.GAIN	F32	1.0
+	CELL.READNOISE	F32	10.0
+END
+
+FORMATS		METADATA
+	FPA.LONGITUDE	STR	HOURS
+	FPA.LATITUDE	STR	DEGREES
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+#FPA.TIME	STR	SEPARATE,YEAR.FIRST
+#CELL.TIME	STR	SEPARATE,YEAR.FIRST
+FPA.TIME	STR	MJD
+CELL.TIME	STR	MJD
+END
+
+# note that the time keyword name and format must match that defined in dvo.config
+
+# Notes on Time formats and related:
+
+# TRANSLATION:FPA.TIME : this defines the keywords in the input and output headers which
+#   store the time of observation.  Note: the name of the keywords do not imply anything about the format
+#   Note: if the "separate" style of format is used, two keywords must be supplied (and vice versa)
+
+# DEFAULTS:FPA.TIMESYS : this defines the time system (TAI, UTC, UT1, TT) that the header time represents
+
+# FORMATS:FPA.TIME : this specifies the format in which the time information is written to the header
+#   valid values are:
+#      YYYYMMDD, MMDDYYYY, DDMMYYYY (these define the order of year, month, day in the output)
+#          (note that the output formats have dashes between year, month, day; input formats may have
+#           dashes or slashes)
+#      ISO : e.g., 2010-09-01T00:00:00.000000
+#      YEAR.FIRST (synonym for YYYYMMDD)
+#      USA (synonmy for MMDDYYYY)
+#      BACKWARDS (synonym for DDMMYYYY)
+#      MJD
+#      JD  
+#   optional SEPARATE style: if the FPA.TIME value includes SEPARATE (comma-separated from the rest), then
+#      the date and time will be written to two keywords (date keyword first)
+#      WARNING: if SEPARATE is specified and only 1 keyword supplied, the output will silently ignore
+#       the time output
+#   options PRE2000 style: (comma-separated) : treats year as 2-digit year in 20th century (needed for old headers)
+
+# If FPA.TIME & CELL.TIME are both specified, CELL.TIME will be used
+# If only FPA.TIME is specified, it will be used
+#
+# Simtest output headers have information defined by 
Index: /branches/eam_branches/ippconfig.20240412/simtest/format_relphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/format_relphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/format_relphot.config	(revision 42661)
@@ -0,0 +1,94 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	INSTRUME	STR	SIMTEST
+	TELESCOP	STR	SimScope
+	PSFORMAT        STR     RELPHOT
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# The extensions represent chips
+	FPA.OBS		STR	OBJECT	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	00	STR	Chip:SimpleChip
+END
+
+CHIPS   METADATA
+	SimpleChip	METADATA
+		# Extension name, cellName:cellType
+		xy00    STR  Cell:amplifier
+	END
+END
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	TRIMSEC
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.AIRMASS	STR	AIRMASS
+        FPA.FILTERID    STR     FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	POSANGLE
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.OBJECT	STR	OBJECT
+	FPA.TIME	STR	DATE-OBS UTC-OBS	# Date and time
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.ZP		STR	MAG_ZP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	DATE-OBS UTC-OBS	# Date and time
+	CELL.XBIN	STR	XBIN
+	CELL.YBIN	STR	YBIN
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TIMESYS	STR	UTC
+	FPA.RADECSYS	STR	ICRS
+	FPA.DETECTOR	STR	SIMTEST
+        FPA.LONGITUDE   F64     10.4170608521 # West Longitude in Hours 
+        FPA.LATITUDE    F64     20.7070999146 # North Latitude in Degrees 
+        FPA.ELEVATION   F32     3048.0 # altitude in meters
+	CELL.SATURATION	F32	65535
+	CELL.BAD	F32	-100 ## XXX this value is bogus, but needs to be context based so residual images do not get half-masked
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+	CELL.XWINDOW	S32	0
+	CELL.YWINDOW	S32	0
+	CELL.GAIN	F32	1.0
+	CELL.READNOISE	F32	10.0
+END
+
+FORMATS		METADATA
+	FPA.LONGITUDE	STR	HOURS
+	FPA.LATITUDE	STR	DEGREES
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	SEPARATE,YEAR.FIRST
+	CELL.TIME	STR	SEPARATE,YEAR.FIRST
+END
Index: /branches/eam_branches/ippconfig.20240412/simtest/gDiff.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/gDiff.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/gDiff.config	(revision 42661)
@@ -0,0 +1,47 @@
+### Recipe file for ppSub
+
+STAMP.SPACING   F32	25		# Typical spacing between stamps (pixels)
+
+TEST.RADIAL METADATA
+  KERNEL.TYPE	STR	ISIS_RADIAL    	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  #@ISIS.WIDTHS	F32     2.2  3.3  5.0   # Gaussian FWHMs for ISIS kernels -- good
+  #@ISIS.WIDTHS	F32     2.0  3.3  5.4   # Gaussian FWHMs for ISIS kernels -- good
+  @ISIS.WIDTHS	F32     1.8  3.3  5.8   # Gaussian FWHMs for ISIS kernels -- good
+  #@ISIS.WIDTHS	F32	1.6  3.3  6.6   # Gaussian FWHMs for ISIS kernels -- poor (+/- 3.0%, some pix ringing)
+
+  #@ISIS.WIDTHS	F32     1.7  3.0  5.3   # Gaussian FWHMs for ISIS kernels -- good
+  #@ISIS.WIDTHS	F32     2.3  4.0  7.0   # Gaussian FWHMs for ISIS kernels -- bad (ringing and large swings)
+  #@ISIS.WIDTHS	F32     2.1  3.6  6.3   # Gaussian FWHMs for ISIS kernels -- ok (no ringing, but larger kernel and 1.5% swings)
+
+  #@ISIS.WIDTHS	F32     1.5  2.5  4.1   # Gaussian FWHMs for ISIS kernels -- good (+/- 1.2%)
+  #@ISIS.WIDTHS	F32     1.5  2.5  9.0   # Gaussian FWHMs for ISIS kernels -- some ringing
+  #@ISIS.WIDTHS	F32	1.5  2.5  6.8   # Gaussian FWHMs for ISIS kernels -- good (+/- 1.1%?)
+  #@ISIS.WIDTHS	F32	2.4  4.0  10.9  # Gaussian FWHMs for ISIS kernels -- bad (lots of pixel-to-pixel ringing...)
+  #@ISIS.WIDTHS	F32	1.8  3.0  8.2   # Gaussian FWHMs for ISIS kernels -- not bad (+/- 1.5%)
+  #@ISIS.WIDTHS	F32	2.0  3.3  9.0   # Gaussian FWHMs for ISIS kernels -- good (+/- 1.0%)
+  # @ISIS.ORDERS	S32	2    2    2     # Polynomial orders for ISIS kernels
+  # @ISIS.ORDERS	S32	4 4 4		# Polynomial orders for ISIS kernels
+  @ISIS.ORDERS	S32	2 2 2		# Polynomial orders for ISIS kernels
+END
+
+TEST.ISIS METADATA
+  KERNEL.TYPE	STR	ISIS    	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  @ISIS.WIDTHS	F32	1.8 3.3 5.8   	# Gaussian FWHMs for ISIS kernels
+  # @ISIS.WIDTHS	F32	1 2 4 8   	# Gaussian FWHMs for ISIS kernels
+  @ISIS.ORDERS	S32	2 2 2		# Polynomial orders for ISIS kernels
+  # @ISIS.ORDERS	S32	2 2 2 2		# Polynomial orders for ISIS kernels
+  # @ISIS.ORDERS	S32	4 4 4		# Polynomial orders for ISIS kernels
+END
+
+TEST.HERM METADATA
+  KERNEL.TYPE	STR	HERM            # Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  @ISIS.WIDTHS	F32	2.0		# Gaussian FWHMs for ISIS or HERM kernels
+  @ISIS.ORDERS	S32	8   		# Polynomial orders for ISIS kernels
+END
+
+TEST.DECON METADATA
+  KERNEL.TYPE	STR	DECONV_HERM	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  @ISIS.WIDTHS	F32	3.7		# Gaussian FWHMs for ISIS or HERM kernels
+  @ISIS.ORDERS	S32	8   		# Polynomial orders for ISIS kernels
+END
+
Index: /branches/eam_branches/ippconfig.20240412/simtest/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/ppImage.config	(revision 42661)
@@ -0,0 +1,308 @@
+### ppImage recipe configuration file for simulated test camera
+
+# List of tasks to perform
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+BIN1.FITS	BOOL    TRUE            # Save 1st binned chip image?
+BIN2.FITS	BOOL    TRUE		# Save 2nd binned chip image?
+
+# binned output image options
+BIN1.XBIN               S32     8
+BIN1.YBIN               S32     8
+BIN2.XBIN               S32     64
+BIN2.YBIN               S32     64
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	7		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# How to select the appropriate detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  MASK METADATA
+  END
+  DARK METADATA
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTER
+  END
+  FLATCORR METADATA
+    FILTER  STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+  END
+  SHUTTER METADATA
+  END	
+END
+
+
+########################################################################################
+# Need the following in order to turn off overscan and shutter for the site-level recipe
+########################################################################################
+
+# Standard chip processing
+PPIMAGE_OBDSFRP   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD	  BOOL	  FALSE		  # Build internal mask?
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
+# Overscan subtraction only
+PPIMAGE_O         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    TRUE            # Overscan subtraction
+  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?
+END
+
+# Dark subtraction only
+PPIMAGE_D         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
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # 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?
+END
+
+# Shutter correction only
+PPIMAGE_S         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
+  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?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR    METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD	  BOOL	  FALSE		  # Build internal mask?
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD	  BOOL	  FALSE		  # Build internal mask?
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+  CHIP.MASK.FITS  BOOL    TRUE            # Save mask
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATCORR    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD 	   BOOL	   FALSE	   # Build internal mask?
+  FRINGE           BOOL    FALSE           # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    FLAT METADATA
+      DETTYPE STR FLAT_RAW
+    END
+  END   
+END
+
+
+# Standard chip processing
+CHIP   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    TRUE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  MASK.BUILD	  BOOL	  FALSE		  # Build internal mask?
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
Index: /branches/eam_branches/ippconfig.20240412/simtest/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/ppMerge.config	(revision 42661)
@@ -0,0 +1,31 @@
+
+# Ordinates for fitting dark current as function of darktime and fpa temp:
+# Counts = C0 + (CT0 + CT1*Temp + CT2*Temp^2)*exptime
+# the 0th order term is implied, right?
+# DARK.ORDINATES	METADATA
+# 	CELL.DARKTIME	S32	1
+#  	FPA.TEMP	METADATA
+#  		ORDER	S32	1
+# 		RULE	STR	FPA.TEMP * CELL.DARKTIME
+#  	END
+#  	# FPA.TEMP2	METADATA
+#  	# 	ORDER	S32	1
+# 	# 	RULE	STR	FPA.TEMP * FPA.TEMP * CELL.DARKTIME
+#  	# END
+# END
+
+
+# Ordinates for fitting dark current as function of darktime and fpa temp:
+# Counts = C0 + (CT0 + CT1*Temp + CT2*Temp^2)*exptime
+# the 0th order term is implied, right?
+# DARK.ORDINATES	METADATA
+# 	CELL.DARKTIME	S32	1
+#  	FPA.TEMP	METADATA
+#  		ORDER	S32	1
+# 		RULE	STR	FPA.TEMP * CELL.DARKTIME
+#  	END
+#  	FPA.TEMP2	METADATA
+#  		ORDER	S32	1
+# 		RULE	STR	FPA.TEMP * FPA.TEMP * CELL.DARKTIME
+#  	END
+# END
Index: /branches/eam_branches/ippconfig.20240412/simtest/ppSim.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/ppSim.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/ppSim.config	(revision 42661)
@@ -0,0 +1,87 @@
+### Recipe values for ppSim, the Pan-STARRS data simulator
+
+# for a quick test, we are going to skip shutter and dark corrections
+TESTDATA  METADATA
+ PSF.MODEL       STR     PS_MODEL_PGAUSS
+ SHUTTER.TIME	 F32	 0.0
+ DARK.RATE       F32     0.0         
+ SCATTER.FRAC    F32     0.0
+ BIAS            BOOL    FALSE
+ FLAT            BOOL    FALSE
+ BIAS.LEVEL	 F32	 1000.0		# Bias level (e)
+ BIAS.RANGE	 F32	 20.0		# Range of bias values (e)
+ BIAS.ORDER	 S32 	 7		# Order for overscan polynomial
+
+ STARS.MAG	 F32	 10.0		# Brightest magnitude for fake stars
+ STARS.DENSITY	 F32     100.0		# Stellar density (per square degree) at the brightest magnitude
+ STARS.SIGMA.LIM F32     2.0            # significance of faintest sources
+ STARS.LUM	 F32	 0.35		# Stellar luminosity function slope (magnitude slope)
+END
+
+# for a quick test, we are going to skip shutter and dark corrections
+STACKTEST.MAKE  METADATA
+ PSF.MODEL       STR     PS_MODEL_PGAUSS
+ SHUTTER.TIME	 F32	 0.0
+ DARK.RATE       F32     0.0         
+ SCATTER.FRAC    F32     0.0
+ BIAS            BOOL    FALSE
+ FLAT            BOOL    FALSE
+ BIAS.LEVEL	 F32	1000.0		# Bias level (e)
+ BIAS.RANGE	 F32	20.0		# Range of bias values (e)
+ BIAS.ORDER	 S32	7		# Order for overscan polynomial
+
+ # generate a set of fake stars
+ STARS.REAL	 BOOL	FALSE		# Add stars from a catalogue?
+ STARS.FAKE      BOOL   TRUE		# Add fake stars, randomly distributed?
+ MATCH.DENSITY   BOOL   TRUE            # significance of faintest sources
+
+ # parameters of fake stars
+ STARS.MAG	 F32	 10.0		# Brightest magnitude for fake stars
+ STARS.DENSITY	 F32     100.0		# Stellar density (per square degree) at the brightest magnitude
+ STARS.SIGMA.LIM F32     1.0            # significance of faintest sources
+ STARS.LUM	 F32	 0.35		# Stellar luminosity function slope (magnitude slope)
+
+ EXPTIME     	 F32    10.0
+ RA          	 F32    5.0
+ DEC         	 F32    5.0
+ PA          	 F32    0.0
+ SEEING      	 F32    1.0
+ SCALE       	 F32    0.25
+ ZEROPOINT   	 F32    25.0            # if this value is not NAN, it overrides the per-filter zero points
+ 		 			# set in the ZEROPTS metadata (see recipes/ppSim.config)
+ SKY.MAGS    	 F32    22.0		# if SKY.RATE is set (not NAN), it overrides this value
+END
+
+# for a quick test, we are going to skip shutter and dark corrections
+STACKTEST.RUN  METADATA
+ PSF.MODEL       STR     PS_MODEL_GAUSS
+ SHUTTER.TIME	 F32	 0.0
+ DARK.RATE       F32     0.0         
+ SCATTER.FRAC    F32     0.0
+ BIAS            BOOL    FALSE
+ FLAT            BOOL    FALSE
+ BIAS.LEVEL	 F32	1000.0		# Bias level (e)
+ BIAS.RANGE	 F32	20.0		# Range of bias values (e)
+ BIAS.ORDER	 S32	7		# Order for overscan polynomial
+
+ # generate a set of fake stars
+ STARS.REAL	 BOOL	TRUE		# Add stars from a catalogue?
+ STARS.FAKE      BOOL   FALSE		# Add fake stars, randomly distributed?
+ MATCH.DENSITY   BOOL   TRUE            # significance of faintest sources
+
+ # parameters of fake stars
+ STARS.MAG	 F32	 10.0		# Brightest magnitude for fake stars
+ STARS.DENSITY	 F32     1.0		# Stellar density (per square degree) at the brightest magnitude
+ STARS.SIGMA.LIM F32     0.1            # significance of faintest sources
+ STARS.LUM	 F32	 0.35		# Stellar luminosity function slope (magnitude slope)
+
+ EXPTIME     	 F32    10.0
+ RA          	 F32    5.0
+ DEC         	 F32    5.0
+ PA          	 F32    0.0
+ SEEING      	 F32    1.0
+ SCALE       	 F32    0.25
+ ZEROPOINT   	 F32    25.0
+ SKY.MAGS    	 F32    22.0
+END
+
Index: /branches/eam_branches/ippconfig.20240412/simtest/ppStack.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/ppStack.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/ppStack.config	(revision 42661)
@@ -0,0 +1,3 @@
+PSF.MODEL	STR	PS_MODEL_GAUSS	# Model for PSF generation
+DECONV.LIMIT	F32	1.5		# Deconvolution fraction for rejecting entire image
+IMAGE.REJ	F32	0.3		# Rejected pixel fraction threshold for rejecting entire image
Index: /branches/eam_branches/ippconfig.20240412/simtest/ppSub.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/ppSub.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/ppSub.config	(revision 42661)
@@ -0,0 +1,47 @@
+### Recipe file for ppSub
+
+STAMP.SPACING   F32	25		# Typical spacing between stamps (pixels)
+
+TEST.RADIAL METADATA
+  KERNEL.TYPE	STR	ISIS_RADIAL    	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  #@ISIS.WIDTHS	F32     2.2  3.3  5.0   # Gaussian FWHMs for ISIS kernels -- good
+  #@ISIS.WIDTHS	F32     2.0  3.3  5.4   # Gaussian FWHMs for ISIS kernels -- good
+  @ISIS.WIDTHS	F32     1.8  3.3  5.8   # Gaussian FWHMs for ISIS kernels -- good
+  #@ISIS.WIDTHS	F32	1.6  3.3  6.6   # Gaussian FWHMs for ISIS kernels -- poor (+/- 3.0%, some pix ringing)
+
+  #@ISIS.WIDTHS	F32     1.7  3.0  5.3   # Gaussian FWHMs for ISIS kernels -- good
+  #@ISIS.WIDTHS	F32     2.3  4.0  7.0   # Gaussian FWHMs for ISIS kernels -- bad (ringing and large swings)
+  #@ISIS.WIDTHS	F32     2.1  3.6  6.3   # Gaussian FWHMs for ISIS kernels -- ok (no ringing, but larger kernel and 1.5% swings)
+
+  #@ISIS.WIDTHS	F32     1.5  2.5  4.1   # Gaussian FWHMs for ISIS kernels -- good (+/- 1.2%)
+  #@ISIS.WIDTHS	F32     1.5  2.5  9.0   # Gaussian FWHMs for ISIS kernels -- some ringing
+  #@ISIS.WIDTHS	F32	1.5  2.5  6.8   # Gaussian FWHMs for ISIS kernels -- good (+/- 1.1%?)
+  #@ISIS.WIDTHS	F32	2.4  4.0  10.9  # Gaussian FWHMs for ISIS kernels -- bad (lots of pixel-to-pixel ringing...)
+  #@ISIS.WIDTHS	F32	1.8  3.0  8.2   # Gaussian FWHMs for ISIS kernels -- not bad (+/- 1.5%)
+  #@ISIS.WIDTHS	F32	2.0  3.3  9.0   # Gaussian FWHMs for ISIS kernels -- good (+/- 1.0%)
+  # @ISIS.ORDERS	S32	2    2    2     # Polynomial orders for ISIS kernels
+  # @ISIS.ORDERS	S32	4 4 4		# Polynomial orders for ISIS kernels
+  @ISIS.ORDERS	S32	2 2 2		# Polynomial orders for ISIS kernels
+END
+
+TEST.ISIS METADATA
+  KERNEL.TYPE	STR	ISIS    	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  @ISIS.WIDTHS	F32	1.8 3.3 5.8   	# Gaussian FWHMs for ISIS kernels
+  # @ISIS.WIDTHS	F32	1 2 4 8   	# Gaussian FWHMs for ISIS kernels
+  @ISIS.ORDERS	S32	2 2 2		# Polynomial orders for ISIS kernels
+  # @ISIS.ORDERS	S32	2 2 2 2		# Polynomial orders for ISIS kernels
+  # @ISIS.ORDERS	S32	4 4 4		# Polynomial orders for ISIS kernels
+END
+
+TEST.HERM METADATA
+  KERNEL.TYPE	STR	HERM            # Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  @ISIS.WIDTHS	F32	2.0		# Gaussian FWHMs for ISIS or HERM kernels
+  @ISIS.ORDERS	S32	8   		# Polynomial orders for ISIS kernels
+END
+
+TEST.DECON METADATA
+  KERNEL.TYPE	STR	DECONV_HERM	# Kernel type to use (POIS|ISIS|SPAM|FRIES|GUNK|RINGS)
+  @ISIS.WIDTHS	F32	3.7		# Gaussian FWHMs for ISIS or HERM kernels
+  @ISIS.ORDERS	S32	8   		# Polynomial orders for ISIS kernels
+END
+
Index: /branches/eam_branches/ippconfig.20240412/simtest/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/psastro.config	(revision 42661)
@@ -0,0 +1,36 @@
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+PSASTRO.GRID.OFFSET    F32    500.
+PSASTRO.GRID.SCALE     F32     10.
+
+PSASTRO.IGNORE         STR    CRLIMIT,SATURATED,DEFECT,BLEND
+
+PSASTRO.CATDIR		STR	SYNTH.SIMTEST
+DVO.GETSTAR.PHOTCODE	STR	r
+PSASTRO.MAX.NSTAR	S32	200	# max stars accepted for fitting
+DVO.GETSTAR.MAX.RHO     F32    10000.0
+DVO.GETSTAR.MIN.MAG     F32      10.0
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 24.0
+  PHOTCODE STR g_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32  25.15
+  PHOTCODE STR r_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+  ZEROPT   F32  25.00
+  PHOTCODE STR i_SYNTH
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+  ZEROPT   F32  24.50
+  PHOTCODE STR z_SYNTH
+END
+
Index: /branches/eam_branches/ippconfig.20240412/simtest/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/psphot.config	(revision 42661)
@@ -0,0 +1,74 @@
+
+# same as ppSim.config (if YES, <apResid> should be 0.0)
+# ppSim currently uses PS_MODEL_GAUSS
+PSF_MODEL                           STR   PS_MODEL_GAUSS
+PSF_CLUMP_GRID_SCALE                F32   1.0             # size of Sx,Sy image pixel
+
+EXTENDED_TEST METADATA
+  # Extended source fit parameters
+  # these models are used for high-quality shape analysis after all sources have been removed
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_TRAIL
+
+  # extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA 
+   TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+   TRAIL_RAW EXTENDED_SOURCE_MODEL  PS_MODEL_TRAIL    10.0   FALSE
+  END
+END
+
+GALAXY_TEST METADATA
+  # Extended source fit parameters
+  # these models are used for high-quality shape analysis after all sources have been removed
+  SAVE.RESID BOOL T
+
+  EXTENDED_SOURCE_FITS                BOOL  TRUE  # perform the detailed extended sourc fits?
+  EXT_MODEL                           STR   PS_MODEL_QGAUSS
+  PSF_MODEL                           STR   PS_MODEL_PS1_V1
+
+  EXTENDED_SOURCE_SN_LIM              F32   5.0
+
+  LMM_FIT_CHISQ_CONVERGENCE           BOOL  FALSE           # use the (old) chisq convergence or the new parameter one 
+  LMM_FIT_GAIN_FACTOR_MODE            S32   2               # there are 3 options to determine the gain factor (0,1,2)
+  EXT_FIT_MIN_TOL                     F32   0.1             # Fit tolerance for EXT
+
+  # XXX these are only needed if we want to get perfect fits of the synthetic data
+  PSF_FIT_RADIUS_SCALE         F32   3.75
+  EXT_FIT_NSIGMA_CONV          F32   11
+  PSF.RESIDUALS BOOL F
+
+  # if this is defined, it gives a list of the model names to fit below (ALL or NONE are also valid)
+  EXTENDED_SOURCE_MODELS_SELECTION    STR   NONE
+
+  # extended source models applied to sources
+  EXTENDED_SOURCE_MODELS METADATA 
+    TYPE      EXTENDED_SOURCE_MODEL  MODEL            SNLIM   PSF_CONVOLVED
+    EXP_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_EXP     3.0     TRUE
+    DEV_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_DEV     3.0     TRUE
+    SER_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_SERSIC  3.0     TRUE
+    GAU_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_GAUSS   3.0     TRUE
+    PGA_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_PGAUSS  3.0     TRUE
+    QGA_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_QGAUSS  3.0     TRUE
+    PS1_CONV  EXTENDED_SOURCE_MODEL  PS_MODEL_PS1_V1  3.0     TRUE
+
+    EXP_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_EXP     10.0    FALSE
+    DEV_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_DEV     10.0    FALSE
+    SER_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_SERSIC  10.0    FALSE
+    GAU_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_GAUSS   10.0    FALSE
+    PGA_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_PGAUSS  10.0    FALSE
+    QGA_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_QGAUSS  10.0    FALSE
+    PS1_RAW   EXTENDED_SOURCE_MODEL  PS_MODEL_PS1_V1  10.0    FALSE
+  END
+
+  EXT.ANALYSIS.MAG.LIMITS METADATA
+      TYPE  DATA FILTER.ID MAG.LIMIT.PETRO  MAG.LIMIT.EXTFIT
+      gband DATA g         25               NAN
+      rband DATA r         25       	    NAN 
+      iband DATA i         25		    NAN
+      zband DATA z         25		    NAN
+      yband DATA y         25		    NAN
+      wband DATA w         25		    NAN
+      other DATA any       25		    NAN
+  END
+END
+
Index: /branches/eam_branches/ippconfig.20240412/simtest/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/simtest/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/simtest/rejections.config	(revision 42661)
@@ -0,0 +1,78 @@
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0 # 2 sigma from expected mean
+  IMFILE.STDEV       F32 20.0 # per-image sigma of < 20.0 (supplied read-noise is 10.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.5 # binned stdev < 0.5 (binning is 64x64 : 10.0 / 64.0 = 0.15)
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0 
+  EXP.STDEV          F32 20.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  5.0
+  ENSEMBLE.STDEV     F32  5.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+DARK METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.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  1.0
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.5
+  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  5.0
+  ENSEMBLE.STDEV     F32  5.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+
+SHUTTER 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
+
+
+ITERATION	BOOL	FALSE		# Are iterations permitted?
+MASTER		BOOL	TRUE		# Force stacks to be accepted as a master?
+
Index: /branches/eam_branches/ippconfig.20240412/site.config.in
===================================================================
--- /branches/eam_branches/ippconfig.20240412/site.config.in	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/site.config.in	(revision 42661)
@@ -0,0 +1,71 @@
+## Site Configuration : use this as an example for your installation
+## Supply locations of interest
+
+# place your data directories here and refer to as path://PATH/remainder
+DATAPATH        METADATA
+        ALALA   STR     /data/alala.0/
+        ISP     STR     /data/ipp000.0/isp
+        ISP_V2  STR     /data/ipp000.0/isp_v2
+        ISP_V3  STR     /data/ipp000.0/isp_v3
+        ISP_TEST STR    /data/ipp000.0/isp_test
+        CFH12K  STR     /data/ipp003.0/eugene/cfh12k
+
+        SRWORK  STR     /data/ipp003.0/rodney/WORK
+        SRDATA  STR     /data/ipp003.0/rodney/DATA
+
+        SRESSWORK  STR     /data/ipp003.0/rodney/WORK
+        SRESSDATA  STR     /data/ipp003.0/rodney/DATA
+
+        SIMDATA STR     /data/ipp002.0/SIM/DATA
+        SIMWORK STR     /data/ipp002.0/SIM/WORK
+
+        MOPS    STR     /data/ipp002.0/MOPS/
+        TALCS   STR     /data/ipp003.0/TALCS/
+        GPC1    STR     /data/ipp002.0/koppenh/
+END
+
+# List of tessellations, and their DVO CATDIR
+TESSELLATIONS   METADATA
+        MOPS            STR     /data/ipp002.0/MOPS/skycells/
+        FIXNS           STR     /data/ipp002.0/FIXNS/skycells/
+END
+
+# dvo databases used for output
+DVO.CATDIRS     METADATA
+        MOPS            STR     /data/ipp002.0/MOPS/catdir/
+        FIXNS           STR     /data/ipp002.0/FIXNS/catdir/
+END
+
+# dvo databases used for psastro reference
+PSASTRO.CATDIRS METADATA
+        2MASS           STR     /data/alala.0/ipp/ippRefs/catdir.2mass
+        SYNTH.GRIZY     STR     /data/alala.0/ipp/ippRefs/catdir.synth.grizy
+        SYNTH.BRIGHT    STR     /data/alala.0/ipp/ippRefs/catdir.synth.bright
+        SYNTH.SIMTEST   STR     /data/alala.0/ipp/ippRefs/catdir.synth.simtest
+END
+
+# nebulous server
+NEB_SERVER      STR     http://alala:80/nebulous        # Nebulous server
+
+# Database configuration
+DBSERVER        STR     XXX                     # Database host name (for psDBInit)
+DBNAME          STR     XXX                     # Database name (for psDBInit)
+DBUSER          STR     XXX                     # Database user name (for psDBInit)
+DBPASSWORD      STR     XXX                     # Database password (for psDBInit)
+DBPORT          S32     0                       # Database port (for psDBInit); 0 = default
+
+# DataStore Database configuration
+DS_DBSERVER     STR     XXX
+DS_DBNAME       STR     XXX
+DS_DBUSER       STR     XXX
+DS_DBPASSWORD   STR     XXX
+
+# root directory of the data store
+DATA_STORE_ROOT STR PATH
+
+PSTAMP_DATA_STORE_ROOT STR PATH
+
+TEMP.DIR	STR	/tmp	# Directory for temporary products
+
+
+# other basic values:
Index: /branches/eam_branches/ippconfig.20240412/skycell/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/skycell/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/skycell/Makefile.am	(revision 42661)
@@ -0,0 +1,14 @@
+
+installdir = $(datadir)/ippconfig/skycell
+
+install_files = \
+	dvo.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/skycell/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/skycell/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/skycell/dvo.config	(revision 42661)
@@ -0,0 +1,15 @@
+# DVO configuration for skycells of all cameras
+# Contains keywords used by DVO to interpret the headers
+
+# Date keyword abstractions:
+DATE-KEYWORD		NONE
+UT-KEYWORD		NONE
+DATE-MODE		YYYY-MM-DD
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# Other important keyword abstractions:
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		NONE
+ST-KEYWORD		NONE
Index: /branches/eam_branches/ippconfig.20240412/ssp/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ssp/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ssp/Makefile.am	(revision 42661)
@@ -0,0 +1,18 @@
+
+installdir = $(datadir)/ippconfig/ssp
+
+install_files = \
+	camera.config \
+	format.config \
+	ppImage.config \
+	psastro.config \
+	psphot.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/ssp/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ssp/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ssp/camera.config	(revision 42661)
@@ -0,0 +1,69 @@
+# Camera configuration file for drop-dead boring camera, consisting of a single chip with single cell.
+
+# File formats that we know about
+FORMATS         METADATA
+	SSP	STR	ssp/format.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip		STR	Cell
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+	B	STR	B
+	V	STR	V
+	R	STR	R
+	I	STR	I
+	z	STR	z
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID		METADATA
+	FPA	STR	fpa
+END
+
+DVO.CAMERADIR	STR	megacam		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES		METADATA
+        PPIMAGE         STR     ssp/ppImage.config   # Default: all (normal) options on
+	PSPHOT		STR	ssp/psphot.config	# psphot details
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}.{CHIP.NAME}	# Rule for generating photcode
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES       STR     recipes/filerules-simple.mdc
+
+EXTNAME.RULES METADATA
+  CMF.HEAD STR hdr
+  CMF.DATA STR psf
+  CMF.XSRC STR xsrc
+  CMF.XFIT STR xfit
+  CMF.XRAD STR xrad
+  CMF.DETEFF STR deteff
+
+  PSF.HEAD  STR hdr
+  PSF.TABLE STR psf_model
+  PSF.RESID STR psf_resid
+END
+
+MASK.FORCE	BOOL	TRUE	# Force reliance on MASKS recipe if headers not present
Index: /branches/eam_branches/ippconfig.20240412/ssp/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ssp/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ssp/format.config	(revision 42661)
@@ -0,0 +1,81 @@
+# Drop-dead simple camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+###	NAXIS		S32	2
+ 	DETECTOR	STR	rspiusb0
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	NAXIS	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		#CELL.TRIMSEC		STR	[0:0,0:0]
+		
+		# alternatives for getting these from the headers
+		# CELL.TRIMSEC.SOURCE	STR	HEADER
+		 CELL.BIASSEC.SOURCE	STR	VALUE
+		 CELL.TRIMSEC		STR	DATASEC
+		 CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	#FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	POSANGLE
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.OBJECT	STR	OBJECT
+	FPA.TIME	STR	DATE-OBS # UTC-OBS	# Date and time
+	FPA.EXPOSURE	STR	EXPTIME
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	FPA.FOCUS	STR	FOCUS
+	FPA.DETECTOR    STR     DETECTOR
+	CELL.GAIN	STR	CCDGAIN
+#	CELL.TIME	STR	DATE-OBS TIME-OBS	# Date and time
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TELESCOPE  STR	SSP	
+	CELL.XBIN	S32	1
+	CELL.YBIN	S32	1
+	FPA.TIMESYS	STR	UTC
+	FPA.RADECSYS	STR	ICRS
+	#CELL.GAIN	F32	1.0
+	CELL.READNOISE	F32	2.0
+	CELL.BAD	F32	0
+	CELL.SATURATION	F32	65535
+#	CELL.BAD	F32	-65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	SEPARATE,YEAR.FIRST
+END
Index: /branches/eam_branches/ippconfig.20240412/ssp/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ssp/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ssp/ppImage.config	(revision 42661)
@@ -0,0 +1,120 @@
+### ppImage recipe configuration file for drop-dead simple camera
+
+# List of tasks to perform
+SHUTTER         BOOL    FALSE           # Shutter correction
+DARK		BOOL	TRUE		# Dark correction
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+BIN1.FITS	BOOL    TRUE            # Save 1st binned chip image?
+BIN2.FITS	BOOL    TRUE		# Save 2nd binned chip image?
+
+# binned output image options
+BIN1.XBIN               S32     8
+BIN1.YBIN               S32     8
+BIN2.XBIN               S32     64
+BIN2.YBIN               S32     64
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	3		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# How to select the appropriate detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  MASK METADATA
+  END
+  DARK METADATA
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+  END
+  SHUTTER METADATA
+  END	
+END
+
+########################################################################################
+# Need the following in order to turn off overscan and shutter for the site-level recipe
+########################################################################################
+
+# Overscan subtraction only
+PPIMAGE_O         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Dark subtraction only
+PPIMAGE_D         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Shutter correction only
+PPIMAGE_S         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD      METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS      METADATA
+  OVERSCAN        BOOL    FALSE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF     METADATA
+  OVERSCAN        BOOL    FALSE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE            # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR    METADATA
+  OVERSCAN        BOOL    FALSE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    TRUE            # Fringe subtraction
+END
Index: /branches/eam_branches/ippconfig.20240412/ssp/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ssp/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ssp/psastro.config	(revision 42661)
@@ -0,0 +1,36 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+# PSASTRO.PLATE.SCALE    F32  13.5
+PSASTRO.PLATE.SCALE    F32  1.0
+
+# pmAstromGridMatch:
+PSASTRO.GRID.MIN.ANGLE F32 -0.0851
+PSASTRO.GRID.MAX.ANGLE F32 +0.0851
+PSASTRO.GRID.DEL.ANGLE F32  0.0170
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+# PSASTRO.GRID.OFFSET    F32  10000.
+# PSASTRO.GRID.SCALE     F32    500.
+PSASTRO.GRID.OFFSET    F32   1000.
+PSASTRO.GRID.SCALE     F32     50
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# pmAstromRadiusMatch
+# use plate-scale to make this in pixels?
+PSASTRO.MATCH.RADIUS   F32    8
+
+# pmAstromMatchFit
+PSASTRO.CHIP.NX        S32      1  # fit order
+PSASTRO.CHIP.NY        S32      1  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
Index: /branches/eam_branches/ippconfig.20240412/ssp/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ssp/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ssp/psphot.config	(revision 42661)
@@ -0,0 +1,2 @@
+
+SAVE.RESID	BOOL 	TRUE
Index: /branches/eam_branches/ippconfig.20240412/suprime/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/Makefile.am	(revision 42661)
@@ -0,0 +1,26 @@
+
+installdir = $(datadir)/ippconfig/suprime
+
+install_files = \
+	dvo.config \
+	dvo.layout \
+	camera.config \
+	format_raw.config \
+	format_mef.config \
+	format_split.config \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	pswarp.config \
+	ppStack.config \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/suprime/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/camera.config	(revision 42661)
@@ -0,0 +1,133 @@
+# Camera configuration file for MegaCam: describes the camera
+
+# File formats that we know about
+FORMATS         METADATA
+	MEF	STR	suprime/format_mef.config
+        RAW     STR     suprime/format_raw.config
+        SPLIT   STR     suprime/format_split.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+	XY01	 STR	Cell
+	XY11	 STR	Cell
+	XY21	 STR	Cell
+	XY00	 STR	Cell
+	XY10	 STR	Cell
+	XY20	 STR	Cell
+	XY41	 STR	Cell
+	XY31	 STR	Cell
+	XY40	 STR	Cell
+	XY30	 STR	Cell
+	XY01_raw STR	ch1 ch2 ch3 ch4
+	XY11_raw STR	ch1 ch2 ch3 ch4
+	XY21_raw STR	ch1 ch2 ch3 ch4
+	XY00_raw STR	ch1 ch2 ch3 ch4
+	XY10_raw STR	ch1 ch2 ch3 ch4
+	XY20_raw STR	ch1 ch2 ch3 ch4
+	XY41_raw STR	ch1 ch2 ch3 ch4
+	XY31_raw STR	ch1 ch2 ch3 ch4
+	XY40_raw STR	ch1 ch2 ch3 ch4
+	XY30_raw STR	ch1 ch2 ch3 ch4
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+  Rc        STR   W-C-RC
+  Vr	    STR	  W-J-VR
+
+  B	    STR	  W-J-B
+  V	    STR	  W-J-V
+  R	    STR	  W-C-RC
+  I	    STR	  W-C-IC
+  g	    STR	  W-S-G+
+  r	    STR	  W-S-R+
+  i	    STR	  W-S-I+
+  z	    STR	  W-S-Z+
+  
+  Y	    STR	  W-J-Y
+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	suprime		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias     STR BIAS
+  zero     STR BIAS
+  dark     STR DARK
+  flat     STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        # Other recipes
+        PSPHOT          STR     suprime/psphot.config           # psphot details
+        PSASTRO         STR     suprime/psastro.config          # psastro details
+	PSWARP		STR	suprime/pswarp.config		# pswarp details
+        PPIMAGE         STR     suprime/ppImage.config          # ppImage recipe
+	REJECTIONS      STR     suprime/rejections.config       # rejection recipe
+	PPMERGE		STR	suprime/ppMerge.config		# ppMerge recipe
+	PPSTACK		STR	suprime/ppStack.config          # ppStack recipe
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	recipes/filerules-split.mdc		# File rules appropriate for MEF format
+
+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.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
+
+  PSF.HEAD   STR {CHIP.NAME}.hdr
+  PSF.TABLE  STR {CHIP.NAME}.psf_model
+  PSF.RESID  STR {CHIP.NAME}.psf_resid
+
+  REF.ASTROM STR {CHIP.NAME}.ref_astrom
+END
+
+BLANK.HEADERS	METADATA
+	FPA.TIME	STR	MJD
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBS		STR	EXP-ID
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}.{CHIP.N}		# Rule for generating photcode
+
+BURNTOOL.STATE.GOOD        S16  0  # Value for burntool_state with the most recent bt version.
+BURNTOOL.STATE.GOOD.UPDATE S16  0  # for upddate processing accept earlier version
+
+FOV_REF                     F32     0   # Field of view of unvignetted region in FPA pixels.
+FOV_MAX			    F32	    0
+NPIX_REF 		    S32	    0
+NPIX_MAX		    S32	    0
+NPIX_INTERCHIP              S32     0
+
+# 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         25
+
+# don't censor any masked pixels
+MASK.NO.CENSOR          U32 4294967295
+
+METADATA.COMPRESSION         STR      7f # compression mode (nM): n = 1-9, M = f (filtered), h (Huffman), R (run-length)
Index: /branches/eam_branches/ippconfig.20240412/suprime/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/dvo.config	(revision 42661)
@@ -0,0 +1,70 @@
+
+# location of DVO database tables
+CATDIR			/data/alala.0/eugene/isp/catdir
+
+# word used to identify photcodes belonging to this camera
+MOSAICNAME		SUPRIMECAM
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+#DATE-KEYWORD		DATE-OBS
+#DATE-MODE		yyyy-mm-dd
+#UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		DET-ID
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+
Index: /branches/eam_branches/ippconfig.20240412/suprime/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/dvo.layout	(revision 42661)
@@ -0,0 +1,27 @@
+# this file defines the layout of the mosaic imager:
+
+# NCCD 40  # this needs work: sometimes 36, sometimes 40
+NCCD 10
+NAXIS1 2048
+NAXIS2 4225
+
+MOSAIC_X 5
+MOSAIC_Y 2
+
+# lines need to contain:
+
+CHIPID_KEYWORD EXTNAME
+
+# ID     CHIPID xoffset yoffset xflip yflip datasec         biassec            Xo      Yo      theta
+nausicaa  XY01	      23      3     1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+kiki	  XY11        2121    2	    1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+fio	  XY21	      4221    0	    1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+sophie	  XY00	      0	      4207  1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+sheeta	  XY10	      2095    4229  1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+satsuki	  XY20	      4208    4254  1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+chihiro	  XY41	      8429    65    1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+clarisse  XY31	      6337    26    1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+ponyo	  XY40	      8405    4253  1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+san	  XY30	      6315    4252  1	  0 [520:2264,49:4225] [521:568,1:48]  0       0       0
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/suprime/format_mef.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/format_mef.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/format_mef.config	(revision 42661)
@@ -0,0 +1,190 @@
+# The spliced MecaCam data is stored in single extensions for each chip
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	Subaru
+#	DETECTOR	STR	MegaCam
+	INSTRUME	STR	SuprimeCam
+#	NAXIS           S32     2
+	EXTEND		BOOL	T
+	PSMOSIAC	STR	CHIP
+#       HISTORY         STR     imsplice: Splicing results in all detectors as if read from A amplifier
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CHIP	# The extensions represent chips
+	FPA.OBS		STR	EXP-ID	# A PHU keyword for unique identifier
+#	CONTENT		STR	DETECTOR	# Key to the CONTENTS menu
+#	CHIP.NAME	STR	DETECTOR
+#	CONTENT.RULE	STR	{CHIP.NAME} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Extension name, chipName:chipType
+        nausicaa  STR   XY01:spcam20080721
+        kiki      STR   XY11:spcam20080721
+        fio       STR   XY21:spcam20080721
+        sophie    STR   XY00:spcam20080721
+        sheeta    STR   XY10:spcam20080721
+        satsuki   STR   XY20:spcam20080721
+        chihiro   STR   XY41:spcam20080721
+        clarisse  STR   XY31:spcam20080721
+        ponyo     STR   XY40:spcam20080721
+        san       STR   XY30:spcam20080721
+
+	XY01	STR	XY01:spcam20080721
+	XY11	STR	XY11:spcam20080721
+	XY21	STR	XY21:spcam20080721
+	XY00	STR	XY00:spcam20080721
+	XY10	STR	XY10:spcam20080721
+	XY20	STR	XY20:spcam20080721
+	XY41	STR	XY41:spcam20080721
+	XY31	STR	XY31:spcam20080721
+	XY40	STR	XY40:spcam20080721
+	XY30	STR	XY30:spcam20080721
+
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+        spcam20080721  STR    cell:cell
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts to use
+        cell   METADATA
+               CELL.BIASSEC.SOURCE      STR     VALUE
+               CELL.TRIMSEC.SOURCE      STR     VALUE
+               CELL.BIASSEC             STR     [521:568,1:48]
+               CELL.TRIMSEC             STR     [520:2264,49:4225]
+               CELL.X0                  S32     0
+               CELL.GAIN.SOURCE         STR     HEADER
+               CELL.GAIN                STR     GAIN
+        END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBS		STR	EXP-ID
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTERID    STR     FILTER01
+        FPA.FILTER      STR     FILTER01
+	FPA.OBSTYPE	STR	DATA-TYP
+	FPA.OBJECT	STR	OBJECT
+	FPA.TIME	STR	MJD
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+        FPA.POSANGLE    STR     INST-PA
+	FPA.FOCUS	STR	TELFOCUS # added at start of 03Am04
+	FPA.ALT		STR	ALTITUDE
+	FPA.AZ		STR	AZIMUTH
+	FPA.TEMP	STR	DET-TMP
+	FPA.EXPOSURE	STR	EXPTIME
+	FPA.ZP		STR	ZPT_OBS
+	CHIP.TEMP	STR	DET-TMP
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+        CELL.READNOISE  STR     RDNOISE
+	CELL.TIME	STR	MJD
+        CELL.XBIN       STR     BIN-FCT1
+        CELL.YBIN       STR     BIN-FCT2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	Subaru
+	FPA.INSTRUMENT		STR	SuprimeCam
+	FPA.DETECTOR	        STR	kiki
+#	FPA.TIMESYS		STR	
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4224
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4224
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	50000.0
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+#	CELL.TIMESYS		STR	UTC
+               CELL.TRIMSEC             STR     [1:2264,49:4225]
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+                XY01    S32     23
+                XY11    S32     2121
+                XY21    S32     4221
+                XY00    S32     0
+                XY10    S32     2095
+                XY20    S32     4208
+                XY41    S32     8429
+                XY31    S32     6337
+                XY40    S32     8405
+                XY30    S32     6315
+	END
+
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+                XY01    S32     3
+                XY11    S32     2
+                XY21    S32     0
+                XY00    S32     4207
+                XY10    S32     4229
+                XY20    S32     4254
+                XY41    S32     65
+                XY31    S32     26
+                XY40    S32     4253
+                XY30    S32     4252
+	END
+
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+                XY01    S32     -1
+                XY11    S32     -1
+                XY21    S32     -1
+                XY00    S32     -1
+                XY10    S32     -1
+                XY20    S32     -1
+                XY41    S32     -1
+                XY31    S32     -1
+                XY40    S32     -1
+                XY30    S32     -1
+	END
+
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+                XY01    S32     1
+                XY11    S32     1
+                XY21    S32     1
+                XY00    S32     1
+                XY10    S32     1
+                XY20    S32     1
+                XY41    S32     1
+                XY31    S32     1
+                XY40    S32     1
+                XY30    S32     1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+#	CELL.GAIN	STR	SELECT gain FROM camera WHERE chip_id = '{CHIP.NAME}' AND cell_id = '{CELL.NAME}'
+END		
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/suprime/format_raw.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/format_raw.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/format_raw.config	(revision 42661)
@@ -0,0 +1,223 @@
+# The split MecaCam data is stored as single files for each chip, each a simple fits image
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	Subaru
+	INSTRUME	STR	SuprimeCam
+	NAXIS           S32     2
+        NAXIS1          S32     2272
+        NAXIS2          S32     4273
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents a chip
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	EXP-ID	# A PHU keyword for unique identifier
+	CONTENT		STR	DETECTOR	# Key to the CONTENTS menu
+	CONTENT.RULE	STR	{CHIP.NAME} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Content name, chipType
+	nausicaa  STR	XY01_raw:spcam20080721
+	kiki	  STR	XY11_raw:spcam20080721
+	fio	  STR	XY21_raw:spcam20080721
+	sophie	  STR	XY00_raw:spcam20080721
+	sheeta	  STR	XY10_raw:spcam20080721
+	satsuki	  STR	XY20_raw:spcam20080721
+	chihiro	  STR	XY41_raw:spcam20080721
+	clarisse  STR	XY31_raw:spcam20080721
+	ponyo	  STR	XY40_raw:spcam20080721
+	san	  STR	XY30_raw:spcam20080721
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	spcam20080721 METADATA
+	  ch1 STR ch1:ch1
+	  ch2 STR ch2:ch2
+	  ch3 STR ch4:ch3
+	  ch4 STR ch4:ch4
+	END
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts for this type
+	ch1   METADATA
+	       CELL.BIASSEC.SOURCE	STR	VALUE
+	       CELL.TRIMSEC.SOURCE	STR	VALUE
+	       CELL.BIASSEC		STR	[521:568,1:48]
+	       CELL.TRIMSEC		STR	[9:520:49,4225]
+	       CELL.X0 			S32	0
+	       CELL.GAIN.SOURCE 	STR 	HEADER
+	       CELL.GAIN	 	STR	GAIN
+	END
+	# Cell type, concepts for this type
+	ch2   METADATA
+	       CELL.BIASSEC.SOURCE	STR	VALUE
+	       CELL.TRIMSEC.SOURCE	STR	VALUE
+	       CELL.BIASSEC		STR	[569:616,1:48]
+	       CELL.TRIMSEC		STR	[617:1128,49:4225]
+	       CELL.X0 			S32	0
+	       CELL.GAIN.SOURCE 	STR 	HEADER
+	       CELL.GAIN	 	STR	GAIN
+	END
+	# Cell type, concepts for this type
+	ch3   METADATA
+	       CELL.BIASSEC.SOURCE	STR	VALUE
+	       CELL.TRIMSEC.SOURCE	STR	VALUE
+	       CELL.BIASSEC		STR	[1657:1704,1:48]
+	       CELL.TRIMSEC		STR	[1145:1656,49:4225]
+	       CELL.X0 			S32	0
+	       CELL.GAIN.SOURCE 	STR 	HEADER
+	       CELL.GAIN	 	STR	GAIN
+	END
+	# Cell type, concepts for this type
+	ch4   METADATA
+	       CELL.BIASSEC.SOURCE	STR	VALUE
+	       CELL.TRIMSEC.SOURCE	STR	VALUE
+	       CELL.BIASSEC		STR	[1705:1752,1:48]
+	       CELL.TRIMSEC		STR	[1753:2264,49:4225]
+	       CELL.X0 			S32	0
+	       CELL.GAIN.SOURCE 	STR 	HEADER
+	       CELL.GAIN	 	STR	GAIN
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.OBS         STR     EXP-ID
+	FPA.DETECTOR    STR	DETECTOR
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTER      STR     FILTER01
+        FPA.FILTERID    STR     FILTER01
+        FPA.POSANGLE    STR     INST-PA
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.OBSTYPE	STR	DATA-TYP
+	FPA.OBJECT	STR	OBJECT
+	FPA.FOCUS	STR	FOC-VAL
+	FPA.TIME	STR	MJD
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALTITUDE
+	FPA.AZ		STR	AZIMUTH
+	FPA.TEMP	STR	DET-TMP
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DET-TMP
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+#       CELL.READNOISE  STR     RDNOISE
+	CELL.TIME	STR	MJD
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     BIN-FCT1
+        CELL.YBIN       STR     BIN-FCT2
+
+        # 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  DOM-TMP # Mid truss temperatures (C
+        FPA.TELTEMP.EXTRA  STR  OUT-TMP # Miscellaneous temperatures (C)     
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	Subaru
+	FPA.INSTRUMENT		STR	SuprimeCam
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4224
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4224
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+        CELL.SATURATION         S32     60000
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	50000.0
+        CELL.READNOISE          F32     5.0  # XXX wild guess
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+
+	CHIP.X0		METADATA
+		XY01	S32	23
+		XY11	S32	2121
+		XY21	S32	4221
+		XY00	S32	0
+		XY10	S32	2095
+		XY20	S32	4208
+		XY41	S32	8429
+		XY31	S32	6337
+		XY40	S32	8405
+		XY30	S32	6315
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		XY01	S32	3
+		XY11	S32	2
+		XY21	S32	0
+		XY00	S32	4207
+		XY10	S32	4229
+		XY20	S32	4254
+		XY41	S32	65
+		XY31	S32	26
+		XY40	S32	4253
+		XY30	S32	4252		
+	END
+
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+		XY01	S32	-1
+		XY11	S32	-1
+		XY21	S32	-1
+		XY00	S32 	-1
+		XY10	S32	-1
+		XY20	S32	-1
+		XY41	S32	-1
+		XY31	S32	-1
+		XY40	S32	-1
+		XY30	S32	-1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		XY01	S32	1
+		XY11	S32	1
+		XY21	S32	1
+		XY00	S32 	1
+		XY10	S32	1
+		XY20	S32	1
+		XY41	S32	1
+		XY31	S32	1
+		XY40	S32	1
+		XY30	S32	1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/suprime/format_split.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/format_split.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/format_split.config	(revision 42661)
@@ -0,0 +1,199 @@
+# The split MecaCam data is stored as single files for each chip, each a simple fits image
+
+# How to recognise this type
+RULE	METADATA
+	TELESCOP	STR	Subaru
+	INSTRUME	STR	SuprimeCam
+	OBSERVAT	STR	NAOJ
+#	NAXIS           S32     2
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents a chip
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	EXP-ID	# A PHU keyword for unique identifier
+	CONTENT		STR	DETECTOR	# Key to the CONTENTS menu
+	CONTENT.RULE	STR	{CHIP.NAME} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Content name, chipType
+	nausicaa  STR	XY01:spcam20080721
+	kiki	  STR	XY11:spcam20080721
+	fio	  STR	XY21:spcam20080721
+	sophie	  STR	XY00:spcam20080721
+	sheeta	  STR	XY10:spcam20080721
+	satsuki	  STR	XY20:spcam20080721
+	chihiro	  STR	XY41:spcam20080721
+	clarisse  STR	XY31:spcam20080721
+	ponyo	  STR	XY40:spcam20080721
+	san	  STR	XY30:spcam20080721
+
+	XY01	STR	XY01:spcam20080721
+	XY11	STR	XY11:spcam20080721
+	XY21	STR	XY21:spcam20080721
+	XY00	STR	XY00:spcam20080721
+	XY10	STR	XY10:spcam20080721
+	XY20	STR	XY20:spcam20080721
+	XY41	STR	XY41:spcam20080721
+	XY31	STR	XY31:spcam20080721
+	XY40	STR	XY40:spcam20080721
+	XY30	STR	XY30:spcam20080721
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	spcam20080721  STR    Cell:cell
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts for this type
+	cell   METADATA
+	       CELL.BIASSEC.SOURCE	STR	VALUE
+	       CELL.TRIMSEC.SOURCE	STR	VALUE
+	       CELL.BIASSEC		STR	[0:0,0:0]
+#	       CELL.TRIMSEC		STR	[1:2048,1:4225]
+	       CELL.TRIMSEC		STR	[1:2048,1:4177]
+	       CELL.X0 			S32	0
+	       CELL.GAIN.SOURCE 	STR 	HEADER
+	       CELL.GAIN	 	STR	GAIN
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+        FPA.OBS         STR     EXP-ID
+	FPA.DETECTOR    STR	DETECTOR
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTER      STR     FILTER01
+        FPA.FILTERID    STR     FILTER01
+        FPA.POSANGLE    STR     INST-PA
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.OBSTYPE	STR	DATA-TYP
+	FPA.OBJECT	STR	OBJECT
+	FPA.FOCUS	STR	FOC-VAL
+	FPA.TIME	STR	MJD
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALTITUDE
+	FPA.AZ		STR	AZIMUTH
+	FPA.TEMP	STR	DET-TMP
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DET-TMP
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+#       CELL.READNOISE  STR     RDNOISE
+	CELL.TIME	STR	MJD
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     BIN-FCT1
+        CELL.YBIN       STR     BIN-FCT2
+
+        # 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  DOM-TMP # Mid truss temperatures (C
+        FPA.TELTEMP.EXTRA  STR  OUT-TMP # Miscellaneous temperatures (C)     
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TELESCOPE		STR	Subaru
+	FPA.INSTRUMENT		STR	SuprimeCam
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4224
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4224
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+        CELL.SATURATION         S32     60000
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.SATURATION		F32	50000.0
+        CELL.READNOISE          F32     5.0  # XXX wild guess
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+
+	CHIP.X0		METADATA
+		XY01	S32	23
+		XY11	S32	2121
+		XY21	S32	4221
+		XY00	S32	0
+		XY10	S32	2095
+		XY20	S32	4208
+		XY41	S32	8429
+		XY31	S32	6337
+		XY40	S32	8405
+		XY30	S32	6315
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		XY01	S32	3
+		XY11	S32	2
+		XY21	S32	0
+		XY00	S32	4207
+		XY10	S32	4229
+		XY20	S32	4254
+		XY41	S32	65
+		XY31	S32	26
+		XY40	S32	4253
+		XY30	S32	4252		
+	END
+
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+		XY01	S32	-1
+		XY11	S32	-1
+		XY21	S32	-1
+		XY00	S32 	-1
+		XY10	S32	-1
+		XY20	S32	-1
+		XY41	S32	-1
+		XY31	S32	-1
+		XY40	S32	-1
+		XY30	S32	-1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		XY01	S32	1
+		XY11	S32	1
+		XY21	S32	1
+		XY00	S32 	1
+		XY10	S32	1
+		XY20	S32	1
+		XY41	S32	1
+		XY31	S32	1
+		XY40	S32	1
+		XY30	S32	1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/suprime/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/ppImage.config	(revision 42661)
@@ -0,0 +1,193 @@
+### ppImage recipe configuration file for Megacam
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	NONE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	0		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# for a test, turn off selected detrend types
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	TRUE		# Bias subtraction
+DARK		BOOL	FALSE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+
+# binned output image options
+BIN1.XBIN               S32     18
+BIN1.YBIN               S32     18
+BIN2.XBIN               S32     144
+BIN2.YBIN               S32     144
+
+# megacam needs fringe subtraction
+FRINGE		BOOL	TRUE		# Fringe subtraction
+
+USE.DEBURNED.IMAGE	BOOL	FALSE  # Skip burntool
+
+# this table lists extra constraints which should be applied when
+# selecting the detrend images.
+# note: camera and time are always applied
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+#   EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   DETTYPE STR DOMEFLAT.RAW
+#   VERSION STR SKYFLAT.RAW
+#   VERSION STR DOMEFLAT.CORR.XX
+#   VERSION STR SKYFLAT.CORR
+  END
+  FLAT_CORRECTION METADATA
+    FILTER   STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR FPA.TWILIGHT
+  END
+  SHUTTER METADATA
+  END
+  MASK METADATA
+  END	
+END
+
+# only apply the fringe for these filters
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR i
+FRINGE.FILTERS	STR z
+
+
+# Standard chip processing
+CHIP    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE            # 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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END 
Index: /branches/eam_branches/ippconfig.20240412/suprime/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/ppMerge.config	(revision 42661)
@@ -0,0 +1,40 @@
+
+# Bias combination --- don't want min/max rejection
+PPMERGE_BIAS	METADATA
+   REJ		F32	3.0		# Rejection threshold (sigma)
+   ITER		S32	2		# Number of rejection iterations
+   FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+   FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+   WEIGHTS	BOOL	FALSE		# Use image weights?
+   COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Dark combination --- don't want min/max rejection
+# More aggressive clipping than bias, so as to remove CRs
+PPMERGE_DARK	METADATA
+  REJ		F32	2.0		# Rejection threshold (sigma)
+  ITER		S32	4		# Number of rejection iterations
+  FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+  FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+  WEIGHTS	BOOL	FALSE		# Use image weights?
+  COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Flat combination --- use min/max rejection
+PPMERGE_FLAT	METADATA
+	REJ		F32	3.0		# Rejection threshold (sigma)
+	ITER		S32	1		# Number of rejection iterations
+	FRACHIGH	F32	0.3		# Fraction of high pixels to reject immediately
+	FRACLOW		F32	0.1		# Fraction of low pixels to reject immediately
+	NKEEP		S32	5		# Minimum number of pixels in stack to keep
+	WEIGHTS		BOOL	FALSE		# Use image weights?
+	COMBINE		STR	MEAN		# Statistic to use for combination: 
+END
+
+
+# Fringe combination --- already included in default, above
+PPMERGE_FRINGE	METADATA
+	FRACHIGH	F32	0.1		# Fraction of high pixels to reject immediately
+	WEIGHTS		BOOL	FALSE		# Use image weights?
+END
+
Index: /branches/eam_branches/ippconfig.20240412/suprime/ppStack.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/ppStack.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/ppStack.config	(revision 42661)
@@ -0,0 +1,2 @@
+    CONVOLVE        BOOL   FALSE    
+# we don't need this for megacam
Index: /branches/eam_branches/ippconfig.20240412/suprime/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/psastro.config	(revision 42661)
@@ -0,0 +1,195 @@
+
+# save matched stars?
+PSASTRO.SAVE.REFMATCH      BOOL TRUE  # save refstar matches as table in output smf file
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32     750.
+PSASTRO.GRID.SCALE     F32      50.
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32 0.25
+
+# pmAstromGridMatch parameters
+PSASTRO.GRID.MIN.ANGLE F32 -0.5 # start angle (degrees)
+PSASTRO.GRID.MAX.ANGLE F32 +0.5
+PSASTRO.GRID.DEL.ANGLE F32  0.25
+
+PSASTRO.GRID.MIN.SCALE F32  0.96
+PSASTRO.GRID.MAX.SCALE F32  1.04
+PSASTRO.GRID.DEL.SCALE F32  0.02
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32      150
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.FIT.NITER S32   5
+PSASTRO.MATCH.RADIUS    F32   100.0
+PSASTRO.MATCH.RADIUS.N0 F32   100.0
+PSASTRO.MATCH.RADIUS.N1 F32   60.0
+PSASTRO.MATCH.RADIUS.N2 F32   40.0
+PSASTRO.MATCH.RADIUS.N3 F32   30.0
+PSASTRO.MATCH.RADIUS.N4 F32   20.0
+PSASTRO.MATCH.UNIQ.ITER S32   4
+PSASTRO.CHIP.ORDER	S32   1
+
+PSASTRO.MAX.NRAW       S32      1500   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF       S32      1500   # max stars accepted for fitting (0 for all)
+
+PSASTRO.MIN.INST.MAG.RAW       F32      -20.0  # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32      -11.5  # max instrumental magnitude for stars accepted for fitting
+PSASTRO.GRID.MIN.INST.MAG.RAW  F32      -20.0  # min instrumental magnitude for stars accepted for grid search
+PSASTRO.GRID.MAX.INST.MAG.RAW  F32      -11.5  # max instrumental magnitude for stars accepted for grid search
+PSASTRO.GRID.MIN.SIGMA 	       F32  1.0
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      5   # min fitted stars in solution
+
+PSASTRO.MAX.ALLOWED.FWHM      F32       25
+
+PSASTRO.MOSAIC.MODE           BOOL     TRUE
+
+# for iterations >= N, require a single match per reference
+PSASTRO.MOSAIC.CHIP.NITER     S32      5  # fit clipping iterations
+PSASTRO.MOSAIC.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+PSASTRO.MOSAIC.UNIQ.ITER      S32      3
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    1.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    1.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N4 F32    2.00 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N5 F32    5.00 # max allow error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.RADIUS.N0    F32    40.0
+PSASTRO.MOSAIC.RADIUS.N1    F32    35.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N2    F32    30.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N3    F32    25.0 
+PSASTRO.MOSAIC.RADIUS.N4    F32    20.0 
+PSASTRO.MOSAIC.RADIUS.N5    F32    10.0 
+
+PSASTRO.MOSAIC.CHIP.ORDER     S32      1
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      2 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      2 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      2 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      2 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N5  S32      2 # fit order (-1 means use default)
+
+PSASTRO.MOSAIC.GRADIENT.NX    S32      5   # number of x-dir cells per chip
+PSASTRO.MOSAIC.GRADIENT.NY    S32      5   # number of y-dir cells per chip
+
+# use this recipe to set a tight constraint
+PSASTRO.FINE METADATA
+  PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+  PSASTRO.MOSAIC.RADIUS.N0    F32    8.0
+  PSASTRO.MOSAIC.RADIUS.N1    F32    0.0
+  PSASTRO.MOSAIC.RADIUS.N2    F32    4.0
+  PSASTRO.MOSAIC.RADIUS.N3    F32    4.0
+
+  PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+END
+
+# use this recipe to set a tight constraint
+PSASTRO_COARSE METADATA
+  PSASTRO.GRID.SCALE          F32     50.0
+  PSASTRO.TWEAK.RANGE         F32      1.0
+
+  DVO.GETSTAR.MIN.MAG         F32     10.0
+  DVO.GETSTAR.MAX.RHO         F32  12000.0
+
+  PSASTRO.MAX.INST.MAG.RAW       F32 -9.0  # max instrumental magnitude for stars accepted for fitting
+  PSASTRO.GRID.MAX.INST.MAG.RAW  F32 -9.0  # max instrumental magnitude for stars accepted for grid search
+
+  PSASTRO.GRID.MIN.SIGMA      F32    4.0
+
+  PSASTRO.MATCH.FIT.NITER S32   4
+  PSASTRO.MATCH.RADIUS.N0 F32   60.0
+  PSASTRO.MATCH.RADIUS.N1 F32   30.0
+  PSASTRO.MATCH.RADIUS.N2 F32   15.0
+  PSASTRO.MATCH.RADIUS.N3 F32    8.0
+
+  PSASTRO.MOSAIC.MAX.ERROR.N0 F32    0.0 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N1 F32    0.0 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.0 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.0 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    2.0 # max allow error for valid solution (arcsec)
+
+  PSASTRO.MOSAIC.RADIUS.N0    F32   60.0
+  PSASTRO.MOSAIC.RADIUS.N1    F32   30.0
+  PSASTRO.MOSAIC.RADIUS.N2    F32   15.0
+  PSASTRO.MOSAIC.RADIUS.N3    F32    8.0
+  PSASTRO.MOSAIC.RADIUS.N4    F32    4.0
+
+  PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N4  S32      1 # fit order (-1 means use default)
+END
+
+PSASTRO.CATDIR              STR      PS1.REF.20120524
+DVO.GETSTAR.MAX.RHO         F32      30000.0
+DVO.GETSTAR.MIN.MAG         F32      -10.0
+DVO.GETSTAR.MIN.MAG.INST    F32     -40.0
+
+# we match the FILTER.ID (corresponding to the FILTER, see camera.config) to the dvo db PHOTCODE
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR u
+  ZEROPT   F32 23.6
+  PHOTCODE STR g
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 26.46
+  PHOTCODE STR g
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32 25.98
+  PHOTCODE STR r
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+  ZEROPT   F32 25.74
+  PHOTCODE STR i
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+  ZEROPT   F32 24.80
+  PHOTCODE STR z
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR Vr
+  ZEROPT   F32 25.0
+  PHOTCODE STR g
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR Rc
+  ZEROPT   F32 25.0
+  PHOTCODE STR r
+END
+
+# plotting options
+PSASTRO.PLOT.INST.MAG.MAX F32 -9.0
+PSASTRO.PLOT.INST.MAG.MIN F32 -17.0
+PSASTRO.PLOT.REF.MAG.MIN  F32 +10.0
+PSASTRO.PLOT.REF.MAG.MAX  F32 +25.0
+
Index: /branches/eam_branches/ippconfig.20240412/suprime/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/psphot.config	(revision 42661)
@@ -0,0 +1,30 @@
+
+# turn these on to see specific outputs
+SAVE.PLOTS     	BOOL    FALSE
+
+# PSF model parameters : choose the PSF model desired
+# PSF_MODEL           STR  PS_MODEL_QGAUSS
+PSF_MODEL           STR  PS_MODEL_PS1_V1
+# PSF_MODEL           STR  PS_MODEL_RGAUSS
+
+PSF.TREND.MODE STR MAP
+PSF.TREND.NX   S32 1
+PSF.TREND.NY   S32 1
+PSF_SN_LIM F32 5              # minimum S/N for stars used for PSF model
+
+PEAKS_SMOOTH_SIGMA F32 2.5             # smoothing kernel sigma in pixels
+PEAKS_NSIGMA_LIMIT F32 5.0            # peak significance threshold
+MOMENTS_SCALE F32 0.1 # PSFs are generally small, avoid the CRs
+
+PSF_FIT_RADIUS_SCALE F32 10.0 # fitting radius for test PSF model
+
+PSPHOT.CRMASK.APPLY BOOL  TRUE		  # TEST THIS before enabling.
+
+MOMENTS_SX_MIN                      F32   1.0
+MOMENTS_SY_MIN                      F32   1.0
+                                                                                                                                                              
+BACKGROUND.XBIN                     S32   400             # size of background superpixels
+BACKGROUND.YBIN                     S32   400             # size of background superpixels
+BACKGROUND.XSAMPLE                  F32   2.0             # size of background superpixels
+BACKGROUND.YSAMPLE                  F32   2.0             # size of background superpixels
+IMSTATS_NPIX                        S32   40000           # number of pixels to use for sky estimate boxes:
Index: /branches/eam_branches/ippconfig.20240412/suprime/pswarp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/pswarp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/pswarp.config	(revision 42661)
@@ -0,0 +1,3 @@
+### Megacam recipe for pswarp
+
+ASTROM.SOURCE	STR	PSASTRO.OUTPUT	# Source file rule for astrometry, or NULL
Index: /branches/eam_branches/ippconfig.20240412/suprime/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/suprime/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/suprime/rejections.config	(revision 42661)
@@ -0,0 +1,38 @@
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  0.5
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SNR         F32  0.0
+  IMFILE.BIN.STDEV   F32  0.5
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  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  3.0
+  ENSEMBLE.STDEV     F32  3.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
+# IMFILE.MEAN is the maximum permitted mean value for an imfile, relative to the standard deviation
+# IMFILE.STDEV is the maximum permitted standard deviation for an imfile
+# EXP.MEAN is the maximum permitted mean value for an exposure, relative to the standard deviation
+# EXP.STDEV is the maximum permitted standard deviation for an exposure
+# EXP.MEANSTDEV is the maximum permitted mean standard deviation for an exposure relative to the mean
+# ENSEMBLE.MEAN is the maximum permitted mean for an ensemble of exposures
+# ENSEMBLE.STDEV is the maximum permitted standard deviation for an ensemble of exposures
+# ENSEMBLE.MEANSTDEV is the maximum permitted mean standard deviation for an ensemble of exposures
+# IMFILE.SNR is the minimum permitted signal-to-noise for an imfile
+# EXP.SNR is the minimum permitted signal-to-noise for an exposure
+# These values (all except FILTER) may be zero, in which case no clipping is applied.
Index: /branches/eam_branches/ippconfig.20240412/system.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/system.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/system.config	(revision 42661)
@@ -0,0 +1,72 @@
+## system-wide options : these are concepts not specific to any camera or recipe
+
+### Setups for each camera system
+CAMERAS		METADATA
+ 	MEGACAM			STR	megacam/camera.config		# CFHT MegaCam
+	CFH12K			STR	cfh12k/camera.config		# CFHT 12K
+	ISP-Apogee     		STR	isp/camera.config		# Pan-STARRS Imaging sky probe
+	MOSAIC2 		STR	mosaic2/camera.config	        # CTIO MOSAIC2 camera, for ESSENCE
+	SDSSmosaic		STR	sdssmosaic/camera.config	# SDSS, mosaic version
+	SDSS			STR	sdss/camera.config		# Sloan Digital Sky Survey
+ 	GPC2			STR	gpc2/camera.config		# Pan-STARRS GPC2
+	GPC1			STR	gpc1/camera.config		# Pan-STARRS GPC1
+	GPC1-TDI		STR	gpc1-tdi/camera.config		# Pan-STARRS GPC1 with TDI guiding
+	TC3			STR	tc3/camera.config		# Pan-STARRS Test Camera III
+	ESOWFI			STR	esowfi/camera.config		# ESO Wide-Field Imager
+	LBCRED                  STR     lbc_red/camera.config           # Large Binocular Camera Red
+	LULIN			STR	lulin/camera.config		# Lulin Optical Telescope 1m
+	UH8K			STR	uh8k/camera.config		# WFI/8k on UH88
+	VYSOS5			STR	vysos5/camera.config		# VYSOS 5in
+	VYSOS20			STR	vysos20/camera.config		# VYSOS 5in
+	SSP			STR	ssp/camera.config		# Pan-STARRS spectroscopic sky probe
+	HSC			STR	hsc/camera.config		# Subaru Hypersuprime cam
+	SUPRIMECAM		STR	suprime/camera.config           # Subaru Suprimecam
+	SIMMOSAIC		STR	simmosaic/camera.config		# Simulated mosaic, for testing
+	SIMTEST			STR	simtest/camera.config		# Simulation test camera
+	SIMPLE			STR	simple/camera.config		# If all else fails....
+END
+
+## directories exist for other camera, introduce if they are tested and working
+#	UCAM			STR	ucam/camera.config
+#	LRIS_BLUE		STR	lris_blue/camera.config
+#	LRIS_RED		STR	lris_red/camera.config
+
+# Header keywords for skycell concepts; required because DVO doesn't read HIERARCH
+SKYCELLS	METADATA
+	FPA.TIME	STR	MJD-OBS
+	CELL.TIME	STR	MJD-OBS
+	FPA.EXPOSURE	STR	EXPTIME
+	CELL.EXPOSURE	STR	EXPTIME
+	FPA.AIRMASS	STR	AIRMASS
+END
+
+RECIPES		METADATA		# Site-level recipes
+ 	MASKS		STR		recipes/masks.16bit.config	# Mask values
+ 	REJECTIONS	STR		recipes/rejections.config # Rejection for detrend creation
+	PPIMAGE		STR		recipes/ppImage.config  # Image reduction
+ 	PPMERGE		STR		recipes/ppMerge.config	# Image combination
+  	PPSTATS		STR		recipes/ppStats.config	# Image statistics
+ 	PSPHOT		STR     	recipes/psphot.config	# Photometry
+ 	PSASTRO		STR		recipes/psastro.config	# Astrometry
+ 	PPSTACK		STR		recipes/ppStack.config	# Combination
+ 	PSWARP		STR		recipes/pswarp.config   # Warping
+ 	PPSIM		STR		recipes/ppSim.config	# Simulations
+ 	PPSUB		STR		recipes/ppSub.config	# Subtraction
+ 	GDIFF		STR		recipes/gDiff.config	# Subtraction
+ 	ADDSTAR         STR             recipes/addstar.config  # addstar to dvodb
+ 	JPEG		STR		recipes/jpeg.mdc	# JPEG creation
+  	PPSTATS_METADATA STR		recipes/ppStatsFromMetadata.config # Image statistics
+ 	DQSTATS         STR             recipes/dqStatsTool.config # data quality statistics
+  	DVOCORR         STR		recipes/dvocorr.config # Image statistics
+ 	PPSKYCELL	STR		recipes/ppSkycell.config  # JPEGs of skycells
+ 	PPNOISEMAP	STR		recipes/ppNoiseMap.config # used to create the noise map
+	CENSOR		STR		recipes/censor.config # used to create the noise map
+	PPSMOOTH	STR		recipes/ppSmooth.config  # stand-alone image smoothing
+	PPVIZPSF	STR		recipes/ppVizPSF.mdc # PSF visualisation
+        NIGHTLY_SCIENCE STR             recipes/nightly_science.config # Nightly Science
+	PPBACKGROUND	STR		recipes/ppBackground.mdc       # Background restoration
+        PSVIDEOPHOT	STR		recipes/psvideophot.config # video cell photometry
+        PSTAMP          STR             recipes/pstamp.config       # postage stamp server
+        FPCAMERA        STR             recipes/fpcamera.config       # forced photometry on chip
+#	REMOTE          STR             recipes/remote_hosts.config # Remote supercomputer processing
+END
Index: /branches/eam_branches/ippconfig.20240412/tc3/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tc3/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tc3/Makefile.am	(revision 42661)
@@ -0,0 +1,20 @@
+
+installdir = $(datadir)/ippconfig/tc3
+
+install_files = \
+	dvo.config        \
+	camera.config     \
+	format.config     \
+	format_ps2.config \
+	format_tc1.config \
+	ppImage.config    \
+	ppMerge.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/tc3/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tc3/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tc3/camera.config	(revision 42661)
@@ -0,0 +1,127 @@
+# Camera configuration file for Cfh12k: describes the camera
+
+# File formats that we know about
+FORMATS		METADATA
+	RAW	STR	tc3/format.config
+	PS2	STR	tc3/format_ps2.config
+	TC1	STR	tc3/format_tc1.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA	METADATA
+	CCID58-1-06b2	STR	xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	CCID45-1-14A 	STR	xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	CCID45-1-11A 	STR	xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	CCID45-1-22A 	STR	xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	CCID45-1-04C 	STR	xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	CCID45-1-13A 	STR	xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	CCID45-1-05A 	STR	xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	CCID45-1-19A 	STR	xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+
+	XY00            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY01            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY02            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY03            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY10            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY11            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY12            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY13            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY20            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY21            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY22            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY23            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY30            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY31            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY32            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+	XY33            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+
+	xy02            STR     xy00 xy01 xy02 xy03 xy04 xy05 xy06 xy07 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 xy70 xy71 xy72 xy73 xy74 xy75 xy76 xy77
+END
+
+# ccd00
+# ccd01
+# ccd10
+# ccd11
+# ccd20
+# ccd21
+# ccd30
+# ccd31
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+   r        MULTI
+   r        STR   Not available
+   g        STR   g.00001
+   r        STR   r.00001
+   i        STR   i.00001
+   z        STR   z.00001
+   y        STR   y.00001
+   w        STR   w.00001
+	NONE	STR	NONE
+	B	STR	B
+	V	STR	V
+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
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options (if not listed here, we only use the default)
+RECIPES		METADATA
+	PPIMAGE		STR	tc3/ppImage.config
+	PPMERGE		STR	tc3/ppMerge.config
+#	PSASTRO		STR	tc3/psastro.config
+#	PSPHOT		STR	tc3/psphot.config
+#	PSWARP		STR	tc3/pswarp.config
+#       PSVIDEOPHOT     STR     tc3/psvideophot.config
+#	REJECTIONS      STR     tc3/rejections.config       # rejection recipe
+#	PPSTACK		STR	tc3/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
+
Index: /branches/eam_branches/ippconfig.20240412/tc3/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tc3/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tc3/dvo.config	(revision 42661)
@@ -0,0 +1,63 @@
+
+# location of DVO database tables
+CATDIR			/data/alala.0/eugene/isp/catdir
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+DATE-KEYWORD		DATE-OBS
+DATE-MODE		yyyy-mm-dd
+UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		NONE
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
Index: /branches/eam_branches/ippconfig.20240412/tc3/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tc3/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tc3/format.config	(revision 42661)
@@ -0,0 +1,362 @@
+# Camera format configuration for Pan-STARRS Test Camera 3
+
+# How to recognise this type
+RULE	METADATA
+#        IMAGESWV        STR     GPC DaqCom v2.05 (Mar 08 2007)
+	ORIGIN		STR	PS1
+	CONTROLR	STR	STARGRASP
+	INSTRUME	STR	tc3
+	EXTEND		BOOL	T
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents a chip
+	EXTENSIONS	STR	CELL	# The extensions represent cells
+	FPA.OBS	STR	OBSTYPE	# A PHU keyword for unique identifier
+	CONTENT	        STR     DETECTOR # How to determine content of FITS file
+	CONTENT.RULE	STR	{CHIP.NAME}	# How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# File identifier with corresponding file layout name
+	CCID58-1-06b2	STR	CCID58-1-06b2:CCD_10u
+	CCID45-1-14A	STR	CCID45-1-14A:CCD_12u
+	CCID45-1-11A	STR	CCID45-1-11A:CCD_12u
+	CCID45-1-22A	STR	CCID45-1-22A:CCD_12u
+	CCID45-1-04C	STR	CCID45-1-04C:CCD_10u
+	CCID45-1-13A	STR	CCID45-1-13A:CCD_12u
+	CCID45-1-05A	STR	CCID45-1-05A:CCD_12u
+	CCID45-1-19A	STR	CCID45-1-19A:CCD_12u
+END
+
+# Specify the layout
+CHIPS	METADATA
+	CCD_10u		METADATA
+		# Extension name, cellName:cellType
+		xy00	STR	xy00:pitch10u
+		xy01	STR	xy01:pitch10u
+		xy02	STR	xy02:pitch10u
+		xy03	STR	xy03:pitch10u
+		xy04	STR	xy04:pitch10u
+		xy05	STR	xy05:pitch10u
+		xy06	STR	xy06:pitch10u
+		xy07	STR	xy07:pitch10u
+		xy10	STR	xy10:pitch10u
+		xy11	STR	xy11:pitch10u
+		xy12	STR	xy12:pitch10u
+		xy13	STR	xy13:pitch10u
+		xy14	STR	xy14:pitch10u
+		xy15	STR	xy15:pitch10u
+		xy16	STR	xy16:pitch10u
+		xy17	STR	xy17:pitch10u
+		xy20	STR	xy20:pitch10u
+		xy21	STR	xy21:pitch10u
+		xy22	STR	xy22:pitch10u
+		xy23	STR	xy23:pitch10u
+		xy24	STR	xy24:pitch10u
+		xy25	STR	xy25:pitch10u
+		xy26	STR	xy26:pitch10u
+		xy27	STR	xy27:pitch10u
+		xy30	STR	xy30:pitch10u
+		xy31	STR	xy31:pitch10u
+		xy32	STR	xy32:pitch10u
+		xy33	STR	xy33:pitch10u
+		xy34	STR	xy34:pitch10u
+		xy35	STR	xy35:pitch10u
+		xy36	STR	xy36:pitch10u
+		xy37	STR	xy37:pitch10u
+		xy40	STR	xy40:pitch10u
+		xy41	STR	xy41:pitch10u
+		xy42	STR	xy42:pitch10u
+		xy43	STR	xy43:pitch10u
+		xy44	STR	xy44:pitch10u
+		xy45	STR	xy45:pitch10u
+		xy46	STR	xy46:pitch10u
+		xy47	STR	xy47:pitch10u
+		xy50	STR	xy50:pitch10u
+		xy51	STR	xy51:pitch10u
+		xy52	STR	xy52:pitch10u
+		xy53	STR	xy53:pitch10u
+		xy54	STR	xy54:pitch10u
+		xy55	STR	xy55:pitch10u
+		xy56	STR	xy56:pitch10u
+		xy57	STR	xy57:pitch10u
+		xy60	STR	xy60:pitch10u
+		xy61	STR	xy61:pitch10u
+		xy62	STR	xy62:pitch10u
+		xy63	STR	xy63:pitch10u
+		xy64	STR	xy64:pitch10u
+		xy65	STR	xy65:pitch10u
+		xy66	STR	xy66:pitch10u
+		xy67	STR	xy67:pitch10u
+		xy70	STR	xy70:pitch10u
+		xy71	STR	xy71:pitch10u
+		xy72	STR	xy72:pitch10u
+		xy73	STR	xy73:pitch10u
+		xy74	STR	xy74:pitch10u
+		xy75	STR	xy75:pitch10u
+		xy76	STR	xy76:pitch10u
+		xy77	STR	xy77:pitch10u
+	END
+	CCD_12u		METADATA
+		# Extension name, cellName:cellType
+		xy00	STR	xy00:pitch12u
+		xy01	STR	xy01:pitch12u
+		xy02	STR	xy02:pitch12u
+		xy03	STR	xy03:pitch12u
+		xy04	STR	xy04:pitch12u
+		xy05	STR	xy05:pitch12u
+		xy06	STR	xy06:pitch12u
+		xy07	STR	xy07:pitch12u
+		xy10	STR	xy10:pitch12u
+		xy11	STR	xy11:pitch12u
+		xy12	STR	xy12:pitch12u
+		xy13	STR	xy13:pitch12u
+		xy14	STR	xy14:pitch12u
+		xy15	STR	xy15:pitch12u
+		xy16	STR	xy16:pitch12u
+		xy17	STR	xy17:pitch12u
+		xy20	STR	xy20:pitch12u
+		xy21	STR	xy21:pitch12u
+		xy22	STR	xy22:pitch12u
+		xy23	STR	xy23:pitch12u
+		xy24	STR	xy24:pitch12u
+		xy25	STR	xy25:pitch12u
+		xy26	STR	xy26:pitch12u
+		xy27	STR	xy27:pitch12u
+		xy30	STR	xy30:pitch12u
+		xy31	STR	xy31:pitch12u
+		xy32	STR	xy32:pitch12u
+		xy33	STR	xy33:pitch12u
+		xy34	STR	xy34:pitch12u
+		xy35	STR	xy35:pitch12u
+		xy36	STR	xy36:pitch12u
+		xy37	STR	xy37:pitch12u
+		xy40	STR	xy40:pitch12u
+		xy41	STR	xy41:pitch12u
+		xy42	STR	xy42:pitch12u
+		xy43	STR	xy43:pitch12u
+		xy44	STR	xy44:pitch12u
+		xy45	STR	xy45:pitch12u
+		xy46	STR	xy46:pitch12u
+		xy47	STR	xy47:pitch12u
+		xy50	STR	xy50:pitch12u
+		xy51	STR	xy51:pitch12u
+		xy52	STR	xy52:pitch12u
+		xy53	STR	xy53:pitch12u
+		xy54	STR	xy54:pitch12u
+		xy55	STR	xy55:pitch12u
+		xy56	STR	xy56:pitch12u
+		xy57	STR	xy57:pitch12u
+		xy60	STR	xy60:pitch12u
+		xy61	STR	xy61:pitch12u
+		xy62	STR	xy62:pitch12u
+		xy63	STR	xy63:pitch12u
+		xy64	STR	xy64:pitch12u
+		xy65	STR	xy65:pitch12u
+		xy66	STR	xy66:pitch12u
+		xy67	STR	xy67:pitch12u
+		xy70	STR	xy70:pitch12u
+		xy71	STR	xy71:pitch12u
+		xy72	STR	xy72:pitch12u
+		xy73	STR	xy73:pitch12u
+		xy74	STR	xy74:pitch12u
+		xy75	STR	xy75:pitch12u
+		xy76	STR	xy76:pitch12u
+		xy77	STR	xy77:pitch12u
+	END
+END		
+
+# Specify the cell data
+CELLS	METADATA
+	pitch10u	METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.XSIZE		S32	590
+		CELL.YSIZE		S32	598
+	END
+
+	pitch12u	METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+		CELL.XSIZE		S32	477
+		CELL.YSIZE		S32	496
+	END
+	pitch10u	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[575:606,1:594]
+		CELL.TRIMSEC		STR	[1:574,1:594]
+	#	CELL.BIASSEC		STR	BIASSEC
+	#	CELL.TRIMSEC		STR	DATASEC
+	END
+
+	# This is just in here for fun
+	pitch12u	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1:10,1:512];[523:574,1:512]
+		CELL.TRIMSEC		STR	[11:522,1:512]
+	#	CELL.BIASSEC		STR	BIASSEC
+	#	CELL.TRIMSEC		STR	TRIMSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.DETECTOR	STR	DETECTOR
+        FPA.AIRMASS     STR     AIRMASS
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+#	FPA.OBJECT	STR	OBJECT		# Not always available
+#        FPA.FILTERID    STR     FILTER		# Not available from OTIS
+#        FPA.FILTER      STR     FILTER		# Not available from OTIS
+        FPA.POSANGLE    STR     ROTANGLE
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+        FPA.RADECSYS    STR     RADECSYS
+	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	MJD-OBS
+	FPA.ALT		STR	TELALT
+	FPA.AZ		STR	TELAZ
+	FPA.TEMP	STR	DETTEM
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	DETTEM
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+	CELL.TIME	STR	MJD-OBS
+        CELL.SATURATION STR     SATURATE
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+#	CELL.BAD	STR	BADLEVEL
+
+#### How to get the cell coordiantes from readout coordinates
+#	READOUT.X0		STR	CNPIX1
+#	READOUT.Y0		STR	CNPIX2
+
+### How to get the chip coordinates from cell coordinates
+	CELL.X0		STR	IMNPIX1
+	CELL.Y0		STR	IMNPIX2
+	CELL.XPARITY	STR	IMTM1_1
+	CELL.YPARITY	STR	IMTM2_2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+	FPA.TIMESYS		STR	UTC
+	CELL.TIMESYS		STR	UTC
+	FPA.FILTERID		STR	NONE
+	FPA.FILTER		STR	NONE
+	CELL.GAIN		F32	1.0
+	CELL.READNOISE          F32     10.0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.BAD                S32     0
+
+	CHIP.XSIZE.DEPEND	STR	CHIP.NAME
+	CHIP.XSIZE	METADATA
+		CCID58-1-06b2	S32	4837		# 10 micron pitch
+		CCID45-1-14A	S32	4033
+		CCID45-1-11A	S32	4033
+		CCID45-1-22A	S32	4033
+		CCID45-1-04C	S32	4837		# 10 micron pitch
+		CCID45-1-13A	S32	4033
+		CCID45-1-05A	S32	4033    
+		CCID45-1-19A	S32	4033 
+	END
+
+	CHIP.YSIZE.DEPEND	STR	CHIP.NAME
+	CHIP.YSIZE	METADATA
+		CCID58-1-06b2	S32	4829		# 10 micron pitch
+		CCID45-1-14A	S32	4031
+		CCID45-1-11A	S32	4031
+		CCID45-1-22A	S32	4031
+		CCID45-1-04C	S32	4829		# 10 micron pitch
+		CCID45-1-13A	S32	4031
+		CCID45-1-05A	S32	4031    
+		CCID45-1-19A	S32	4031 
+	END
+
+#		CCID58-1-06b2	0,0
+#		CCID45-1-14A	0,1
+#		CCID45-1-11A	1,0
+#		CCID45-1-22A	1,1
+#		CCID45-1-04C	2,0
+#		CCID45-1-13A	2,1
+#		CCID45-1-05A	3,0
+#		CCID45-1-19A	3,1
+
+	### How to get FPA coordinates from chip coordinates
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		CCID58-1-06b2	S32	0
+		CCID45-1-14A	S32	0
+		CCID45-1-11A	S32	4900
+		CCID45-1-22A	S32	4900
+		CCID45-1-04C	S32	9800
+		CCID45-1-13A	S32	9800
+		CCID45-1-05A	S32	14700
+		CCID45-1-19A	S32	14700 
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		CCID58-1-06b2	S32	0
+		CCID45-1-14A	S32	4900
+		CCID45-1-11A	S32	0
+		CCID45-1-22A	S32	4900
+		CCID45-1-04C	S32	0
+		CCID45-1-13A	S32	4900
+		CCID45-1-05A	S32	0
+		CCID45-1-19A	S32	4900
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+		CCID58-1-06b2	S32	+1
+		CCID45-1-14A	S32	+1
+		CCID45-1-11A	S32	+1
+		CCID45-1-22A	S32	+1
+		CCID45-1-04C	S32	+1
+		CCID45-1-13A	S32	+1
+		CCID45-1-05A	S32	+1
+		CCID45-1-19A	S32	+1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		CCID58-1-06b2	S32	+1
+		CCID45-1-14A	S32	+1
+		CCID45-1-11A	S32	+1
+		CCID45-1-22A	S32	+1
+		CCID45-1-04C	S32	+1
+		CCID45-1-13A	S32	+1
+		CCID45-1-05A	S32	+1
+		CCID45-1-19A	S32	+1
+	END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/tc3/format_ps2.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tc3/format_ps2.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tc3/format_ps2.config	(revision 42661)
@@ -0,0 +1,317 @@
+# Camera format configuration for Pan-STARRS Test Camera 3
+
+# How to recognise this type
+RULE	METADATA
+#       IMAGESWV        STR     GPC DaqCom v2.05 (Mar 08 2007)
+	ORIGIN		STR	PS2
+	CONTROLR	STR	STARGRASP
+	INSTRUME	STR	tc3
+#	EXTEND		BOOL	T
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents a chip
+	EXTENSIONS	STR	CELL	# The extensions represent cells
+	FPA.OBS	STR	OBSTYPE	# A PHU keyword for unique identifier
+	CONTENT	        STR     DETECTOR # How to determine content of FITS file
+	CONTENT.RULE	STR	{CHIP.NAME}	# How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# File identifier with corresponding file layout name
+  	CCID58-1-09a2   STR     XY00:CCD_10u
+  	CCID58-1-18a1   STR     XY01:CCD_10u
+  	CCID58-2-18b2   STR     XY02:CCD_10u
+  	CCID58-2-16a2   STR     XY03:CCD_10u
+  	CCID58-2-17a2   STR     XY10:CCD_10u
+  	CCID58-2-16a1   STR     XY11:CCD_10u
+  	CCID58-2-10b2   STR     XY12:CCD_10u
+  	CCID58-1-12a1   STR     XY13:CCD_10u
+  	CCID58-2-07a2   STR     XY20:CCD_10u
+  	CCID58-2-07a1   STR     XY21:CCD_10u
+  	CCID58-1-06b2   STR     XY22:CCD_10u
+  	CCID58-2-14a1   STR     XY23:CCD_10u
+  	CCID58-1-13a1   STR     XY30:CCD_10u
+  	CCID58-3-14a2   STR     XY31:CCD_10u
+  	CCID58-1-04b2   STR     XY32:CCD_10u
+  	CCID58-1-14a2   STR     XY33:CCD_10u
+END
+
+# Specify the layout
+CHIPS	METADATA
+	CCD_10u		METADATA
+		# Extension name, cellName:cellType
+		xy00	STR	xy00:pitch10u
+		xy01	STR	xy01:pitch10u
+		xy02	STR	xy02:pitch10u
+		xy03	STR	xy03:pitch10u
+		xy04	STR	xy04:pitch10u
+		xy05	STR	xy05:pitch10u
+		xy06	STR	xy06:pitch10u
+		xy07	STR	xy07:pitch10u
+		xy10	STR	xy10:pitch10u
+		xy11	STR	xy11:pitch10u
+		xy12	STR	xy12:pitch10u
+		xy13	STR	xy13:pitch10u
+		xy14	STR	xy14:pitch10u
+		xy15	STR	xy15:pitch10u
+		xy16	STR	xy16:pitch10u
+		xy17	STR	xy17:pitch10u
+		xy20	STR	xy20:pitch10u
+		xy21	STR	xy21:pitch10u
+		xy22	STR	xy22:pitch10u
+		xy23	STR	xy23:pitch10u
+		xy24	STR	xy24:pitch10u
+		xy25	STR	xy25:pitch10u
+		xy26	STR	xy26:pitch10u
+		xy27	STR	xy27:pitch10u
+		xy30	STR	xy30:pitch10u
+		xy31	STR	xy31:pitch10u
+		xy32	STR	xy32:pitch10u
+		xy33	STR	xy33:pitch10u
+		xy34	STR	xy34:pitch10u
+		xy35	STR	xy35:pitch10u
+		xy36	STR	xy36:pitch10u
+		xy37	STR	xy37:pitch10u
+		xy40	STR	xy40:pitch10u
+		xy41	STR	xy41:pitch10u
+		xy42	STR	xy42:pitch10u
+		xy43	STR	xy43:pitch10u
+		xy44	STR	xy44:pitch10u
+		xy45	STR	xy45:pitch10u
+		xy46	STR	xy46:pitch10u
+		xy47	STR	xy47:pitch10u
+		xy50	STR	xy50:pitch10u
+		xy51	STR	xy51:pitch10u
+		xy52	STR	xy52:pitch10u
+		xy53	STR	xy53:pitch10u
+		xy54	STR	xy54:pitch10u
+		xy55	STR	xy55:pitch10u
+		xy56	STR	xy56:pitch10u
+		xy57	STR	xy57:pitch10u
+		xy60	STR	xy60:pitch10u
+		xy61	STR	xy61:pitch10u
+		xy62	STR	xy62:pitch10u
+		xy63	STR	xy63:pitch10u
+		xy64	STR	xy64:pitch10u
+		xy65	STR	xy65:pitch10u
+		xy66	STR	xy66:pitch10u
+		xy67	STR	xy67:pitch10u
+		xy70	STR	xy70:pitch10u
+		xy71	STR	xy71:pitch10u
+		xy72	STR	xy72:pitch10u
+		xy73	STR	xy73:pitch10u
+		xy74	STR	xy74:pitch10u
+		xy75	STR	xy75:pitch10u
+		xy76	STR	xy76:pitch10u
+		xy77	STR	xy77:pitch10u
+	END
+END		
+
+# Specify the cell data
+CELLS	METADATA
+	pitch10u	METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+	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.EXPOSURE    STR     EXPREQ          # Requested exposure time, presumably camera exposure time
+        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.PON.TIME    STR     PONTIME
+#	FPA.TELESCOPE	STR	TELESCOP -- hardwired for format
+#	FPA.INSTRUMENT	STR	INSTRUME -- hardwired for format
+#	FPA.DETECTOR	STR	DETECTOR -- hardwired for format
+
+        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.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
+	CHIP.VIDEOCELL  STR     CELLMODE
+
+        CELL.EXPOSURE   STR     EXPTIME         # Exposure time measured by shutter
+        CELL.DARKTIME   STR     DARKTIME        # Exposure time for camera
+        CELL.TIME       STR     SHUTOUTC	# Observation time
+        # XXX CELL.GAIN       STR     GAIN		# Cell gain (e/ADU)
+        CELL.READNOISE  STR     RDNOISE		# Cell read noise (ADU)
+        # XXX CELL.SATURATION STR     MAXLIN		# Saturation point (ADU)
+
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+        FPA.TELESCOPE   STR     PS2
+        FPA.INSTRUMENT  STR     TC3
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521 XXX need to fix...
+        FPA.LATITUDE    STR     20:42:25.558 # North Latitude in Degrees 20.7070999146 XXX need to fix...
+        FPA.ELEVATION   F32     3048.0 # altitude in meters XXX need to fix...
+        FPA.DETECTOR    STR     TC3
+        FPA.TIMESYS     STR     UTC
+
+	CHIP.XSIZE	S32	4846
+	CHIP.YSIZE	S32	4868
+        CHIP.XPARITY    S32     1
+        CHIP.YPARITY    S32     1
+
+	CELL.TIMESYS	STR	UTC
+	CELL.READDIR	S32	1		# Cell is read in x direction
+        CELL.BAD        S32     0
+
+	# XXX these should come from the header, but not for now
+        CELL.GAIN       F32     1.0		# Cell gain (e/ADU)
+        CELL.SATURATION F32     40000		# Saturation point (ADU)
+
+	### How to get FPA coordinates from chip coordinates
+        CHIP.X0.DEPEND          STR     CHIP.NAME
+        CHIP.X0         METADATA
+          XY00  S32     4971
+          XY01  S32     4971
+          XY02  S32     4971
+          XY03  S32     4971
+          XY10  S32     9942
+          XY11  S32     9942
+          XY12  S32     9942
+          XY13  S32     9942
+          XY20  S32     14913
+          XY21  S32     14913
+          XY22  S32     14913
+          XY23  S32     14913
+          XY30  S32     19884
+          XY31  S32     19884
+          XY32  S32     19884
+          XY33  S32     19884
+        END
+        CHIP.Y0.DEPEND          STR     CHIP.NAME
+        CHIP.Y0         METADATA
+          XY00  S32      5143
+          XY01  S32     10286
+          XY02  S32     15429
+          XY03  S32     20572
+          XY10  S32      5143
+          XY11  S32     10286
+          XY12  S32     15429
+          XY13  S32     20572
+          XY20  S32      5143
+          XY21  S32     10286
+          XY22  S32     15429
+          XY23  S32     20572
+          XY30  S32      5143
+          XY31  S32     10286
+          XY32  S32     15429
+          XY33  S32     20572
+        END
+        CHIP.XPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.XPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY10  S32     -1
+          XY11  S32     -1
+          XY12  S32     -1
+          XY13  S32     -1
+          XY20  S32     -1
+          XY21  S32     -1
+          XY22  S32     -1
+          XY23  S32     -1
+          XY30  S32     -1
+          XY31  S32     -1
+          XY32  S32     -1
+          XY33  S32     -1
+        END
+        CHIP.YPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.YPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY10  S32     -1
+          XY11  S32     -1
+          XY12  S32     -1
+          XY13  S32     -1
+          XY20  S32     -1
+          XY21  S32     -1
+          XY22  S32     -1
+          XY23  S32     -1
+          XY30  S32     -1
+          XY31  S32     -1
+          XY32  S32     -1
+          XY33  S32     -1
+        END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+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
+#	FPA.TIME	STR	MJD
+#	CELL.TIME	STR	MJD
+        CELL.BINNING    STR     TOGETHER
+	CELL.READNOISE	STR	ADU
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/tc3/format_tc1.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tc3/format_tc1.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tc3/format_tc1.config	(revision 42661)
@@ -0,0 +1,319 @@
+# Camera format configuration for Pan-STARRS Test Camera 3
+
+# How to recognise this type
+RULE	METADATA
+#        IMAGESWV        STR     GPC DaqCom v2.05 (Mar 08 2007)
+	ORIGIN		STR	PS1
+	CONTROLR	STR	STARGRASP
+	INSTRUME	STR	tc1
+#	EXTEND		BOOL	T
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents a chip
+	EXTENSIONS	STR	CELL	# The extensions represent cells
+	FPA.OBS	STR	OBSTYPE	# A PHU keyword for unique identifier
+	CONTENT	        STR     FPPOS # How to determine content of FITS file
+	CONTENT.RULE	STR	{CHIP.NAME}	# How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# File identifier with corresponding file layout name
+  	xy02    STR     XY02:CCD_10u
+  	xy22    STR     XY22:CCD_10u
+  	xy10    STR     XY10:CCD_10u
+  	xy30    STR     XY30:CCD_10u
+END
+
+# Specify the layout
+CHIPS	METADATA
+	CCD_10u		METADATA
+		# Extension name, cellName:cellType
+		xy00	STR	xy00:tc1raw
+		xy01	STR	xy01:tc1raw
+		xy02	STR	xy02:tc1raw
+		xy03	STR	xy03:tc1raw
+		xy04	STR	xy04:tc1raw
+		xy05	STR	xy05:tc1raw
+		xy06	STR	xy06:tc1raw
+		xy07	STR	xy07:tc1raw
+		xy10	STR	xy10:tc1raw
+		xy11	STR	xy11:tc1raw
+		xy12	STR	xy12:tc1raw
+		xy13	STR	xy13:tc1raw
+		xy14	STR	xy14:tc1raw
+		xy15	STR	xy15:tc1raw
+		xy16	STR	xy16:tc1raw
+		xy17	STR	xy17:tc1raw
+		xy20	STR	xy20:tc1raw
+		xy21	STR	xy21:tc1raw
+		xy22	STR	xy22:tc1raw
+		xy23	STR	xy23:tc1raw
+		xy24	STR	xy24:tc1raw
+		xy25	STR	xy25:tc1raw
+		xy26	STR	xy26:tc1raw
+		xy27	STR	xy27:tc1raw
+		xy30	STR	xy30:tc1raw
+		xy31	STR	xy31:tc1raw
+		xy32	STR	xy32:tc1raw
+		xy33	STR	xy33:tc1raw
+		xy34	STR	xy34:tc1raw
+		xy35	STR	xy35:tc1raw
+		xy36	STR	xy36:tc1raw
+		xy37	STR	xy37:tc1raw
+		xy40	STR	xy40:tc1raw
+		xy41	STR	xy41:tc1raw
+		xy42	STR	xy42:tc1raw
+		xy43	STR	xy43:tc1raw
+		xy44	STR	xy44:tc1raw
+		xy45	STR	xy45:tc1raw
+		xy46	STR	xy46:tc1raw
+		xy47	STR	xy47:tc1raw
+		xy50	STR	xy50:tc1raw
+		xy51	STR	xy51:tc1raw
+		xy52	STR	xy52:tc1raw
+		xy53	STR	xy53:tc1raw
+		xy54	STR	xy54:tc1raw
+		xy55	STR	xy55:tc1raw
+		xy56	STR	xy56:tc1raw
+		xy57	STR	xy57:tc1raw
+		xy60	STR	xy60:tc1raw
+		xy61	STR	xy61:tc1raw
+		xy62	STR	xy62:tc1raw
+		xy63	STR	xy63:tc1raw
+		xy64	STR	xy64:tc1raw
+		xy65	STR	xy65:tc1raw
+		xy66	STR	xy66:tc1raw
+		xy67	STR	xy67:tc1raw
+		xy70	STR	xy70:tc1raw
+		xy71	STR	xy71:tc1raw
+		xy72	STR	xy72:tc1raw
+		xy73	STR	xy73:tc1raw
+		xy74	STR	xy74:tc1raw
+		xy75	STR	xy75:tc1raw
+		xy76	STR	xy76:tc1raw
+		xy77	STR	xy77:tc1raw
+	END
+END		
+
+# Specify the cell data 
+# NOTE: A duplicate metadata entry will override the first entry
+CELLS	METADATA
+END
+
+# Specify the cell data
+CELLS	METADATA
+	# if the test camera is generating BIASEC,DATASEC, use this:
+	tc1raw  METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+	END
+
+	# if the test camera is NOT generating BIASEC,DATASEC, use this:
+	tc1old	METADATA
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[575:606,1:594]
+		CELL.TRIMSEC		STR	[1:574,1:594]
+	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.EXPOSURE    STR     EXPREQ          # Requested exposure time, presumably camera exposure time
+        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.PON.TIME    STR     PONTIME
+#	FPA.TELESCOPE	STR	TELESCOP -- hardwired for format
+#	FPA.INSTRUMENT	STR	INSTRUME -- hardwired for format
+#	FPA.DETECTOR	STR	DETECTOR -- hardwired for format
+
+        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.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
+	CHIP.VIDEOCELL  STR     CELLMODE
+
+        CELL.EXPOSURE   STR     EXPTIME         # Exposure time measured by shutter
+        CELL.DARKTIME   STR     DARKTIME        # Exposure time for camera
+#       CELL.TIME       STR     SHUTOUTC	# Observation time
+        # XXX CELL.GAIN       STR     GAIN		# Cell gain (e/ADU)
+        CELL.READNOISE  STR     RDNOISE		# Cell read noise (ADU)
+        # XXX CELL.SATURATION STR     MAXLIN		# Saturation point (ADU)
+
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+        FPA.TELESCOPE   STR     PS2
+        FPA.INSTRUMENT  STR     TC3
+        FPA.LONGITUDE   STR     10:25:01.417 # West Longitude in Hours 10.4170608521 XXX need to fix...
+        FPA.LATITUDE    STR     20:42:25.558 # North Latitude in Degrees 20.7070999146 XXX need to fix...
+        FPA.ELEVATION   F32     3048.0 # altitude in meters XXX need to fix...
+        FPA.DETECTOR    STR     TC3
+        FPA.TIMESYS     STR     UTC
+
+	CHIP.XSIZE	S32	4846
+	CHIP.YSIZE	S32	4868
+        CHIP.XPARITY    S32     1
+        CHIP.YPARITY    S32     1
+
+	CELL.TIMESYS	STR	UTC
+	CELL.READDIR	S32	1		# Cell is read in x direction
+        CELL.BAD        S32     0
+
+	# XXX these should come from the header, but not for now
+        CELL.GAIN       F32     1.0		# Cell gain (e/ADU)
+        CELL.SATURATION F32     64000		# Saturation point (ADU)
+
+	### How to get FPA coordinates from chip coordinates
+        CHIP.X0.DEPEND          STR     CHIP.NAME
+        CHIP.X0         METADATA
+          XY00  S32     4971
+          XY01  S32     4971
+          XY02  S32     4971
+          XY03  S32     4971
+          XY10  S32     9942
+          XY11  S32     9942
+          XY12  S32     9942
+          XY13  S32     9942
+          XY20  S32     14913
+          XY21  S32     14913
+          XY22  S32     14913
+          XY23  S32     14913
+          XY30  S32     19884
+          XY31  S32     19884
+          XY32  S32     19884
+          XY33  S32     19884
+        END
+        CHIP.Y0.DEPEND          STR     CHIP.NAME
+        CHIP.Y0         METADATA
+          XY00  S32      5143
+          XY01  S32     10286
+          XY02  S32     15429
+          XY03  S32     20572
+          XY10  S32      5143
+          XY11  S32     10286
+          XY12  S32     15429
+          XY13  S32     20572
+          XY20  S32      5143
+          XY21  S32     10286
+          XY22  S32     15429
+          XY23  S32     20572
+          XY30  S32      5143
+          XY31  S32     10286
+          XY32  S32     15429
+          XY33  S32     20572
+        END
+        CHIP.XPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.XPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY10  S32     -1
+          XY11  S32     -1
+          XY12  S32     -1
+          XY13  S32     -1
+          XY20  S32     -1
+          XY21  S32     -1
+          XY22  S32     -1
+          XY23  S32     -1
+          XY30  S32     -1
+          XY31  S32     -1
+          XY32  S32     -1
+          XY33  S32     -1
+        END
+        CHIP.YPARITY.DEPEND     STR     CHIP.NAME
+        CHIP.YPARITY    METADATA
+          XY00  S32     -1
+          XY01  S32     -1
+          XY02  S32     -1
+          XY03  S32     -1
+          XY10  S32     -1
+          XY11  S32     -1
+          XY12  S32     -1
+          XY13  S32     -1
+          XY20  S32     -1
+          XY21  S32     -1
+          XY22  S32     -1
+          XY23  S32     -1
+          XY30  S32     -1
+          XY31  S32     -1
+          XY32  S32     -1
+          XY33  S32     -1
+        END
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+#	CELL.GAIN	dbEntry		Camera		gain		chipId,cellId	CHIP.NAME,CELL.NAME
+#	CELL.READNOISE	dbEntry		Camera		readNoise	chipId,cellId	CHIP.NAME,CELL.NAME
+
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+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
+#	FPA.TIME	STR	MJD
+#	CELL.TIME	STR	MJD
+        CELL.BINNING    STR     TOGETHER
+	CELL.READNOISE	STR	ADU
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/tc3/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tc3/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tc3/ppImage.config	(revision 42661)
@@ -0,0 +1,425 @@
+### ppImage recipe configuration file for Megacam
+
+# binned output image options
+BIN1.XBIN               S32      16
+BIN1.YBIN               S32      16
+BIN2.XBIN               S32     150
+BIN2.YBIN               S32     150
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.STAT           STR     MEDIAN
+OVERSCAN.BOXCAR         S32     3
+OVERSCAN.FIT		STR	NONE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	0		# Order of polynomial fit
+
+OVERSCAN	BOOL	TRUE		# Overscan subtraction
+BIAS		BOOL	TRUE		# Bias subtraction
+DARK		BOOL	TRUE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+SHUTTER		BOOL	FALSE		# Shutter correction
+FRINGE		BOOL	FALSE		# Fringe subtraction
+
+# Normalization class
+NORM.CLASS              STR     CHIP             # How to find the per-class normalizations
+
+# this table lists extra constraints which should be applied when
+# selecting the detrend images.
+# note: camera and time are always applied
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+  END
+  FLAT_CORRECTION METADATA
+    FILTER   STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+  END
+  SHUTTER METADATA
+  END	
+END
+
+# only apply the fringe for these filters
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR NONE
+
+################################################################################
+# Diffferent processing options, which may be loaded symbolically
+################################################################################
+
+# Standard chip processing
+CHIP   METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    FALSE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM          BOOL    FALSE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
+# No operation except potential normalisation
+PPIMAGE_N         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan subtraction only
+PPIMAGE_O         METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Bias subtraction only
+PPIMAGE_B         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Dark subtraction only
+PPIMAGE_D         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Shutter correction only
+PPIMAGE_S         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Flat-fielding only
+PPIMAGE_F         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Fringe correction only
+PPIMAGE_R         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE            # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Photometry only
+PPIMAGE_P         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    FALSE           # Source identification and photometry
+END
+
+# Photometry & Astrometry
+PPIMAGE_A         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Source identification and photometry
+END
+
+# Overscan, bias
+PPIMAGE_OB        METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD      METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS      METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF     METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE            # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR    METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE            # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP   METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM          BOOL    FALSE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA   METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE            # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM          BOOL    FALSE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+END
+
+# Save JPEG from BIN1
+PPIMAGE_J1        METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BASE.FITS       BOOL    FALSE           # Save base image?
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    TRUE		  # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    FALSE		  # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+END
+
+# Save JPEG from BIN2
+PPIMAGE_J2        METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BASE.FITS       BOOL    FALSE           # Save base image?
+  BIN1.FITS       BOOL    FALSE           # Save 1st binned chip image?
+  BIN2.FITS       BOOL    FALSE           # Save 2nd binned chip image?
+  BIN1.JPEG       BOOL    FALSE		  # Save 1st binned jpeg?
+  BIN2.JPEG       BOOL    TRUE		  # Save 2nd binned jpeg?
+  BIN1.XBIN       S32     1               # Image is already binned
+  BIN1.YBIN       S32     1               # Image is already binned
+  BIN2.XBIN       S32     1               # Image is already binned
+  BIN2.YBIN       S32     1               # Image is already binned
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_FLATPROC_PREMASK       METADATA
+  BASE.FITS          BOOL    TRUE            # Save base detrended 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           # apply non-linearity correction 
+  BIAS               BOOL    FALSE           # Bias subtraction
+  DARK               BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK
+      EXPTIME STR FPA.EXPOSURE
+    END
+  END   
+END
+
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_FLATMASK_PROCESS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      DETTYPE STR FLAT_PREMASK
+      FILTER  STR FPA.FILTERID
+    END
+  END   
+END
+
+
+# Overscan, bias, dark, shutter, flat-field -- use FLAT_PREMASK
+PPIMAGE_PREMASK_PROCESS      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    FALSE           # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    DARK METADATA
+      DETTYPE STR DARK
+      EXPTIME STR FPA.EXPOSURE
+    END
+    FLAT METADATA
+      DETTYPE STR FLAT_PREMASK
+      FILTER  STR FPA.FILTERID
+    END
+  END   
+END
Index: /branches/eam_branches/ippconfig.20240412/tc3/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tc3/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tc3/ppMerge.config	(revision 42661)
@@ -0,0 +1,72 @@
+# Mask generation --- already included in default, above
+PPMERGE_DARKMASK METADATA
+  ITER               S32    3
+  MASK.SUSPECT.SIGMA F32	8.0		# Threshold for suspect pixels (sigma)
+  MASK.BAD	     F32	0.1		# Threshold for bad pixels 
+  MASK.MODE	     STR	FRACTION	# Meaning of threshold : value, sigma
+  SAMPLE             S32    100000          # Sampling factor for measuring the background
+END
+
+PPMERGE_FLATMASK METADATA
+  ITER           S32    3
+  MASK.SUSPECT.SIGMA F32	3.0		# Threshold for suspect pixels (sigma)
+  MASK.BAD	 F32	0.1		# Threshold for bad pixels (sigma)
+  MASK.MODE	 STR	FRACTION	# Threshold for bad pixels (sigma)
+  SAMPLE         S32    100000          # Sampling factor for measuring the background
+END
+
+ROWS		S32	32		# Number of rows to read at once
+
+FRINGE.NUM          S32     1000        # Number of fringe regions per cell
+FRINGE.SIZE         S32     5           # Half-size of fringe regions
+FRINGE.XSMOOTH      S32     3           # Number of smoothing regions per cell in x
+FRINGE.YSMOOTH      S32     3           # Number of smoothing regions per cell in y
+FRINGE.SMOOTH       BOOL    TRUE        # Smooth the output image?
+FRINGE.SMOOTH.SIGMA F32     2.0         # Sigma of smoothing Gaussian
+
+# Ordinates for fitting dark current
+# example for linear in darktime only
+DARK.ORDINATES	METADATA
+	CELL.EXPOSURE	S32	1
+END
+
+# Ordinates for fitting dark current as function of darktime and fpa temp:
+# DARK.ORDINATES	METADATA
+# 	CELL.DARKTIME	S32	1
+#  	FPA.TEMP	METADATA
+#  		ORDER	S32	1
+#  		SCALE	BOOL	TRUE
+# 		RULE	STR	FPA.TEMP * CELL.DARKTIME
+#  		MIN	F32	-95
+#  		MAX	F32	-50
+#  	END
+# END
+
+# Ordinates for fitting dark current as function of darktime and fpa temp:
+# Counts = C0 + (CT0 + CT1*Temp)*exptime
+# the 0th order term is implied, right?
+# Note: GPC1 has bad values for DARKTIME in unpredictable cells; use EXPOSURE for now
+
+## Dark model with linear temperature dependence
+## DARK.ORDINATES	METADATA
+## 	CELL.EXPOSURE	S32	1
+##  	TEMP	METADATA
+##  		ORDER	S32	1
+## 		RULE	STR	CHIP.TEMPERATURE * CELL.EXPOSURE
+##  	END
+## END
+
+## Dark model with quadratic temperature dependence : too sensitive to temperature range
+## DARK.ORDINATES	METADATA
+## 	CELL.EXPOSURE	S32	1
+##   	TEMP	METADATA
+##   		ORDER	S32	1
+##  		RULE	STR	CHIP.TEMPERATURE * CELL.EXPOSURE
+##   	END
+##   	TEMP2	METADATA
+##   		ORDER	S32	1
+##  		RULE	STR	CHIP.TEMPERATURE * CHIP.TEMPERATURE * CELL.EXPOSURE
+##   	END
+## END
+
+
Index: /branches/eam_branches/ippconfig.20240412/tek/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/camera.config	(revision 42661)
@@ -0,0 +1,70 @@
+# Camera configuration file for Tek
+
+# File formats that we know about
+FORMATS         METADATA
+        SIMPLE  STR     tek/format.config
+        CMP     STR     tek/cmp.config
+        CMF     STR     tek/cmf.config
+END
+ 
+ 
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip            STR     Cell
+END
+
+# Recipe options
+RECIPES         METADATA
+        PSPHOT          STR     tek/psphot.config               # psphot details
+        PSASTRO         STR     tek/psastro.config              # psastro details
+        PPIMAGE         STR     tek/ppImage.config              # Recipes for ppImage
+        PPMERGE         STR     tek/ppMerge.config              # Recipes for ppMerge
+	REJECTIONS	STR     tek/rejections.config
+END
+
+FILTER.ID       METADATA
+        g       STR     g
+        r       STR     r
+        i       STR     i
+        z       STR     z
+        y       STR     y
+	R	STR	R
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID		METADATA
+	FPA	STR	fpa
+END
+
+DVO.CAMERADIR	STR	tek		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES       STR     recipes/filerules-simple.mdc
+
+EXTNAME.RULES METADATA
+  CMF.HEAD STR cmf.hdr
+  CMF.DATA STR cmf.psf # use .PSF and .EXT?
+  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
+
+  PSF.HEAD  STR	hdr
+  PSF.TABLE STR psf_model
+  PSF.RESID STR psf_resid
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}		# Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/tek/cmf.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/cmf.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/cmf.config	(revision 42661)
@@ -0,0 +1,82 @@
+# Tek
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+	NAXIS		S32	0
+	TELESCOP	STR	2.2m-UH
+	INSTRUME	STR	TEK
+	DETECTOR	STR   	Tektronix-2048^2-CCD
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	NAXIS	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	[21:2068,1:2048]		 			CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTER	STR	FILTER
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.TIME	STR	MJD-OBS
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.XBIN	STR	CCDBIN1
+	CELL.YBIN	STR	CCDBIN2
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	CELL.READNOISE	S32	10
+	CELL.BAD	S32	0
+	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/tek/cmp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/cmp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/cmp.config	(revision 42661)
@@ -0,0 +1,82 @@
+# Pan-STARRS Imaging Sky Probe
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	FALSE
+	NAXIS		S32	0
+	TELESCOP	STR	2.2m-UH
+	INSTRUME	STR	TEK
+	DETECTOR	STR	Tektronix-2048^2-CCD
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	NAXIS	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	[21:2068,1:2048]		 			CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTER	STR	FILTER
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.TIME	STR	MJD-OBS
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+	CELL.XBIN	STR	CCDBIN1
+	CELL.YBIN	STR	CCDBIN2
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???L
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	CELL.READNOISE	S32	10
+	CELL.BAD	S32	0
+	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	65535
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/tek/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/dvo.config	(revision 42661)
@@ -0,0 +1,50 @@
+
+# location of DVO database tables
+CATDIR			/media/usbdisk/scr1/catdir.synth.grizy/
+
+# keywords used by DVO to interpret the headers
+
+# used by parse_time to find time-related keywords
+MJD-KEYWORD		MJD-OBS
+DATE-KEYWORD		DATE-OBS
+DATE-MODE		YYYY-MM-DD
+UT-KEYWORD		UT
+JD-KEYWORD		JD
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		-7.0
+CAL_INSTMAG_MIN		-9.5
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# allowed astrometry error (arcseconds)
+ADDSTAR_MAX_CERROR	5.0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		5.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+CATMODE			MEF
+CATFORMAT		PANSTARRS_DEV_0
Index: /branches/eam_branches/ippconfig.20240412/tek/dvo.layout
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/dvo.layout	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/dvo.layout	(revision 42661)
@@ -0,0 +1,58 @@
+# this file defines the layout of the mosaic imager:
+
+# NCCD 40  # this needs work: sometimes 36, sometimes 40
+NCCD 36
+NAXIS1 2112
+NAXIS2 4644
+
+MOSAIC_X 11
+MOSAIC_Y  4
+
+# lines need to contain:
+
+CHIPID_KEYWORD EXTNAME
+
+# ID     CHIPID xoffset yoffset xflip yflip datasec         biassec            Xo      Yo      theta
+CCD.0     ccd00       1       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.1     ccd01       2       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.2     ccd02       3       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.3     ccd03       4       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.4     ccd04       5       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.5     ccd05       6       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.6     ccd06       7       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.7     ccd07       8       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.8     ccd08       9       3     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.9     ccd09       1       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.10    ccd10       2       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.11    ccd11       3       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.12    ccd12       4       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.13    ccd13       5       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.14    ccd14       6       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.15    ccd15       7       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.16    ccd16       8       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.17    ccd17       9       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.18    ccd18       1       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.19    ccd19       2       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.20    ccd20       3       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.21    ccd21       4       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.22    ccd22       5       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.23    ccd23       6       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.24    ccd24       7       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.25    ccd25       8       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.26    ccd26       9       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.27    ccd27       1       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.28    ccd28       2       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.29    ccd29       3       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.30    ccd30       4       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.31    ccd31       5       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.32    ccd32       6       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.33    ccd33       7       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.34    ccd34       8       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.35    ccd35       9       0     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.36    ccd36       0       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.37    ccd37      10       2     1     1 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.38    ccd38       0       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+CCD.39    ccd39      10       1     0     0 [6:2049,5:4100] [2085:2110,2:4400] 0       0       0
+
+# can we use header to find biassec
+USE_BIASSEC 1
Index: /branches/eam_branches/ippconfig.20240412/tek/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/format.config	(revision 42661)
@@ -0,0 +1,101 @@
+# Pan-STARRS Imaging Sky Probe
+
+# How to identify this type
+RULE	METADATA
+	SIMPLE		BOOL	TRUE
+	NAXIS		S32	2
+	TELESCOP	STR	2.2m-UH 
+	INSTRUME	STR	TEK
+	DETECTOR	STR	Tektronix-2048^2-CCD
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS	STR	NAXIS	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC		STR	[21:2068,1:2048]
+		CELL.BIASSEC		STR	BIASSEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.TELESCOPE	STR	TELESCOP
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.DETECTOR	STR	DETECTOR
+	FPA.AIRMASS	STR	AIRMASS
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBSTYPE
+	FPA.FILTERID	STR	FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.POSANGLE	STR	ROTANGLE
+	FPA.RA		STR	RA
+	FPA.DEC		STR	DEC
+	FPA.RADECSYS	STR	RADECSYS
+#	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	MJD-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.ALT		STR	ALT
+	FPA.AZ		STR	AZ
+	FPA.TEMP	STR	CCDTEMP
+	FPA.EXPOSURE	STR	EXPTIME
+	CHIP.TEMP	STR	CCDTEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	MJD-OBS
+	CELL.GAIN	STR	GAIN
+#	CELL.SATURATION	STR	SATURATE	### Currently set to 0 ???
+#	CELL.TIMESYS	STR	TIMESYS
+	CELL.XBIN	STR	CCDBIN1
+	CELL.YBIN	STR	CCDBIN2
+# these were used for some early data
+#	CELL.XBIN	STR	XBIN
+#	CELL.YBIN	STR	YBIN
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	CELL.READNOISE	S32	10
+	CELL.BAD	S32	0
+	CHIP.XSIZE	S32	2048
+	CHIP.YSIZE	S32	2048
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+	FPA.TIMESYS	STR	UTC
+	CELL.SATURATION	F32	60000
+	CELL.READDIR	S32	1
+	CELL.TIMESYS	STR	UTC
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CHIP.X0		S32	0
+	CHIP.Y0		S32	0
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+#	CELL.XBIN	S32	1
+#	CELL.YBIN	S32	1
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	DEGREES
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	MJD
+	CELL.TIME	STR	MJD
+END
+
+# PS Concepts to get from the database
+DATABASE	METADATA
+# None.
+END
Index: /branches/eam_branches/ippconfig.20240412/tek/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/ppImage.config	(revision 42661)
@@ -0,0 +1,289 @@
+### ppImage recipe configuration file
+
+# List of tasks to perform
+#NONLIN          BOOL    FALSE           # Non-linearity correction; not implemented
+#OVERSCAN        BOOL    TRUE            # Overscan subtraction
+#BIAS            BOOL    TRUE            # Bias subtraction
+#DARK            BOOL    FALSE            # Dark subtraction
+#SHUTTER         BOOL    FALSE           # Shutter correction
+#FLAT            BOOL    TRUE            # Flat-field normalisation
+#MASK            BOOL    FALSE           # Mask bad pixels
+#MASK.VALUE      STR     SAT,BAD         # Mask pixels with these attributes
+#FRINGE          BOOL    TRUE           # Fringe subtraction
+#PHOTOM          BOOL    TRUE           # Source identification and photometry
+#ASTROM.CHIP     BOOL    FALSE          # Astrometry per chip?
+#ASTROM.MOSAIC   BOOL    FALSE           # Astrometry for mosaic?
+
+# Inherit everything from the top-level recipe file, except for what's below.
+
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR z
+FRINGE.FILTERS	STR y
+
+# apply the following constraints when selecting a detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+  END
+  SHUTTER METADATA
+  END	
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   VERSION STR RAW
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTERID
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR TWILIGHT:FPA.TIME
+  END
+END
+
+# Standard chip processing
+CHIP   METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE            # 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?
+  BASE.FITS       BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS       BOOL    TRUE            # Save chip-mosaic-ed image? 
+END
+
+
+# Overscan subtraction only
+PPIMAGE_O         METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Bias subtraction only
+PPIMAGE_B         METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Dark subtraction only
+PPIMAGE_D         METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Shutter correction only
+PPIMAGE_S         METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Flat-fielding only
+PPIMAGE_F         METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Fringe correction only
+PPIMAGE_R         METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    TRUE            # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Photometry only
+PPIMAGE_P         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE           # Source identification and photometry
+  BASE.FITS       BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS       BOOL    TRUE           # Save chip-mosaic-ed image? 
+END
+
+# Photometry & Astrometry
+PPIMAGE_A         METADATA
+  OVERSCAN        BOOL    FALSE           # Overscan subtraction
+  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
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE           # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Source identification and photometry
+  BASE.FITS       BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS       BOOL    TRUE           # Save chip-mosaic-ed image? 
+END
+
+# Overscan, bias
+PPIMAGE_OB        METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD      METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS      METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF     METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE            # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS       BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS       BOOL    TRUE            # Save 2nd binned chip image?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR    METADATA
+  BASE.FITS       BOOL    TRUE            # Save base detrended image?
+  CHIP.FITS       BOOL    FALSE           # Save chip-mosaic-ed image? 
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP   METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE            # 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?
+  BASE.FITS       BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS       BOOL    TRUE            # Save chip-mosaic-ed image? 
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA   METADATA
+  OVERSCAN        BOOL    TRUE            # Overscan subtraction
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE            # Dark subtraction
+  SHUTTER         BOOL    FALSE            # Shutter correction
+  FLAT            BOOL    FALSE            # Flat-field normalisation
+  MASK            BOOL    FALSE            # 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?
+  BASE.FITS       BOOL    FALSE           # Save base detrended image?
+  CHIP.FITS       BOOL    TRUE           # Save chip-mosaic-ed image? 
+END
Index: /branches/eam_branches/ippconfig.20240412/tek/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/ppMerge.config	(revision 42661)
@@ -0,0 +1,3 @@
+### ppImage recipe configuration file
+
+# Inherit everything from the top-level recipe file, except for what's below.
Index: /branches/eam_branches/ippconfig.20240412/tek/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/psastro.config	(revision 42661)
@@ -0,0 +1,39 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  10.0
+
+# pmAstromGridMatch:
+PSASTRO.GRID.MIN.ANGLE F32 -300.0
+PSASTRO.GRID.MAX.ANGLE F32 +300.0
+PSASTRO.GRID.DEL.ANGLE F32  0.5
+PSASTRO.GRID.MIN.SIGMA F32  5.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32   300000.
+PSASTRO.GRID.SCALE     F32     500
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# match radius in pixels for CHIP astrometry
+PSASTRO.MATCH.RADIUS   F32    8
+
+# pmAstromMatchFit
+PSASTRO.CHIP.ORDER     S32      1  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      0   # min fitted stars in solution
+PSASTRO.MAX.NSTAR      S32      300 # max stars accepted for fitting
+
+MAG_MAX F32 10
+PSASTRO.CATDIR	       STR      SYNTH.GRIZY
+PSASTRO.MATCH.LUMFUNC  BOOL     TRUE
Index: /branches/eam_branches/ippconfig.20240412/tek/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/psphot.config	(revision 42661)
@@ -0,0 +1,3 @@
+
+PSF_MODEL         STR  PS_MODEL_QGAUSS
+
Index: /branches/eam_branches/ippconfig.20240412/tek/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/tek/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/tek/rejections.config	(revision 42661)
@@ -0,0 +1,47 @@
+BIAS METADATA
+  FILTER             STR  *
+  EXPECTED           F32  0.0
+  IMFILE.MEAN        F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  0.5
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SN          F32  0.0
+  IMFILE.BIN.STDEV   F32  5.0
+  IMFILE.BIN.SN      F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  EXP.SN             F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SN         F32  0.0
+  EXP.FLUX           F32  0.0
+  ENSEMBLE.MEAN      F32  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
+
+DARK 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.SN          F32  0.0
+  IMFILE.BIN.STDEV   F32  0.0
+  IMFILE.BIN.SN      F32  0.0
+  IMFILE.FLUX        F32  2.0
+  EXP.MEAN           F32  0.0
+  EXP.STDEV          F32  0.0
+  EXP.MEANSTDEV      F32  0.0
+  EXP.SN             F32  0.0
+  EXP.BIN.STDEV      F32  0.0
+  EXP.BIN.SN         F32  0.0
+  EXP.FLUX           F32  2.0
+  ENSEMBLE.MEAN      F32  3.0
+  ENSEMBLE.STDEV     F32  3.0
+  ENSEMBLE.MEANSTDEV F32  0.0
+END
Index: /branches/eam_branches/ippconfig.20240412/ucam/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/camera.config	(revision 42661)
@@ -0,0 +1,50 @@
+# Camera configuration file for MegaCam: describes the camera
+
+# File formats that we know about (these are relative to PATH)
+FORMATS         METADATA
+        SIMPLE  STR     ucam/format_raw.config
+END
+
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+	chip	STR	xy00 xy10 xy20 xy30 xy40 xy50 xy60 xy70 xy01 xy11 xy21 xy31 xy41 xy51 xy61 xy71 xy02 xy12 xy22 xy32 xy42 xy52 xy62 xy72 xy03 xy13 xy23 xy33 xy43 xy53 xy63 xy73 xy04 xy14 xy24 xy34 xy44 xy54 xy64 xy74 xy05 xy15 xy25 xy35 xy45 xy55 xy65 xy75 xy06 xy16 xy26 xy36 xy46 xy56 xy66 xy76 xy07 xy17 xy27 xy37 xy47 xy57 xy67 xy77
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+   g        STR   g
+   r        STR   r
+   i        STR   i
+   z        STR   z
+   y        STR   y
+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}
+END
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias 	   STR BIAS
+  zero 	   STR BIAS
+  dark 	   STR DARK
+  flat 	   STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+	# Recipes for ppImage
+        # PPIMAGE         STR     ucam/ppImage.config     # Default: all (normal) options on
+END
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES       STR     recipes/filerules-simple.mdc
Index: /branches/eam_branches/ippconfig.20240412/ucam/format_raw.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/format_raw.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/format_raw.config	(revision 42661)
@@ -0,0 +1,145 @@
+### Raw data from microCam
+
+# How to identify this type
+RULE	METADATA
+	ORIGIN		STR	PS0
+#	INSTRUME	STR	ucam1
+	EXTEND		BOOL	T
+	NEXTEND		S32	64
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	CELL	# The extensions represent cells
+	FPA.OBS		STR	OBSTYPE	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	xy00	STR	chip:xy00:otCell
+	xy10	STR	chip:xy10:otCell
+	xy20	STR	chip:xy20:otCell
+	xy30	STR	chip:xy30:otCell
+	xy40	STR	chip:xy40:otCell
+	xy50	STR	chip:xy50:otCell
+	xy60	STR	chip:xy60:otCell
+	xy70	STR	chip:xy70:otCell
+	xy01	STR	chip:xy01:otCell
+	xy11	STR	chip:xy11:otCell
+	xy21	STR	chip:xy21:otCell
+	xy31	STR	chip:xy31:otCell
+	xy41	STR	chip:xy41:otCell
+	xy51	STR	chip:xy51:otCell
+	xy61	STR	chip:xy61:otCell
+	xy71	STR	chip:xy71:otCell
+	xy02	STR	chip:xy02:otCell
+	xy12	STR	chip:xy12:otCell
+	xy22	STR	chip:xy22:otCell
+	xy32	STR	chip:xy32:otCell
+	xy42	STR	chip:xy42:otCell
+	xy52	STR	chip:xy52:otCell
+	xy62	STR	chip:xy62:otCell
+	xy72	STR	chip:xy72:otCell
+	xy03	STR	chip:xy03:otCell
+	xy13	STR	chip:xy13:otCell
+	xy23	STR	chip:xy23:otCell
+	xy33	STR	chip:xy33:otCell
+	xy43	STR	chip:xy43:otCell
+	xy53	STR	chip:xy53:otCell
+	xy63	STR	chip:xy63:otCell
+	xy73	STR	chip:xy73:otCell
+	xy04	STR	chip:xy04:otCell
+	xy14	STR	chip:xy14:otCell
+	xy24	STR	chip:xy24:otCell
+	xy34	STR	chip:xy34:otCell
+	xy44	STR	chip:xy44:otCell
+	xy54	STR	chip:xy54:otCell
+	xy64	STR	chip:xy64:otCell
+	xy74	STR	chip:xy74:otCell
+	xy05	STR	chip:xy05:otCell
+	xy15	STR	chip:xy15:otCell
+	xy25	STR	chip:xy25:otCell
+	xy35	STR	chip:xy35:otCell
+	xy45	STR	chip:xy45:otCell
+	xy55	STR	chip:xy55:otCell
+	xy65	STR	chip:xy65:otCell
+	xy75	STR	chip:xy75:otCell
+	xy06	STR	chip:xy06:otCell
+	xy16	STR	chip:xy16:otCell
+	xy26	STR	chip:xy26:otCell
+	xy36	STR	chip:xy36:otCell
+	xy46	STR	chip:xy46:otCell
+	xy56	STR	chip:xy56:otCell
+	xy66	STR	chip:xy66:otCell
+	xy76	STR	chip:xy76:otCell
+	xy07	STR	chip:xy07:otCell
+	xy17	STR	chip:xy17:otCell
+	xy27	STR	chip:xy27:otCell
+	xy37	STR	chip:xy37:otCell
+	xy47	STR	chip:xy47:otCell
+	xy57	STR	chip:xy57:otCell
+	xy67	STR	chip:xy67:otCell
+	xy77	STR	chip:xy77:otCell
+END
+
+# Specify the cell data
+CELLS	METADATA
+	otCell	METADATA	# Orthogonal transfer cell
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.AIRMASS		STR	AIRMASS
+	FPA.FILTER		STR	FILTER
+	FPA.POSANGLE		STR	ROTANGLE
+	FPA.RA			STR	RA
+	FPA.DEC			STR	DEC
+	FPA.RADECSYS		STR	RADECSYS
+	CELL.TIME		STR	DATE-OBS
+	CELL.EXPOSURE		STR	EXPTIME
+	CELL.DARKTIME		STR	DARKTIME
+	CELL.XBIN		STR	CCDBIN1
+	CELL.YBIN		STR	CCDBIN2
+	CELL.XPARITY		STR	IMTM1_1
+	CELL.YPARITY		STR	IMTM2_2
+	CELL.X0			STR	IMNPIX1
+	CELL.Y0			STR	IMNPIX2
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	CELL.GAIN		F32	1
+	CELL.READNOISE		F32	10.0
+	CELL.SATURATION		F32	65535
+	CELL.BAD		F32	0
+	CELL.READDIR		S32	1
+	CELL.TIMESYS		STR	UTC
+	CHIP.X0			S32	0
+	CHIP.Y0			S32	0
+	CHIP.XPARITY		S32	1
+	CHIP.YPARITY		S32	1
+END
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+	TYPE		dbEntry		TABLE		COLUMN		GIVENDBCOL	GIVENPS
+# A database entry refers to a particular column (COLUMN) in a
+# particular table (TABLE), given certain PS concepts (GIVENPS) that
+# match certain database columns (GIVENDBCOL).
+END
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	CELL.TIME	STR	MJD
+	CELL.X0		STR	FORTRAN
+	CELL.Y0		STR	FORTRAN
+END
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppImage.config	(revision 42661)
@@ -0,0 +1,81 @@
+### Phase 2 recipe configuration file
+
+# List of tasks to perform
+MASK		BOOL	FALSE		# Mask bad pixels
+MASK.VALUE      U8      0x10            # only mask pixels matching this bitmask
+NONLIN		BOOL	FALSE		# Non-linearity correction
+OVERSCAN	BOOL	TRUE		# Overscan subtraction
+BIAS		BOOL	TRUE		# Bias subtraction
+DARK		BOOL	TRUE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+FRINGE		BOOL	FALSE		# Fringe subtraction
+PHOTOM		BOOL	FALSE		# Source identification and photometry
+ASTROM.CHIP	BOOL	FALSE
+ASTROM.MOSAIC	BOOL	FALSE		# Astrometry
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+CHIP.FITS       BOOL   	TRUE            # Save chip-mosaic-ed image? 
+FPA1.FITS       BOOL   	TRUE            # Save 1st binned fpa image? 
+FPA2.FITS       BOOL   	TRUE            # Save 2nd binned fpa image? 
+BIN1.FITS	BOOL	TRUE		# Save 1st binned chip image?
+BIN2.FITS	BOOL	TRUE		# Save 2nd binned chip image?
+BIN1.JPEG	BOOL	TRUE		# Save 1st binned jpeg?
+BIN2.JPEG	BOOL	FALSE		# Save 2nd binned jpeg?
+
+# Non-linearity correction
+NONLIN.SOURCE		STR	CHIP.NAME	# How to determine the source
+#@NONLIN.DATA		F32	0.0 1.001 0.001	# A polynomial
+NONLIN.DATA		STR	nonlin.dat	# Filename for lookup table
+#NONLIN.DATA		METADATA		# Source of non-linearity data
+#	ccd00		STR	nonlin00.dat	# A lookup table 
+#	@ccd01		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd02		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd03		F32	1.2345 		# A polynomial
+#	@ccd04		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd05		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd06		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd07		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd08		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd09		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd11		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd12		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd13		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd14		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd15		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd16		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd17		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd18		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd19		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd21		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd22		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd23		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd24		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd25		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd26		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd27		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd28		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd29		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd30		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd31		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd32		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd33		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd34		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd35		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd36		F32	0.0 1.001 0.001	# A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+#OVERSCAN.FIT		STR	SPLINE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	5		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# binned output image options
+BIN1.XBIN		S32	8
+BIN1.YBIN		S32	8
+BIN2.XBIN		S32	64
+BIN2.YBIN		S32	64
+
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppImage_b.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppImage_b.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppImage_b.config	(revision 42661)
@@ -0,0 +1,82 @@
+### Phase 2 recipe configuration file
+
+# List of tasks to perform
+MASK		BOOL	FALSE		# Mask bad pixels
+MASK.VALUE      U8      0x10            # only mask pixels matching this bitmask
+NONLIN		BOOL	FALSE		# Non-linearity correction
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	TRUE		# Bias subtraction
+DARK		BOOL	FALSE		# Dark subtraction
+FLAT		BOOL	FALSE		# Flat-field normalisation
+FRINGE		BOOL	FALSE		# Fringe subtraction
+PHOTOM		BOOL	FALSE		# Source identification and photometry
+ASTROM.CHIP	BOOL	FALSE
+ASTROM.MOSAIC	BOOL	FALSE		# Astrometry
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+CHIP.FITS       BOOL   	FALSE           # Save chip-mosaic-ed image? 
+FPA1.FITS       BOOL   	FALSE           # Save 1st binned fpa image? 
+FPA2.FITS       BOOL   	FALSE           # Save 2nd binned fpa image? 
+BIN1.FITS	BOOL	TRUE		# Save 1st binned chip image?
+BIN2.FITS	BOOL	TRUE		# Save 2nd binned chip image?
+BIN1.JPEG	BOOL	FALSE		# Save 1st binned jpeg?
+BIN2.JPEG	BOOL	FALSE		# Save 2nd binned jpeg?
+
+# Non-linearity correction
+NONLIN.SOURCE		STR	CHIP.NAME	# How to determine the source
+#@NONLIN.DATA		F32	0.0 1.001 0.001	# A polynomial
+NONLIN.DATA		STR	nonlin.dat	# Filename for lookup table
+#NONLIN.DATA		METADATA		# Source of non-linearity data
+#	ccd00		STR	nonlin00.dat	# A lookup table 
+#	@ccd01		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd02		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd03		F32	1.2345 		# A polynomial
+#	@ccd04		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd05		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd06		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd07		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd08		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd09		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd11		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd12		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd13		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd14		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd15		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd16		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd17		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd18		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd19		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd21		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd22		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd23		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd24		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd25		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd26		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd27		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd28		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd29		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd30		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd31		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd32		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd33		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd34		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd35		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd36		F32	0.0 1.001 0.001	# A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+#OVERSCAN.FIT		STR	SPLINE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	5		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# binned output image options
+BIN1.XBIN		S32	8
+BIN1.YBIN		S32	8
+BIN2.XBIN		S32	64
+BIN2.YBIN		S32	64
+
+PHOTCODE.RULE		STR	{CAMERA}.{FILTER.ID}.{CHIP.N}
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppImage_d.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppImage_d.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppImage_d.config	(revision 42661)
@@ -0,0 +1,82 @@
+### Phase 2 recipe configuration file
+
+# List of tasks to perform
+MASK		BOOL	FALSE		# Mask bad pixels
+MASK.VALUE      U8      0x10            # only mask pixels matching this bitmask
+NONLIN		BOOL	FALSE		# Non-linearity correction
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	FALSE		# Bias subtraction
+DARK		BOOL	TRUE		# Dark subtraction
+FLAT		BOOL	FALSE		# Flat-field normalisation
+FRINGE		BOOL	FALSE		# Fringe subtraction
+PHOTOM		BOOL	FALSE		# Source identification and photometry
+ASTROM.CHIP	BOOL	FALSE
+ASTROM.MOSAIC	BOOL	FALSE		# Astrometry
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+CHIP.FITS       BOOL   	FALSE           # Save chip-mosaic-ed image? 
+FPA1.FITS       BOOL   	FALSE           # Save 1st binned fpa image? 
+FPA2.FITS       BOOL   	FALSE           # Save 2nd binned fpa image? 
+BIN1.FITS	BOOL	TRUE		# Save 1st binned chip image?
+BIN2.FITS	BOOL	TRUE		# Save 2nd binned chip image?
+BIN1.JPEG	BOOL	FALSE		# Save 1st binned jpeg?
+BIN2.JPEG	BOOL	FALSE		# Save 2nd binned jpeg?
+
+# Non-linearity correction
+NONLIN.SOURCE		STR	CHIP.NAME	# How to determine the source
+#@NONLIN.DATA		F32	0.0 1.001 0.001	# A polynomial
+NONLIN.DATA		STR	nonlin.dat	# Filename for lookup table
+#NONLIN.DATA		METADATA		# Source of non-linearity data
+#	ccd00		STR	nonlin00.dat	# A lookup table 
+#	@ccd01		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd02		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd03		F32	1.2345 		# A polynomial
+#	@ccd04		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd05		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd06		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd07		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd08		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd09		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd11		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd12		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd13		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd14		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd15		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd16		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd17		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd18		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd19		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd21		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd22		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd23		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd24		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd25		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd26		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd27		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd28		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd29		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd30		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd31		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd32		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd33		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd34		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd35		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd36		F32	0.0 1.001 0.001	# A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+#OVERSCAN.FIT		STR	SPLINE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	5		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# binned output image options
+BIN1.XBIN		S32	8
+BIN1.YBIN		S32	8
+BIN2.XBIN		S32	64
+BIN2.YBIN		S32	64
+
+PHOTCODE.RULE		STR	{CAMERA}.{FILTER.ID}.{CHIP.N}
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppImage_f.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppImage_f.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppImage_f.config	(revision 42661)
@@ -0,0 +1,82 @@
+### Phase 2 recipe configuration file
+
+# List of tasks to perform
+MASK		BOOL	FALSE		# Mask bad pixels
+MASK.VALUE      U8      0x10            # only mask pixels matching this bitmask
+NONLIN		BOOL	FALSE		# Non-linearity correction
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	FALSE		# Bias subtraction
+DARK		BOOL	FALSE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+FRINGE		BOOL	FALSE		# Fringe subtraction
+PHOTOM		BOOL	FALSE		# Source identification and photometry
+ASTROM.CHIP	BOOL	FALSE
+ASTROM.MOSAIC	BOOL	FALSE		# Astrometry
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+CHIP.FITS       BOOL   	FALSE           # Save chip-mosaic-ed image? 
+FPA1.FITS       BOOL   	FALSE           # Save 1st binned fpa image? 
+FPA2.FITS       BOOL   	FALSE           # Save 2nd binned fpa image? 
+BIN1.FITS	BOOL	TRUE		# Save 1st binned chip image?
+BIN2.FITS	BOOL	TRUE		# Save 2nd binned chip image?
+BIN1.JPEG	BOOL	FALSE		# Save 1st binned jpeg?
+BIN2.JPEG	BOOL	FALSE		# Save 2nd binned jpeg?
+
+# Non-linearity correction
+NONLIN.SOURCE		STR	CHIP.NAME	# How to determine the source
+#@NONLIN.DATA		F32	0.0 1.001 0.001	# A polynomial
+NONLIN.DATA		STR	nonlin.dat	# Filename for lookup table
+#NONLIN.DATA		METADATA		# Source of non-linearity data
+#	ccd00		STR	nonlin00.dat	# A lookup table 
+#	@ccd01		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd02		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd03		F32	1.2345 		# A polynomial
+#	@ccd04		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd05		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd06		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd07		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd08		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd09		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd11		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd12		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd13		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd14		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd15		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd16		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd17		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd18		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd19		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd21		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd22		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd23		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd24		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd25		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd26		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd27		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd28		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd29		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd30		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd31		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd32		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd33		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd34		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd35		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd36		F32	0.0 1.001 0.001	# A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+#OVERSCAN.FIT		STR	SPLINE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	5		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# binned output image options
+BIN1.XBIN		S32	8
+BIN1.YBIN		S32	8
+BIN2.XBIN		S32	64
+BIN2.YBIN		S32	64
+
+PHOTCODE.RULE		STR	{CAMERA}.{FILTER.ID}.{CHIP.N}
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppImage_j.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppImage_j.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppImage_j.config	(revision 42661)
@@ -0,0 +1,85 @@
+### Phase 2 recipe configuration file
+
+### A little bit of a cheat to make a mosaicked binned JPEG from the binned FITS file.
+### Set binning to 1, since the input will already be binned.
+
+# List of tasks to perform
+MASK		BOOL	FALSE		# Mask bad pixels
+MASK.VALUE      U8      0xff            # only mask pixels matching this bitmask
+NONLIN		BOOL	FALSE		# Non-linearity correction
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	FALSE		# Bias subtraction
+DARK		BOOL	FALSE		# Dark subtraction
+FLAT		BOOL	FALSE		# Flat-field normalisation
+FRINGE		BOOL	FALSE		# Fringe subtraction
+PHOTOM		BOOL	FALSE		# Source identification and photometry
+ASTROM.CHIP	BOOL	FALSE
+ASTROM.MOSAIC	BOOL	FALSE		# Astrometry
+
+BASE.FITS       BOOL    FALSE            # Save base detrended image?
+CHIP.FITS       BOOL   	FALSE            # Save chip-mosaic-ed image? 
+FPA1.FITS       BOOL   	FALSE            # Save 1st binned fpa image? 
+FPA2.FITS       BOOL   	FALSE            # Save 2nd binned fpa image? 
+BIN1.FITS	BOOL	FALSE		# Save 1st binned chip image?
+BIN2.FITS	BOOL	FALSE		# Save 2nd binned chip image?
+BIN1.JPEG	BOOL	TRUE		# Save 1st binned jpeg?
+BIN2.JPEG	BOOL	FALSE		# Save 2nd binned jpeg?
+
+# Non-linearity correction
+NONLIN.SOURCE		STR	CHIP.NAME	# How to determine the source
+#@NONLIN.DATA		F32	0.0 1.001 0.001	# A polynomial
+NONLIN.DATA		STR	nonlin.dat	# Filename for lookup table
+#NONLIN.DATA		METADATA		# Source of non-linearity data
+#	ccd00		STR	nonlin00.dat	# A lookup table 
+#	@ccd01		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd02		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd03		F32	1.2345 		# A polynomial
+#	@ccd04		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd05		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd06		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd07		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd08		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd09		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd11		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd12		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd13		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd14		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd15		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd16		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd17		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd18		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd19		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd21		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd22		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd23		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd24		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd25		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd26		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd27		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd28		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd29		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd30		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd31		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd32		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd33		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd34		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd35		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd36		F32	0.0 1.001 0.001	# A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+#OVERSCAN.FIT		STR	SPLINE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	5		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# binned output image options
+BIN1.XBIN		S32	1
+BIN1.YBIN		S32	1
+BIN2.XBIN		S32	64
+BIN2.YBIN		S32	64
+
+PHOTCODE.RULE		STR	{CAMERA}.{FILTER.ID}.{CHIP.N}
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppImage_o.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppImage_o.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppImage_o.config	(revision 42661)
@@ -0,0 +1,82 @@
+### Phase 2 recipe configuration file
+
+# List of tasks to perform
+MASK		BOOL	FALSE		# Mask bad pixels
+MASK.VALUE      U8      0x10            # only mask pixels matching this bitmask
+NONLIN		BOOL	FALSE		# Non-linearity correction
+OVERSCAN	BOOL	TRUE		# Overscan subtraction
+BIAS		BOOL	FALSE		# Bias subtraction
+DARK		BOOL	FALSE		# Dark subtraction
+FLAT		BOOL	FALSE		# Flat-field normalisation
+FRINGE		BOOL	FALSE		# Fringe subtraction
+PHOTOM		BOOL	FALSE		# Source identification and photometry
+ASTROM.CHIP	BOOL	FALSE
+ASTROM.MOSAIC	BOOL	FALSE		# Astrometry
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+CHIP.FITS       BOOL   	FALSE           # Save chip-mosaic-ed image? 
+FPA1.FITS       BOOL   	FALSE           # Save 1st binned fpa image? 
+FPA2.FITS       BOOL   	FALSE           # Save 2nd binned fpa image? 
+BIN1.FITS	BOOL	FALSE		# Save 1st binned chip image?
+BIN2.FITS	BOOL	FALSE		# Save 2nd binned chip image?
+BIN1.JPEG	BOOL	FALSE		# Save 1st binned jpeg?
+BIN2.JPEG	BOOL	FALSE		# Save 2nd binned jpeg?
+
+# Non-linearity correction
+NONLIN.SOURCE		STR	CHIP.NAME	# How to determine the source
+#@NONLIN.DATA		F32	0.0 1.001 0.001	# A polynomial
+NONLIN.DATA		STR	nonlin.dat	# Filename for lookup table
+#NONLIN.DATA		METADATA		# Source of non-linearity data
+#	ccd00		STR	nonlin00.dat	# A lookup table 
+#	@ccd01		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd02		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd03		F32	1.2345 		# A polynomial
+#	@ccd04		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd05		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd06		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd07		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd08		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd09		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd11		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd12		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd13		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd14		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd15		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd16		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd17		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd18		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd19		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd21		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd22		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd23		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd24		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd25		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd26		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd27		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd28		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd29		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd30		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd31		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd32		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd33		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd34		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd35		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd36		F32	0.0 1.001 0.001	# A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+#OVERSCAN.FIT		STR	SPLINE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	5		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# binned output image options
+BIN1.XBIN		S32	8
+BIN1.YBIN		S32	8
+BIN2.XBIN		S32	64
+BIN2.YBIN		S32	64
+
+PHOTCODE.RULE		STR	{CAMERA}.{FILTER.ID}.{CHIP.N}
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppImage_ob.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppImage_ob.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppImage_ob.config	(revision 42661)
@@ -0,0 +1,82 @@
+### Phase 2 recipe configuration file
+
+# List of tasks to perform
+MASK		BOOL	FALSE		# Mask bad pixels
+MASK.VALUE      U8      0x10            # only mask pixels matching this bitmask
+NONLIN		BOOL	FALSE		# Non-linearity correction
+OVERSCAN	BOOL	TRUE		# Overscan subtraction
+BIAS		BOOL	TRUE		# Bias subtraction
+DARK		BOOL	FALSE		# Dark subtraction
+FLAT		BOOL	FALSE		# Flat-field normalisation
+FRINGE		BOOL	FALSE		# Fringe subtraction
+PHOTOM		BOOL	FALSE		# Source identification and photometry
+ASTROM.CHIP	BOOL	FALSE
+ASTROM.MOSAIC	BOOL	FALSE		# Astrometry
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+CHIP.FITS       BOOL   	FALSE           # Save chip-mosaic-ed image? 
+FPA1.FITS       BOOL   	FALSE           # Save 1st binned fpa image? 
+FPA2.FITS       BOOL   	FALSE           # Save 2nd binned fpa image? 
+BIN1.FITS	BOOL	FALSE		# Save 1st binned chip image?
+BIN2.FITS	BOOL	FALSE		# Save 2nd binned chip image?
+BIN1.JPEG	BOOL	FALSE		# Save 1st binned jpeg?
+BIN2.JPEG	BOOL	FALSE		# Save 2nd binned jpeg?
+
+# Non-linearity correction
+NONLIN.SOURCE		STR	CHIP.NAME	# How to determine the source
+#@NONLIN.DATA		F32	0.0 1.001 0.001	# A polynomial
+NONLIN.DATA		STR	nonlin.dat	# Filename for lookup table
+#NONLIN.DATA		METADATA		# Source of non-linearity data
+#	ccd00		STR	nonlin00.dat	# A lookup table 
+#	@ccd01		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd02		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd03		F32	1.2345 		# A polynomial
+#	@ccd04		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd05		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd06		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd07		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd08		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd09		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd11		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd12		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd13		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd14		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd15		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd16		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd17		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd18		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd19		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd21		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd22		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd23		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd24		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd25		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd26		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd27		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd28		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd29		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd30		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd31		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd32		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd33		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd34		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd35		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd36		F32	0.0 1.001 0.001	# A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+#OVERSCAN.FIT		STR	SPLINE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	5		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# binned output image options
+BIN1.XBIN		S32	8
+BIN1.YBIN		S32	8
+BIN2.XBIN		S32	64
+BIN2.YBIN		S32	64
+
+PHOTCODE.RULE		STR	{CAMERA}.{FILTER.ID}.{CHIP.N}
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppImage_obd.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppImage_obd.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppImage_obd.config	(revision 42661)
@@ -0,0 +1,82 @@
+### Phase 2 recipe configuration file
+
+# List of tasks to perform
+MASK		BOOL	FALSE		# Mask bad pixels
+MASK.VALUE      U8      0x10            # only mask pixels matching this bitmask
+NONLIN		BOOL	FALSE		# Non-linearity correction
+OVERSCAN	BOOL	TRUE		# Overscan subtraction
+BIAS		BOOL	TRUE		# Bias subtraction
+DARK		BOOL	FALSE		# Dark subtraction
+FLAT		BOOL	FALSE		# Flat-field normalisation
+FRINGE		BOOL	FALSE		# Fringe subtraction
+PHOTOM		BOOL	FALSE		# Source identification and photometry
+ASTROM.CHIP	BOOL	FALSE
+ASTROM.MOSAIC	BOOL	FALSE		# Astrometry
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+CHIP.FITS       BOOL   	FALSE           # Save chip-mosaic-ed image? 
+FPA1.FITS       BOOL   	FALSE           # Save 1st binned fpa image? 
+FPA2.FITS       BOOL   	FALSE           # Save 2nd binned fpa image? 
+BIN1.FITS	BOOL	FALSE		# Save 1st binned chip image?
+BIN2.FITS	BOOL	FALSE		# Save 2nd binned chip image?
+BIN1.JPEG	BOOL	FALSE		# Save 1st binned jpeg?
+BIN2.JPEG	BOOL	FALSE		# Save 2nd binned jpeg?
+
+# Non-linearity correction
+NONLIN.SOURCE		STR	CHIP.NAME	# How to determine the source
+#@NONLIN.DATA		F32	0.0 1.001 0.001	# A polynomial
+NONLIN.DATA		STR	nonlin.dat	# Filename for lookup table
+#NONLIN.DATA		METADATA		# Source of non-linearity data
+#	ccd00		STR	nonlin00.dat	# A lookup table 
+#	@ccd01		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd02		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd03		F32	1.2345 		# A polynomial
+#	@ccd04		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd05		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd06		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd07		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd08		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd09		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd11		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd12		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd13		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd14		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd15		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd16		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd17		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd18		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd19		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd21		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd22		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd23		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd24		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd25		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd26		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd27		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd28		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd29		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd30		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd31		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd32		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd33		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd34		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd35		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd36		F32	0.0 1.001 0.001	# A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+#OVERSCAN.FIT		STR	SPLINE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	5		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# binned output image options
+BIN1.XBIN		S32	8
+BIN1.YBIN		S32	8
+BIN2.XBIN		S32	64
+BIN2.YBIN		S32	64
+
+PHOTCODE.RULE		STR	{CAMERA}.{FILTER.ID}.{CHIP.N}
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppImage_obdf.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppImage_obdf.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppImage_obdf.config	(revision 42661)
@@ -0,0 +1,82 @@
+### Phase 2 recipe configuration file
+
+# List of tasks to perform
+MASK		BOOL	FALSE		# Mask bad pixels
+MASK.VALUE      U8      0x10            # only mask pixels matching this bitmask
+NONLIN		BOOL	FALSE		# Non-linearity correction
+OVERSCAN	BOOL	TRUE		# Overscan subtraction
+BIAS		BOOL	TRUE		# Bias subtraction
+DARK		BOOL	TRUE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+FRINGE		BOOL	FALSE		# Fringe subtraction
+PHOTOM		BOOL	FALSE		# Source identification and photometry
+ASTROM.CHIP	BOOL	FALSE
+ASTROM.MOSAIC	BOOL	FALSE		# Astrometry
+
+BASE.FITS       BOOL    TRUE            # Save base detrended image?
+CHIP.FITS       BOOL   	FALSE           # Save chip-mosaic-ed image? 
+FPA1.FITS       BOOL   	FALSE           # Save 1st binned fpa image? 
+FPA2.FITS       BOOL   	FALSE           # Save 2nd binned fpa image? 
+BIN1.FITS	BOOL	FALSE		# Save 1st binned chip image?
+BIN2.FITS	BOOL	FALSE		# Save 2nd binned chip image?
+BIN1.JPEG	BOOL	TRUE		# Save 1st binned jpeg?
+BIN2.JPEG	BOOL	TRUE		# Save 2nd binned jpeg?
+
+# Non-linearity correction
+NONLIN.SOURCE		STR	CHIP.NAME	# How to determine the source
+#@NONLIN.DATA		F32	0.0 1.001 0.001	# A polynomial
+NONLIN.DATA		STR	nonlin.dat	# Filename for lookup table
+#NONLIN.DATA		METADATA		# Source of non-linearity data
+#	ccd00		STR	nonlin00.dat	# A lookup table 
+#	@ccd01		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd02		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd03		F32	1.2345 		# A polynomial
+#	@ccd04		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd05		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd06		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd07		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd08		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd09		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd11		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd12		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd13		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd14		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd15		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd16		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd17		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd18		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd19		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd10		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd21		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd22		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd23		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd24		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd25		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd26		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd27		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd28		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd29		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd30		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd31		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd32		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd33		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd34		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd35		F32	0.0 1.001 0.001	# A polynomial
+#	@ccd36		F32	0.0 1.001 0.001	# A polynomial
+#END
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+#OVERSCAN.FIT		STR	SPLINE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	5		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# binned output image options
+BIN1.XBIN		S32	8
+BIN1.YBIN		S32	8
+BIN2.XBIN		S32	64
+BIN2.YBIN		S32	64
+
+PHOTCODE.RULE		STR	{CAMERA}.{FILTER.ID}.{CHIP.N}
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppMerge_bias.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppMerge_bias.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppMerge_bias.config	(revision 42661)
@@ -0,0 +1,14 @@
+# Recipe configuration for ppMerge
+ 
+ROWS            S32     128		# Number of rows to read at once
+ELECTRONS       F32     100.0           # Minimum number of electrons for useful signal
+SAMPLE          S32     100             # Sampling factor for measuring the background
+REJ		F32	3.0		# Rejection threshold (sigma)
+ITER		S32	1		# Number of rejection iterations
+FRACHIGH	F32	0.3		# Fraction of high pixels to reject immediately
+FRACLOW		F32	0.1		# Fraction of low pixels to reject immediately
+NKEEP		S32	5		# Minimum number of pixels in stack to keep
+MASKVAL		S32	0xff		# Mask value for input data
+### Statistics options: MEAN | MEDIAN | ROBUST | FITTED | CLIPPED
+COMBINE		STR	MEAN		# Statistic to use for combination: 
+BACKGROUND	STR	MEDIAN		# Statistic to use to measure the background
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppMerge_dark.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppMerge_dark.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppMerge_dark.config	(revision 42661)
@@ -0,0 +1,14 @@
+# Recipe configuration for ppMerge
+ 
+ROWS            S32     128		# Number of rows to read at once
+ELECTRONS       F32     100.0           # Minimum number of electrons for useful signal
+SAMPLE          S32     100             # Sampling factor for measuring the background
+REJ		F32	3.0		# Rejection threshold (sigma)
+ITER		S32	1		# Number of rejection iterations
+FRACHIGH	F32	0.3		# Fraction of high pixels to reject immediately
+FRACLOW		F32	0.1		# Fraction of low pixels to reject immediately
+NKEEP		S32	5		# Minimum number of pixels in stack to keep
+MASKVAL		S32	0xff		# Mask value for input data
+### Statistics options: MEAN | MEDIAN | ROBUST | FITTED | CLIPPED
+COMBINE		STR	MEAN		# Statistic to use for combination: 
+BACKGROUND	STR	MEDIAN		# Statistic to use to measure the background
Index: /branches/eam_branches/ippconfig.20240412/ucam/ppMerge_flat.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/ppMerge_flat.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/ppMerge_flat.config	(revision 42661)
@@ -0,0 +1,14 @@
+# Recipe configuration for ppMerge
+ 
+ROWS            S32     128		# Number of rows to read at once
+ELECTRONS       F32     100.0           # Minimum number of electrons for useful signal
+SAMPLE          S32     100             # Sampling factor for measuring the background
+REJ		F32	3.0		# Rejection threshold (sigma)
+ITER		S32	1		# Number of rejection iterations
+FRACHIGH	F32	0.3		# Fraction of high pixels to reject immediately
+FRACLOW		F32	0.1		# Fraction of low pixels to reject immediately
+NKEEP		S32	5		# Minimum number of pixels in stack to keep
+MASKVAL		S32	0xff		# Mask value for input data
+### Statistics options: MEAN | MEDIAN | ROBUST | FITTED | CLIPPED
+COMBINE		STR	MEAN		# Statistic to use for combination: 
+BACKGROUND	STR	MEDIAN		# Statistic to use to measure the background
Index: /branches/eam_branches/ippconfig.20240412/ucam/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/psastro.config	(revision 42661)
@@ -0,0 +1,36 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+# PSASTRO.PLATE.SCALE    F32  13.5
+PSASTRO.PLATE.SCALE    F32  1.0
+
+# pmAstromGridMatch:
+PSASTRO.GRID.MIN.ANGLE F32 -0.0851
+PSASTRO.GRID.MAX.ANGLE F32 +0.0851
+PSASTRO.GRID.DEL.ANGLE F32  0.0170
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+# PSASTRO.GRID.OFFSET    F32  10000.
+# PSASTRO.GRID.SCALE     F32    500.
+PSASTRO.GRID.OFFSET    F32   1000.
+PSASTRO.GRID.SCALE     F32     50
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# pmAstromRadiusMatch
+# use plate-scale to make this in pixels?
+PSASTRO.MATCH.RADIUS   F32    8
+
+# pmAstromMatchFit
+PSASTRO.CHIP.NX        S32      1  # fit order
+PSASTRO.CHIP.NY        S32      1  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
Index: /branches/eam_branches/ippconfig.20240412/ucam/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/ucam/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/ucam/psphot.config	(revision 42661)
@@ -0,0 +1,2 @@
+
+PSF_MODEL           STR  PS_MODEL_QGAUSS
Index: /branches/eam_branches/ippconfig.20240412/uh8k/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/Makefile.am	(revision 42661)
@@ -0,0 +1,22 @@
+
+installdir = $(datadir)/ippconfig/uh8k
+
+install_files = \
+	dvo.config \
+	camera.config \
+	format_split.config \
+	ppImage.config \
+	ppMerge.config \
+	psastro.config \
+	psphot.config \
+	pswarp.config \
+	rejections.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/uh8k/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/camera.config	(revision 42661)
@@ -0,0 +1,90 @@
+# Camera configuration file for WFI/8k on UH88
+
+# File formats that we know about
+FORMATS         METADATA
+        SPLIT   STR     uh8k/format_split.config
+END
+
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        chip00   STR     Cell
+        chip01   STR     Cell
+        chip02   STR     Cell
+        chip03   STR     Cell
+        chip04   STR     Cell
+        chip05   STR     Cell
+        chip06   STR     Cell
+        chip07   STR     Cell
+END
+
+# move this elsewhere?  we need a lookup table to go from filter ID to abstract name
+FILTER.ID       METADATA
+	UKNOWN	STR	UNKNOWN
+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	uh8k		# Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias     STR BIAS
+  zero     STR BIAS
+  dark     STR DARK
+  flat     STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        # Other recipes
+        PSPHOT          STR     uh8k/psphot.config           # psphot details
+        PSASTRO         STR     uh8k/psastro.config          # psastro details
+	PSWARP		STR	uh8k/pswarp.config		# pswarp details
+        PPIMAGE         STR     uh8k/ppImage.config          # ppImage recipe
+	REJECTIONS      STR     uh8k/rejections.config       # rejection recipe
+	PPMERGE		STR	uh8k/ppMerge.config		# ppMerge recipe
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION	STR	recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES	STR	recipes/filerules-split.mdc		# File rules appropriate for MEF format
+
+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.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
+
+  PSF.HEAD   STR {CHIP.NAME}.hdr
+  PSF.TABLE  STR {CHIP.NAME}.psf_model
+  PSF.RESID  STR {CHIP.NAME}.psf_resid
+
+  REF.ASTROM STR {CHIP.NAME}.ref_astrom
+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.N}		# Rule for generating photcode
+
Index: /branches/eam_branches/ippconfig.20240412/uh8k/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/dvo.config	(revision 42661)
@@ -0,0 +1,67 @@
+
+# location of DVO database tables
+CATDIR			/data/alala.0/eugene/isp/catdir
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+#DATE-KEYWORD		DATE-OBS
+#DATE-MODE		yyyy-mm-dd
+#UT-KEYWORD		UTC-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		MJD-OBS
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+
Index: /branches/eam_branches/ippconfig.20240412/uh8k/format_split.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/format_split.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/format_split.config	(revision 42661)
@@ -0,0 +1,156 @@
+# Camera format for WFI/8k on the UH88
+
+# How to recognise this type
+RULE	METADATA
+	ORIGIN		STR	UH 2.2m Telescope
+	CCD		STR	8k
+	DETECTOR	STR	8k
+	INSTRUME	STR	8k/WFI
+	IMAGESWV	STR	CFHT DetCom v3.41 (Jun 10 2008)
+	NAXIS           S32     2
+END
+
+FILE	METADATA
+	# How to read this data
+	PHU		STR	CHIP	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# The extensions represent chips
+	FPA.OBS		STR	EXPNUM	# A PHU keyword for unique identifier
+	CONTENT		STR	EXTNAME	# Key to the CONTENTS menu
+	CONTENT.RULE	STR	{CHIP.NAME} # How to derive the CONTENT when writing
+END
+
+# What's in the FITS file?
+CONTENTS	METADATA
+	# Content name, chipType
+	chip00		STR	chip00:SingleAmp
+	chip01		STR	chip01:SingleAmp
+	chip02		STR	chip02:SingleAmp
+	chip03		STR	chip03:SingleAmp
+	chip04		STR	chip04:SingleAmp
+	chip05		STR	chip05:SingleAmp
+	chip06		STR	chip06:SingleAmp
+	chip07		STR	chip07:SingleAmp
+END
+
+# Specify the chips
+CHIPS		METADATA
+	# Chip type, cellName:cellType
+	SingleAmp	STR	Cell:amplifier
+END
+
+
+# Specify the cells
+CELLS		METADATA
+	# Cell type, concepts for this type
+	amplifier	METADATA
+		CELL.BIASSEC.SOURCE	STR	HEADER
+		CELL.TRIMSEC.SOURCE	STR	HEADER
+		CELL.BIASSEC		STR	BIASSEC
+		CELL.TRIMSEC		STR	DATASEC
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.INSTRUMENT	STR	INSTRUME
+	FPA.DETECTOR    STR	DETECTOR
+        FPA.AIRMASS     STR     AIRMASS
+        FPA.FILTER      STR     FILTER
+        FPA.FILTERID    STR     FILTER
+        FPA.RA          STR     RA
+        FPA.DEC         STR     DEC
+	FPA.OBSTYPE	STR	OBSTYPE
+	FPA.OBJECT	STR	OBJECT
+	FPA.FOCUS	STR	TELFOCUS
+	FPA.TIME	STR	DATE-OBS TIME-OBS
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.EXPOSURE	STR	EXPTIME
+        CELL.EXPOSURE   STR     EXPTIME
+        CELL.DARKTIME   STR     DARKTIME
+	CELL.TIME	STR	DATE-OBS TIME-OBS
+	CELL.TIMESYS	STR	TIMESYS
+        CELL.XBIN       STR     CCDBIN1
+        CELL.YBIN       STR     CCDBIN2
+        CELL.SATURATION STR     MAXLIN
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS        METADATA
+        FPA.POSANGLE    	F32	0.0
+        FPA.RADECSYS    	STR     ICRS
+        CELL.READNOISE  	F32	10.0	# A guess
+	CELL.GAIN		F32	1.0	# A guess
+
+	FPA.TELESCOPE		STR	UH 88-inch
+	CHIP.XSIZE		S32	2048
+	CHIP.YSIZE		S32	4096
+	CELL.XSIZE		S32	2048
+	CELL.YSIZE		S32	4096
+	CELL.XWINDOW		S32	0
+	CELL.YWINDOW		S32	0
+	CELL.READDIR		S32	1		# Cell is read in x direction
+        CELL.BAD                F32     0
+	CELL.XPARITY		S32	1
+	CELL.YPARITY		S32	1
+	CELL.Y0			S32	0
+	CELL.X0			S32	0
+	CHIP.X0.DEPEND		STR	CHIP.NAME
+	CHIP.X0		METADATA
+		chip00	S32	0
+		chip01	S32	2048
+		chip02	S32	4096
+		chip03	S32	6144
+		chip04	S32	0   
+		chip05	S32	2048
+		chip06	S32	4096
+		chip07	S32	6144
+	END
+	CHIP.Y0.DEPEND		STR	CHIP.NAME
+	CHIP.Y0		METADATA
+		chip00	S32	8192
+		chip01	S32	8192
+		chip02	S32	8192
+		chip03	S32	8192
+		chip04	S32	0
+		chip05	S32	0
+		chip06	S32	0
+		chip07	S32	0
+	END
+	CHIP.XPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.XPARITY	METADATA
+		chip00	S32	-1
+		chip01	S32	-1
+		chip02	S32	-1
+		chip03	S32	-1
+		chip04	S32	1
+		chip05	S32	1
+		chip06	S32	1
+		chip07	S32	1
+	END
+	CHIP.YPARITY.DEPEND	STR	CHIP.NAME
+	CHIP.YPARITY	METADATA
+		chip00	S32	-1
+		chip01	S32	-1
+		chip02	S32	-1
+		chip03	S32	-1
+		chip04	S32	1
+		chip05	S32	1
+		chip06	S32	1
+		chip07	S32	1
+	END
+END
+
+
+# How to translation PS concepts into database lookups
+DATABASE	METADATA
+END		
+
+
+# Where there might be some ambiguity, specify the format
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	SEPARATE YEAR.FIRST
+	CELL.TIME	STR	SEPARATE YEAR.FIRST
+END
+ 
Index: /branches/eam_branches/ippconfig.20240412/uh8k/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/ppImage.config	(revision 42661)
@@ -0,0 +1,190 @@
+### ppImage recipe configuration file for Megacam
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	NONE		# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	0		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# for a test, turn off selected detrend types
+OVERSCAN	BOOL	FALSE		# Overscan subtraction
+BIAS		BOOL	FALSE		# Bias subtraction
+DARK		BOOL	TRUE		# Dark subtraction
+FLAT		BOOL	TRUE		# Flat-field normalisation
+
+# binned output image options
+BIN1.XBIN               S32     18
+BIN1.YBIN               S32     18
+BIN2.XBIN               S32     144
+BIN2.YBIN               S32     144
+
+# megacam needs fringe subtraction
+FRINGE		BOOL	TRUE		# Fringe subtraction
+
+# this table lists extra constraints which should be applied when
+# selecting the detrend images.
+# note: camera and time are always applied
+
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  DARK METADATA
+#   EXPTIME STR FPA.EXPOSURE
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTERID
+#   DETTYPE STR DOMEFLAT.RAW
+#   VERSION STR SKYFLAT.RAW
+#   VERSION STR DOMEFLAT.CORR.XX
+#   VERSION STR SKYFLAT.CORR
+  END
+  FLAT_CORRECTION METADATA
+    FILTER   STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+#   AIRMASS  STR FPA.AIRMASS
+#   TWILIGHT STR FPA.TWILIGHT
+  END
+  SHUTTER METADATA
+  END
+  MASK METADATA
+  END	
+END
+
+# only apply the fringe for these filters
+FRINGE.FILTERS  MULTI
+FRINGE.FILTERS	STR i
+FRINGE.FILTERS	STR z
+
+# Standard chip processing
+CHIP    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS       METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    TRUE            # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # 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?
+END 
Index: /branches/eam_branches/ippconfig.20240412/uh8k/ppMerge.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/ppMerge.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/ppMerge.config	(revision 42661)
@@ -0,0 +1,40 @@
+
+# Bias combination --- don't want min/max rejection
+PPMERGE_BIAS	METADATA
+   REJ		F32	3.0		# Rejection threshold (sigma)
+   ITER		S32	2		# Number of rejection iterations
+   FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+   FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+   WEIGHTS	BOOL	FALSE		# Use image weights?
+   COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Dark combination --- don't want min/max rejection
+# More aggressive clipping than bias, so as to remove CRs
+PPMERGE_DARK	METADATA
+  REJ		F32	2.0		# Rejection threshold (sigma)
+  ITER		S32	4		# Number of rejection iterations
+  FRACHIGH	F32	0.0		# Fraction of high pixels to reject immediately
+  FRACLOW	F32	0.0		# Fraction of low pixels to reject immediately
+  WEIGHTS	BOOL	FALSE		# Use image weights?
+  COMBINE	STR	CLIPPED		# Statistic to use for combination: 
+END
+
+# Flat combination --- use min/max rejection
+PPMERGE_FLAT	METADATA
+	REJ		F32	3.0		# Rejection threshold (sigma)
+	ITER		S32	1		# Number of rejection iterations
+	FRACHIGH	F32	0.3		# Fraction of high pixels to reject immediately
+	FRACLOW		F32	0.1		# Fraction of low pixels to reject immediately
+	NKEEP		S32	5		# Minimum number of pixels in stack to keep
+	WEIGHTS		BOOL	FALSE		# Use image weights?
+	COMBINE		STR	MEAN		# Statistic to use for combination: 
+END
+
+
+# Fringe combination --- already included in default, above
+PPMERGE_FRINGE	METADATA
+	FRACHIGH	F32	0.1		# Fraction of high pixels to reject immediately
+	WEIGHTS		BOOL	FALSE		# Use image weights?
+END
+
Index: /branches/eam_branches/ippconfig.20240412/uh8k/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/psastro.config	(revision 42661)
@@ -0,0 +1,74 @@
+
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32    2500.
+PSASTRO.GRID.SCALE     F32      50.
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32 1.0
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32     75
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.FIT.NITER S32   3
+PSASTRO.MATCH.RADIUS    F32   12.0
+PSASTRO.MATCH.RADIUS.N0 F32   15.0
+PSASTRO.MATCH.RADIUS.N1 F32   10.0
+PSASTRO.MATCH.RADIUS.N2 F32    5.0
+
+PSASTRO.MAX.NRAW       S32      1500   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF       S32      1500   # max stars accepted for fitting (0 for all)
+
+PSASTRO.MIN.INST.MAG.RAW       F32      -15.5  # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32       -8.0  # max instrumental magnitude for stars accepted for fitting
+
+PSASTRO.MAX.ERROR      F32      10.0 # max error in pixels
+PSASTRO.MIN.NSTAR      S32      10   # min fitted stars in solution
+
+PSASTRO.MOSAIC.MODE           BOOL     FALSE
+
+PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+PSASTRO.MOSAIC.RADIUS.N0    F32    10.0
+PSASTRO.MOSAIC.RADIUS.N1    F32     8.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N2    F32     8.0 # do not refine the match
+PSASTRO.MOSAIC.RADIUS.N3    F32     4.0 
+
+PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      3 # fit order (-1 means use default)
+
+PSASTRO.MOSAIC.GRADIENT.NX    S32      2   # number of x-dir cells per chip
+PSASTRO.MOSAIC.GRADIENT.NY    S32      4   # number of y-dir cells per chip
+
+# use this recipe to set a tight constraint
+PSASTRO.FINE METADATA
+  PSASTRO.MOSAIC.MAX.ERROR.N0 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N1 F32    1.50 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N2 F32    0.90 # max allow error for valid solution (arcsec)
+  PSASTRO.MOSAIC.MAX.ERROR.N3 F32    0.90 # max allow error for valid solution (arcsec)
+
+  PSASTRO.MOSAIC.RADIUS.N0    F32    8.0
+  PSASTRO.MOSAIC.RADIUS.N1    F32    0.0
+  PSASTRO.MOSAIC.RADIUS.N2    F32    4.0
+  PSASTRO.MOSAIC.RADIUS.N3    F32    4.0
+
+  PSASTRO.MOSAIC.CHIP.ORDER.N0  S32      0 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N1  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N2  S32      1 # fit order (-1 means use default)
+  PSASTRO.MOSAIC.CHIP.ORDER.N3  S32      1 # fit order (-1 means use default)
+END
Index: /branches/eam_branches/ippconfig.20240412/uh8k/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/psphot.config	(revision 42661)
@@ -0,0 +1,9 @@
+
+# PSF model parameters : choose the PSF model desired
+PSF_MODEL           STR  PS_MODEL_QGAUSS
+
+DIAGNOSTIC.PLOTS		METADATA
+  IMAGE.BACKGROUND.CELL.HISTOGRAM   BOOL FALSE
+  IMAGE.BACKGROUND.CELL.HISTOGRAM.X S32 -1
+  IMAGE.BACKGROUND.CELL.HISTOGRAM.Y S32 12
+END
Index: /branches/eam_branches/ippconfig.20240412/uh8k/pswarp.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/pswarp.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/pswarp.config	(revision 42661)
@@ -0,0 +1,3 @@
+### uh8k recipe for pswarp
+
+ASTROM.SOURCE	STR	PSASTRO.OUTPUT	# Source file rule for astrometry, or NULL
Index: /branches/eam_branches/ippconfig.20240412/uh8k/rejections.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/uh8k/rejections.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/uh8k/rejections.config	(revision 42661)
@@ -0,0 +1,38 @@
+
+BIAS METADATA
+  FILTER      	     STR  *
+  EXPECTED    	     F32  0.0
+  IMFILE.MEAN 	     F32  2.0
+  IMFILE.STDEV       F32 10.0
+  IMFILE.MEANSTDEV   F32  0.5
+  IMFILE.SKEWNESS    F32  0.0
+  IMFILE.KURTOSIS    F32  0.0
+  IMFILE.SNR         F32  0.0
+  IMFILE.BIN.STDEV   F32  0.5
+  IMFILE.BIN.SNR     F32  0.0
+  IMFILE.FLUX        F32  0.0
+  EXP.MEAN           F32  1.0
+  EXP.STDEV          F32 10.0
+  EXP.MEANSTDEV      F32  0.5
+  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  3.0
+  ENSEMBLE.STDEV     F32  3.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
+# IMFILE.MEAN is the maximum permitted mean value for an imfile, relative to the standard deviation
+# IMFILE.STDEV is the maximum permitted standard deviation for an imfile
+# EXP.MEAN is the maximum permitted mean value for an exposure, relative to the standard deviation
+# EXP.STDEV is the maximum permitted standard deviation for an exposure
+# EXP.MEANSTDEV is the maximum permitted mean standard deviation for an exposure relative to the mean
+# ENSEMBLE.MEAN is the maximum permitted mean for an ensemble of exposures
+# ENSEMBLE.STDEV is the maximum permitted standard deviation for an ensemble of exposures
+# ENSEMBLE.MEANSTDEV is the maximum permitted mean standard deviation for an ensemble of exposures
+# IMFILE.SNR is the minimum permitted signal-to-noise for an imfile
+# EXP.SNR is the minimum permitted signal-to-noise for an exposure
+# These values (all except FILTER) may be zero, in which case no clipping is applied.
Index: /branches/eam_branches/ippconfig.20240412/vysos20/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos20/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos20/Makefile.am	(revision 42661)
@@ -0,0 +1,19 @@
+
+installdir = $(datadir)/ippconfig/vysos20
+
+install_files = \
+	camera.config \
+	format.config \
+	format_flipped.config \
+	psphot.config \
+	psastro.config \
+	ppImage.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/vysos20/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos20/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos20/camera.config	(revision 42661)
@@ -0,0 +1,79 @@
+# Camera configuration file for simulation test
+
+# File formats that we know about
+FORMATS         METADATA
+        FLIPPED STR     vysos20/format_flipped.config
+        SIMPLE  STR     vysos20/format.config
+END
+ 
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip            STR     Cell
+END
+
+# valid filter names and corresponding IDs
+FILTER.ID       METADATA
+        NONE    STR     NONE
+        g       STR     PSg
+        r       STR     PSr
+        i       STR     PSi
+        z       STR     PSz
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID         METADATA
+        FPA     STR     fpa
+END
+
+DVO.CAMERADIR   STR     vysos20          # Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias     STR BIAS
+  zero     STR BIAS
+  dark     STR DARK
+  flat     STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+  light    STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        PPIMAGE         STR     vysos20/ppImage.config   # Default: all (normal) options on
+        PSPHOT          STR     vysos20/psphot.config    # psphot details
+        PSASTRO         STR     vysos20/psastro.config   # psastro details
+        # PPSIM           STR     vysos20/ppSim.config     # ppSim details
+        # PPSUB           STR     vysos20/ppSub.config     # ppSub details
+        # REJECTIONS      STR     vysos20/rejections.config # Rejection for detrend creation
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION       STR     recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES       STR     recipes/filerules-simple.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.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
+
+  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
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}          # Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/vysos20/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos20/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos20/dvo.config	(revision 42661)
@@ -0,0 +1,70 @@
+
+# location of DVO database tables
+CATDIR			/data/alala.0/eugene/isp/catdir
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+DATE-KEYWORD		DATE
+DATE-MODE		dd/mm/yy
+UT-KEYWORD		NONE
+
+# XXX MAJOR hack...
+JD-KEYWORD		XBINNING 
+MJD-KEYWORD		NONE
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+MOSAICNAME              VYSOS5
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+
Index: /branches/eam_branches/ippconfig.20240412/vysos20/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos20/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos20/format.config	(revision 42661)
@@ -0,0 +1,81 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	VYSOS-20
+	INSTRUME	STR	Apogee USB/Net
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	OBJECT	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:4098,10:4098]
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1:4098,1:9]
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	IMAGETYP
+        FPA.FILTERID    STR     FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.RA		STR	OBJCTRA
+	FPA.DEC		STR	OBJCTDEC
+	FPA.OBJECT	STR	OBJECT
+        FPA.COMMENT     STR     NOTES
+	FPA.TIME	STR	DATE-OBS	# Date and time
+	FPA.EXPOSURE	STR	EXPTIME
+        FPA.TEMP        STR     CCD-TEMP
+	FPA.AIRMASS	STR	AIRMASS ## XXX need to fix this! (ALT, AZ, LAT, LONG are provided)
+	CHIP.TEMP	STR     CCD-TEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	DATE-OBS	# Date and time
+	CELL.XBIN	STR	XBINNING
+	CELL.YBIN	STR	YBINNING
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TELESCOPE	STR	VYSOS20
+	FPA.INSTRUMENT	STR	VYSOS20
+	FPA.DETECTOR	STR	VYSOS20
+	FPA.POSANGLE	STR	0.0
+	FPA.TIMESYS	STR	UTC ## XXX need to fix error handling when this is in TRANSLATION but not supplied
+	FPA.RADECSYS	F32	2000.0 ## equinox of radec
+	CELL.SATURATION	F32	60000
+	CELL.BAD	F32	-100 ## XXX this value is bogus, but needs to be context based so residual images do not get half-masked
+	CELL.READDIR	S32	2
+	CELL.TIMESYS	STR	UTC
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+	CELL.XWINDOW	S32	0
+	CELL.YWINDOW	S32	0
+	CELL.GAIN	F32	0.2
+	CELL.READNOISE	F32	4.6
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	YEAR.FIRST
+	CELL.TIME	STR	YEAR.FIRST
+END
Index: /branches/eam_branches/ippconfig.20240412/vysos20/format_flipped.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos20/format_flipped.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos20/format_flipped.config	(revision 42661)
@@ -0,0 +1,82 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	VYSOS-20
+	INSTRUME	STR	Apogee USB/Net
+	FLIPSTAT	STR	Flip/Mirror
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	OBJECT	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:4098,1:4089]
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1:4098,4090:4098]
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	IMAGETYP
+        FPA.FILTERID    STR     FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.RA		STR	OBJCTRA
+	FPA.DEC		STR	OBJCTDEC
+	FPA.OBJECT	STR	OBJECT
+        FPA.COMMENT     STR     NOTES
+	FPA.TIME	STR	DATE-OBS	# Date and time
+	FPA.EXPOSURE	STR	EXPTIME
+        FPA.TEMP        STR     CCD-TEMP
+	CHIP.TEMP	STR     CCD-TEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	DATE-OBS	# Date and time
+	CELL.XBIN	STR	XBINNING
+	CELL.YBIN	STR	YBINNING
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.AIRMASS	STR	AIRMASS ## XXX need to fix this! (ALT, AZ, LAT, LONG are provided)
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TELESCOPE	STR	VYSOS20
+	FPA.INSTRUMENT	STR	VYSOS20
+	FPA.DETECTOR	STR	VYSOS20
+	FPA.POSANGLE	STR	180.0
+	CELL.SATURATION	F32	60000
+	CELL.BAD	F32	-100 ## XXX this value is bogus, but needs to be context based so residual images do not get half-masked
+	CELL.READDIR	S32	2
+	CELL.TIMESYS	STR	UTC
+	CELL.XPARITY	S32	-1
+	CELL.YPARITY	S32	-1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+	CELL.XWINDOW	S32	0
+	CELL.YWINDOW	S32	0
+	CELL.GAIN	F32	0.2
+	CELL.READNOISE	F32	4.6
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	YEAR.FIRST
+	CELL.TIME	STR	YEAR.FIRST
+END
Index: /branches/eam_branches/ippconfig.20240412/vysos20/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos20/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos20/ppImage.config	(revision 42661)
@@ -0,0 +1,317 @@
+### ppImage recipe configuration file for simulated test camera
+
+# default list of output products
+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? 
+
+# default list of analysis steps to perform
+OVERSCAN         BOOL    TRUE            # Overscan subtraction
+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
+FRINGE           BOOL    FALSE           # 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?
+
+# apply the cell parity flips to the cells?
+APPLY.CELL.PARITY  BOOL    TRUE
+
+# binned output image options
+BIN1.XBIN               S32     8
+BIN1.YBIN               S32     8
+BIN2.XBIN               S32     64
+BIN2.YBIN               S32     64
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	7		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# How to select the appropriate detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  MASK METADATA
+  END
+  DARK METADATA
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+  END
+  SHUTTER METADATA
+  END	
+END
+
+
+########################################################################################
+# Need the following in order to turn off overscan and shutter for the site-level recipe
+########################################################################################
+
+# Standard chip processing
+CHIP   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    FALSE           # Overscan subtraction
+  BIAS             BOOL    TRUE            # XXX : use dark as bias for now
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    FALSE           # XXX : turn off flat for now
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_DET_ONLY     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
+  BIAS               BOOL    TRUE            # Bias subtraction
+  DARK               BOOL    FALSE           # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    FALSE           # Mask bad pixels
+  FRINGE             BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan subtraction only
+PPIMAGE_O         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    TRUE            # Overscan subtraction
+  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
+  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?
+END
+
+# Dark subtraction only
+PPIMAGE_D         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
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Shutter correction only
+PPIMAGE_S         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
+  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
+  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?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR    METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP   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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+  CHIP.MASK.FITS  BOOL    TRUE            # Save mask
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATCORR    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    FLAT METADATA
+      DETTYPE STR FLAT_RAW
+    END
+  END   
+END
+
Index: /branches/eam_branches/ippconfig.20240412/vysos20/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos20/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos20/psastro.config	(revision 42661)
@@ -0,0 +1,119 @@
+	
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32     500.
+PSASTRO.GRID.SCALE     F32      50
+PSASTRO.GRID.NSTAR.MAX S32     800 # max stars accepted for fitting
+
+PSASTRO.MAX.NRAW      S32      1000   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF      S32      2000   # max stars accepted for fitting (0 for all)
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32     0.1   # pad by this fraction of the full mosaic (may need to be larger for single chips)
+
+# 
+PSASTRO.MIN.INST.MAG.RAW       F32     -20.0   # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32     -8.0   # max instrumental magnitude for stars accepted for fitting
+
+#
+# PSASTRO.GRID.MIN.ANGLE F32 0.0 # start angle (degrees)
+# PSASTRO.GRID.MAX.ANGLE F32 360.0
+# PSASTRO.GRID.DEL.ANGLE F32  1.0
+
+#PSASTRO.GRID.MIN.ANGLE F32  +178.0 # start angle (degrees)
+#PSASTRO.GRID.MAX.ANGLE F32  +182.0
+PSASTRO.GRID.MIN.ANGLE F32  -5.0 # start angle (degrees)
+PSASTRO.GRID.MAX.ANGLE F32  +5.0
+PSASTRO.GRID.DEL.ANGLE F32   0.5
+
+#
+PSASTRO.GRID.MIN.SCALE F32  0.990
+PSASTRO.GRID.MAX.SCALE F32  1.011
+PSASTRO.GRID.DEL.SCALE F32  0.010
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.RADIUS.N0 F32    30
+PSASTRO.MATCH.RADIUS.N1 F32    30
+PSASTRO.MATCH.RADIUS.N2 F32    30
+PSASTRO.MATCH.RADIUS.N3 F32    20
+PSASTRO.MATCH.RADIUS.N4 F32    20
+PSASTRO.MATCH.RADIUS.N5 F32    20
+PSASTRO.MATCH.RADIUS.N6 F32    10
+PSASTRO.MATCH.RADIUS.N7 F32    10
+PSASTRO.MATCH.FIT.NITER S32     3
+
+# pmAstromMatchFit
+PSASTRO.CHIP.ORDER     S32      3  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
+# XXX Test for taurus
+PSASTRO.GRID.MIN.SIGMA  F32  1.0
+PSASTRO.IGNORE          STR  SATURATED,CRLIMIT,DEFECT,BLEND,FAIL
+
+PSASTRO.MAX.ERROR      F32     1.25 # max allow error for valid solution (UNITS?)
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32    150
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+PSASTRO.USE.MODEL             BOOL     TRUE
+
+# Mosaic Astrometry options
+PSASTRO.MOSAIC.MODE         BOOL   FALSE
+
+PSASTRO.CATDIR              STR      SYNTH.BRIGHT
+DVO.GETSTAR.PHOTCODE        STR      r
+DVO.GETSTAR.MAX.RHO         F32      1000.0
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 15.0
+  PHOTCODE STR g_SYNTH
+  GHOST_MAX_MAG                   F32 -20.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32 21.5
+  PHOTCODE STR r_SYNTH
+  GHOST_MAX_MAG                   F32 -20.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR i
+  ZEROPT   F32 20.5
+  PHOTCODE STR i_SYNTH
+  GHOST_MAX_MAG                   F32 -20.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR z
+  ZEROPT   F32 19.0
+  PHOTCODE STR z_SYNTH
+  GHOST_MAX_MAG                   F32 -20.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR y
+  ZEROPT   F32 19.0
+  PHOTCODE STR y_SYNTH
+  GHOST_MAX_MAG                   F32 -20.0
+END
+
+PSASTRO.PLOT.REF.MAG.MIN  F32 +5.0
+PSASTRO.PLOT.REF.MAG.MAX  F32 +12.0
+DVO.GETSTAR.MAX.RHO         F32      1000.0
+
+# PSASTRO.MATCH.LUMFUNC  BOOL     TRUE
+
+# DVO.GETSTAR.MAG.MAX         F32      20.0
+# XXX need to be able to limit the density!
+
+# XXX this does not really make sense -- a single chip model cannot be inconsistent in rotation with the model!
+PSASTRO.ANGLE.TOLERANCE       F32      10.0
Index: /branches/eam_branches/ippconfig.20240412/vysos20/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos20/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos20/psphot.config	(revision 42661)
@@ -0,0 +1,24 @@
+
+# XXX check on this value
+PSF_CLUMP_NSIGMA                    F32   3.5             # region of Sx,Sy plane to use for selecting PSF stars
+
+# do we want to do 2-pass analysis?
+# BREAK_POINT                         STR   PASS1     
+
+# keep these large since psfs are so undersampled
+PSPHOT.CR.NSIGMA.LIMIT              F32   5.0  # sources with crNsigma greater that this get tagged as likely cosmic rays
+PSPHOT.EXT.NSIGMA.LIMIT             F32   5.0  # sources with extNsigma greater that this get tagged as likely extended sources
+
+# small psfs so small grow radius
+FOOTPRINT_GROW_RADIUS               S32   1       	  # How much to grow bright footprints
+FOOTPRINT_GROW_RADIUS_2             S32   2       	  # How much to grow faint footprints
+
+PSF_MODEL                           STR   PS_MODEL_PGAUSS
+PSF_CLUMP_NX                        S32   3               # subdivide image in to NX x NY regions for 
+PSF_CLUMP_NY                        S32   3               # selecting PSF stars
+
+PSF.TREND.MODE                      STR   MAP
+PSF.TREND.NX                        S32   5
+PSF.TREND.NY                        S32   5
+
+PSF.RESIDUALS.SPATIAL_ORDER         S32   1               # fit spatial variations of the residuals at this order (0,1)
Index: /branches/eam_branches/ippconfig.20240412/vysos5/Makefile.am
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos5/Makefile.am	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos5/Makefile.am	(revision 42661)
@@ -0,0 +1,19 @@
+
+installdir = $(datadir)/ippconfig/vysos5
+
+install_files = \
+	camera.config \
+	format.config \
+	format_flipped.config \
+	psphot.config \
+	psastro.config \
+	ppImage.config
+
+install_DATA = $(install_files)
+
+install-data-hook:
+	chmod 0755 $(installdir)
+
+EXTRA_DIST = $(install_files)
+
+ACLOCAL_AMFLAGS = -I m4
Index: /branches/eam_branches/ippconfig.20240412/vysos5/camera.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos5/camera.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos5/camera.config	(revision 42661)
@@ -0,0 +1,79 @@
+# Camera configuration file for simulation test
+
+# File formats that we know about
+FORMATS         METADATA
+        FLIPPED STR     vysos5/format_flipped.config
+        SIMPLE  STR     vysos5/format.config
+END
+ 
+# Description of camera --- all the chips and the cells that comprise them
+FPA     METADATA
+        Chip            STR     Cell
+END
+
+# valid filter names and corresponding IDs
+FILTER.ID       METADATA
+        NONE    STR     NONE
+        g       STR     PSg
+        r       STR     PSr
+        i       STR     PSi
+        z       STR     PSz
+END
+
+# Table of strings to use for the class identifier (see ippdb) according to the file level.
+CLASSID         METADATA
+        FPA     STR     fpa
+END
+
+DVO.CAMERADIR   STR     vysos5          # Camera directory for DVO
+
+# convert supplied FPA.OBSTYPE values to abstract exptype names
+OBSTYPE.TABLE METADATA
+  bias     STR BIAS
+  zero     STR BIAS
+  dark     STR DARK
+  flat     STR SKYFLAT
+  skyflat  STR SKYFLAT
+  domeflat STR DOMEFLAT
+  object   STR OBJECT
+  science  STR OBJECT
+  light    STR OBJECT
+END
+
+# Recipe options
+RECIPES         METADATA
+        PPIMAGE         STR     vysos5/ppImage.config   # Default: all (normal) options on
+        PSPHOT          STR     vysos5/psphot.config    # psphot details
+        PSASTRO         STR     vysos5/psastro.config   # psastro details
+        # PPSIM           STR     vysos5/ppSim.config     # ppSim details
+        # PPSUB           STR     vysos5/ppSub.config     # ppSub details
+        # REJECTIONS      STR     vysos5/rejections.config # Rejection for detrend creation
+END
+
+# reduction classes (recipes which are grouped together)
+REDUCTION       STR     recipes/reductionClasses.mdc
+
+FITSTYPES       STR     recipes/fitstypes.mdc
+
+FILERULES       STR     recipes/filerules-simple.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.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
+
+  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
+END
+
+PHOTCODE.RULE           STR     {DETECTOR}.{FILTER.ID}          # Rule for generating photcode
Index: /branches/eam_branches/ippconfig.20240412/vysos5/dvo.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos5/dvo.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos5/dvo.config	(revision 42661)
@@ -0,0 +1,68 @@
+
+# location of DVO database tables
+CATDIR			/data/alala.0/eugene/isp/catdir
+
+# keywords used by DVO to interpret the headers
+
+# keyword abstractions:
+DATE-KEYWORD		DATE
+DATE-MODE		dd/mm/yy
+UT-KEYWORD		TIME-OBS
+JD-KEYWORD		NONE
+MJD-KEYWORD		NONE
+
+# other keyword abstractions
+EXPTIME-KEYWORD		EXPTIME
+AIRMASS-KEYWORD		AIRMASS
+CCDNUM-KEYWORD		EXTNAME
+ST-KEYWORD		NONE
+OBSERVATORY-LATITUDE	NONE
+OBSERVATORY-LONGITUDE	NONE
+SUBPIX_DATAFILE		NONE
+
+# instrumental magnitude range for calibration mode 
+CAL_INSTMAG_MAX		0
+CAL_INSTMAG_MIN		0
+
+# exclude overscan region from the dB image boundaries
+XOVERSCAN		0
+YOVERSCAN		0
+
+# only upload stars within region; a value of 0 means ignore the limit
+ADDSTAR_XMIN		0
+ADDSTAR_XMAX		0
+ADDSTAR_YMIN		0
+ADDSTAR_YMAX		0
+
+# exclude stars with SN > SNLIMIT (ADDSTAR_SNLIMIT overrides old name MIN_SN_FSTAT)
+ADDSTAR_SNLIMIT		0
+
+# correlation radius (arcseconds)
+ADDSTAR_RADIUS		1.0
+
+# scaled correlation radius 
+ADDSTAR_NSIGMA		0
+
+MOSAICNAME              VYSOS5
+IMAGE_SCATTER           0.075  # mark images POOR if stdev(Mcal) > IMAGE_SCATTER
+STAR_SCATTER            0.005  # mark stars POOR if stdev(Mrel) > STAR_SCATTER
+IMAGE_OFFSET            0.100  # mark images POOR if abs(delta(Mcal)) > IMAGE_OFFSET
+STAR_CHISQ              10.0   # mark stars POOR if Xm > STAR_CHISQ
+STAR_TOOFEW              3     # mark star FEW if N(good) < STAR_TOOFEW
+IMAGE_TOOFEW            10     # mark image FEW if N(good) < IMAGE_TOOFEW
+IMAGE_GOOD_FRACTION     0.05   # mark image FEW if N(good) < IMAGE_GOOD_FRACTION * Nstars
+
+SCATTER_LIM             15.0
+MAG_LIM                 20.0   # select stars brighter than this for relphot analysis
+SIGMA_LIM               0.015  # select measurements with dM < SIGMA_LIM for relphot analysis
+# INST_MAG_MIN         -17     # optional constraints on magnitude ranges
+# INST_MAG_MAX         -13     # optional constraints on magnitude ranges
+
+RELPHOT_GRID_BINNING    256
+RELPHOT_GRID_X 6
+RELPHOT_GRID_Y 14
+
+PM_DT_MIN               0.25
+PM_TOOFEW               4
+POS_TOOFEW              1
+
Index: /branches/eam_branches/ippconfig.20240412/vysos5/format.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos5/format.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos5/format.config	(revision 42661)
@@ -0,0 +1,81 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	VYSOS-5
+	INSTRUME	STR	Apogee USB/Net
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	OBJECT	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:4098,10:4098]
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1:4098,1:9]
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	IMAGETYP
+        FPA.FILTERID    STR     FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.RA		STR	OBJCTRA
+	FPA.DEC		STR	OBJCTDEC
+	FPA.OBJECT	STR	OBJECT
+        FPA.COMMENT     STR     NOTES
+	FPA.TIME	STR	DATE-OBS	# Date and time
+	FPA.EXPOSURE	STR	EXPTIME
+        FPA.TEMP        STR     CCD-TEMP
+	CHIP.TEMP	STR     CCD-TEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	DATE-OBS	# Date and time
+	CELL.XBIN	STR	XBINNING
+	CELL.YBIN	STR	YBINNING
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.AIRMASS	STR	AIRMASS ## XXX need to fix this! (ALT, AZ, LAT, LONG are provided)
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TELESCOPE	STR	VYSOS5
+	FPA.INSTRUMENT	STR	VYSOS5
+	FPA.DETECTOR	STR	VYSOS5
+	FPA.POSANGLE	STR	0.0
+	CELL.SATURATION	F32	60000
+	CELL.BAD	F32	-100 ## XXX this value is bogus, but needs to be context based so residual images do not get half-masked
+	CELL.READDIR	S32	2
+	CELL.TIMESYS	STR	UTC
+	CELL.XPARITY	S32	1
+	CELL.YPARITY	S32	1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+	CELL.XWINDOW	S32	0
+	CELL.YWINDOW	S32	0
+	CELL.GAIN	F32	0.2
+	CELL.READNOISE	F32	4.6
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	YEAR.FIRST
+	CELL.TIME	STR	YEAR.FIRST
+END
Index: /branches/eam_branches/ippconfig.20240412/vysos5/format_flipped.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos5/format_flipped.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos5/format_flipped.config	(revision 42661)
@@ -0,0 +1,82 @@
+# Simulation test camera with single chip with single cell
+
+# How to identify this type
+RULE	METADATA
+	TELESCOP	STR	VYSOS-5
+	INSTRUME	STR	Apogee USB/Net
+	FLIPSTAT	STR	Flip/Mirror
+END
+
+# How to read this data
+FILE	METADATA
+	PHU		STR	FPA	# The FITS file represents an entire FPA
+	EXTENSIONS	STR	NONE	# There are no extensions
+	FPA.OBS		STR	OBJECT	# A PHU keyword for unique identifier within the hierarchy level
+END
+
+# What's in the FITS file?
+CONTENTS	STR	Chip:Cell:amplifier
+
+# Specify the cell data
+CELLS	METADATA
+	amplifier	METADATA
+		CELL.TRIMSEC.SOURCE	STR	VALUE
+		CELL.TRIMSEC		STR	[1:4098,1:4089]
+		CELL.BIASSEC.SOURCE	STR	VALUE
+		CELL.BIASSEC		STR	[1:4098,4090:4098]
+	END
+END
+
+# How to translate PS concepts into FITS headers
+TRANSLATION	METADATA
+	FPA.OBSTYPE	STR	IMAGETYP
+        FPA.FILTERID    STR     FILTER
+	FPA.FILTER	STR	FILTER
+	FPA.RA		STR	OBJCTRA
+	FPA.DEC		STR	OBJCTDEC
+	FPA.OBJECT	STR	OBJECT
+        FPA.COMMENT     STR     NOTES
+	FPA.TIME	STR	DATE-OBS	# Date and time
+	FPA.EXPOSURE	STR	EXPTIME
+        FPA.TEMP        STR     CCD-TEMP
+	CHIP.TEMP	STR     CCD-TEMP
+	CELL.EXPOSURE	STR	EXPTIME
+	CELL.DARKTIME	STR	DARKTIME
+	CELL.TIME	STR	DATE-OBS	# Date and time
+	CELL.XBIN	STR	XBINNING
+	CELL.YBIN	STR	YBINNING
+	FPA.TIMESYS	STR	TIMESYS
+	FPA.RADECSYS	STR	RADECSYS
+	FPA.AIRMASS	STR	AIRMASS ## XXX need to fix this! (ALT, AZ, LAT, LONG are provided)
+END
+
+# Default PS concepts that may be specified by value
+DEFAULTS	METADATA
+	FPA.TELESCOPE	STR	VYSOS5
+	FPA.INSTRUMENT	STR	VYSOS5
+	FPA.DETECTOR	STR	VYSOS5
+	FPA.POSANGLE	STR	180.0
+	CELL.SATURATION	F32	60000
+	CELL.BAD	F32	-100 ## XXX this value is bogus, but needs to be context based so residual images do not get half-masked
+	CELL.READDIR	S32	2
+	CELL.TIMESYS	STR	UTC
+	CELL.XPARITY	S32	-1
+	CELL.YPARITY	S32	-1
+	CHIP.XPARITY	S32	1
+	CHIP.YPARITY	S32	1
+	CELL.X0		S32	0
+	CELL.Y0		S32	0
+	CELL.XSIZE	S32	2048
+	CELL.YSIZE	S32	2048
+	CELL.XWINDOW	S32	0
+	CELL.YWINDOW	S32	0
+	CELL.GAIN	F32	0.2
+	CELL.READNOISE	F32	4.6
+END
+
+FORMATS		METADATA
+	FPA.RA		STR	HOURS
+	FPA.DEC		STR	DEGREES
+	FPA.TIME	STR	YEAR.FIRST
+	CELL.TIME	STR	YEAR.FIRST
+END
Index: /branches/eam_branches/ippconfig.20240412/vysos5/ppImage.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos5/ppImage.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos5/ppImage.config	(revision 42661)
@@ -0,0 +1,317 @@
+### ppImage recipe configuration file for simulated test camera
+
+# default list of output products
+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? 
+
+# default list of analysis steps to perform
+OVERSCAN         BOOL    TRUE            # Overscan subtraction
+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
+FRINGE           BOOL    FALSE           # 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?
+
+# apply the cell parity flips to the cells?
+APPLY.CELL.PARITY  BOOL    TRUE
+
+# binned output image options
+BIN1.XBIN               S32     8
+BIN1.YBIN               S32     8
+BIN2.XBIN               S32     64
+BIN2.YBIN               S32     64
+
+# Overscan subtraction
+OVERSCAN.SINGLE		BOOL	FALSE		# Reduce overscan to a single value?
+OVERSCAN.FIT		STR	POLYNOMIAL	# NONE | POLYNOMIAL | SPLINE
+OVERSCAN.ORDER		S32	7		# Order of polynomial fit
+OVERSCAN.STAT		STR	MEAN		# MEAN | MEDIAN
+
+# How to select the appropriate detrend image
+DETREND.CONSTRAINTS  METADATA
+  BIAS METADATA
+  END
+  MASK METADATA
+  END
+  DARK METADATA
+  END
+  FLAT METADATA
+    FILTER  STR FPA.FILTER
+  END
+  FRINGE METADATA
+    FILTER   STR FPA.FILTER
+  END
+  SHUTTER METADATA
+  END	
+END
+
+
+########################################################################################
+# Need the following in order to turn off overscan and shutter for the site-level recipe
+########################################################################################
+
+# Standard chip processing
+CHIP   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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_DET_ONLY     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
+  BIAS               BOOL    TRUE            # Bias subtraction
+  DARK               BOOL    FALSE           # Dark subtraction
+  SHUTTER            BOOL    FALSE           # Shutter correction
+  FLAT               BOOL    TRUE            # Flat-field normalisation
+  MASK               BOOL    FALSE           # Mask bad pixels
+  FRINGE             BOOL    FALSE           # Fringe subtraction
+  BIN1.FITS          BOOL    TRUE            # Save 1st binned chip image?
+  BIN2.FITS          BOOL    TRUE            # Save 2nd binned chip image?
+  PHOTOM             BOOL    FALSE           # Source identification and photometry
+  ASTROM.CHIP        BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC      BOOL    FALSE           # Astrometry for mosaic?
+END
+
+# Overscan subtraction only
+PPIMAGE_O         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    TRUE            # Overscan subtraction
+  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
+  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?
+END
+
+# Dark subtraction only
+PPIMAGE_D         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
+  BIAS            BOOL    FALSE           # Bias subtraction
+  DARK            BOOL    TRUE            # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Shutter correction only
+PPIMAGE_S         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
+  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
+  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?
+END
+
+# Overscan, bias, dark
+PPIMAGE_OBD      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter
+PPIMAGE_OBDS      METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    FALSE           # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field
+PPIMAGE_OBDSF     METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe
+PPIMAGE_OBDSFR    METADATA
+  BASE.FITS        BOOL    TRUE            # Save base detrended 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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_OBDSFRP   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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    FALSE           # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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?
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom, astrom
+PPIMAGE_OBDSFRA   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
+  BIAS            BOOL    TRUE            # Bias subtraction
+  DARK            BOOL    FALSE           # Dark subtraction
+  SHUTTER         BOOL    FALSE           # Shutter correction
+  FLAT            BOOL    TRUE            # Flat-field normalisation
+  MASK            BOOL    FALSE           # Mask bad pixels
+  FRINGE          BOOL    FALSE           # Fringe subtraction
+  PHOTOM          BOOL    TRUE		  # Source identification and photometry
+  ASTROM.CHIP     BOOL    FALSE           # Astrometry per chip?
+  ASTROM.MOSAIC   BOOL    FALSE		  # Astrometry for mosaic?
+  CHIP.MASK.FITS  BOOL    TRUE            # Save mask
+END
+
+# Overscan, bias, dark, shutter, flat-field, fringe, photom
+PPIMAGE_FLATCORR    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
+  BIAS             BOOL    TRUE            # Bias subtraction
+  DARK             BOOL    TRUE            # Dark subtraction
+  SHUTTER          BOOL    FALSE           # Shutter correction
+  FLAT             BOOL    TRUE            # Flat-field normalisation
+  MASK             BOOL    FALSE           # Mask bad pixels
+  FRINGE           BOOL    FALSE           # 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?
+
+  DETREND.CONSTRAINTS  METADATA
+    FLAT METADATA
+      DETTYPE STR FLAT_RAW
+    END
+  END   
+END
+
Index: /branches/eam_branches/ippconfig.20240412/vysos5/psastro.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos5/psastro.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos5/psastro.config	(revision 42661)
@@ -0,0 +1,99 @@
+	
+# astrometry matching parameters
+
+# nominal plate scale (microns / pixel)
+PSASTRO.PIXEL.SCALE    F32  1.0
+
+# pmAstromGridAngle
+# max grid offset in FP units (microns)
+# use plate-scale to make this in pixels?
+PSASTRO.GRID.OFFSET    F32     200.
+PSASTRO.GRID.SCALE     F32      10
+PSASTRO.GRID.NSTAR.MAX S32     800 # max stars accepted for fitting
+
+PSASTRO.MAX.NRAW      S32      1000   # max stars accepted for fitting (0 for all)
+PSASTRO.MAX.NREF      S32      2000   # max stars accepted for fitting (0 for all)
+
+# extra field for ref stars:
+PSASTRO.FIELD.PADDING  F32     0.1   # pad by this fraction of the full mosaic (may need to be larger for single chips)
+
+# 
+PSASTRO.MIN.INST.MAG.RAW       F32     -20.0   # min instrumental magnitude for stars accepted for fitting
+PSASTRO.MAX.INST.MAG.RAW       F32     -8.0   # max instrumental magnitude for stars accepted for fitting
+
+#
+# PSASTRO.GRID.MIN.ANGLE F32 0.0 # start angle (degrees)
+# PSASTRO.GRID.MAX.ANGLE F32 360.0
+# PSASTRO.GRID.DEL.ANGLE F32  1.0
+
+PSASTRO.GRID.MIN.ANGLE F32  -20.0 # start angle (degrees)
+PSASTRO.GRID.MAX.ANGLE F32  +20.0
+PSASTRO.GRID.DEL.ANGLE F32  1.0
+
+#
+PSASTRO.GRID.MIN.SCALE F32  0.99
+PSASTRO.GRID.MAX.SCALE F32  1.01
+PSASTRO.GRID.DEL.SCALE F32  0.01
+
+# single-chip radius match in pixels
+PSASTRO.MATCH.RADIUS.N0 F32    30
+PSASTRO.MATCH.RADIUS.N1 F32    30
+PSASTRO.MATCH.RADIUS.N2 F32    30
+PSASTRO.MATCH.RADIUS.N3 F32    20
+PSASTRO.MATCH.RADIUS.N4 F32    20
+PSASTRO.MATCH.RADIUS.N5 F32    20
+PSASTRO.MATCH.RADIUS.N6 F32    10
+PSASTRO.MATCH.RADIUS.N7 F32    10
+PSASTRO.MATCH.FIT.NITER S32     3
+
+# pmAstromMatchFit
+PSASTRO.CHIP.ORDER     S32      3  # fit order
+PSASTRO.CHIP.NITER     S32      3  # fit clipping iterations
+PSASTRO.CHIP.NSIGMA    F32      3  # fit clipping sigmas
+
+# XXX Test for taurus
+PSASTRO.GRID.MIN.SIGMA  F32  1.0
+PSASTRO.IGNORE          STR  SATURATED,CRLIMIT,DEFECT,BLEND,FAIL
+
+PSASTRO.MAX.ERROR      F32     1.25 # max allow error for valid solution (UNITS?)
+
+# these tweak are in FP units (pixels, currently)
+PSASTRO.TWEAK.SCALE     F32      1
+PSASTRO.TWEAK.RANGE     F32    150
+PSASTRO.TWEAK.SMOOTH    F32      2
+PSASTRO.TWEAK.NSIGMA    F32      3
+
+PSASTRO.USE.MODEL             BOOL     TRUE
+
+# Mosaic Astrometry options
+PSASTRO.MOSAIC.MODE         BOOL   FALSE
+
+PSASTRO.CATDIR              STR      SYNTH.BRIGHT
+DVO.GETSTAR.PHOTCODE        STR      r
+DVO.GETSTAR.MAX.RHO         F32      1000.0
+
+PHOTCODE.DATA MULTI
+PHOTCODE.DATA METADATA
+  FILTER   STR r
+  ZEROPT   F32 19.0
+  PHOTCODE STR r_SYNTH
+  GHOST_MAX_MAG                   F32 -20.0
+END
+PHOTCODE.DATA METADATA
+  FILTER   STR g
+  ZEROPT   F32 15.0
+  PHOTCODE STR g_SYNTH
+  GHOST_MAX_MAG                   F32 -20.0
+END
+
+PSASTRO.PLOT.REF.MAG.MIN  F32 +5.0
+PSASTRO.PLOT.REF.MAG.MAX  F32 +12.0
+DVO.GETSTAR.MAX.RHO         F32      1000.0
+
+# PSASTRO.MATCH.LUMFUNC  BOOL     TRUE
+
+# DVO.GETSTAR.MAG.MAX         F32      20.0
+# XXX need to be able to limit the density!
+
+# XXX this does not really make sense -- a single chip model cannot be inconsistent in rotation with the model!
+PSASTRO.ANGLE.TOLERANCE       F32      10.0
Index: /branches/eam_branches/ippconfig.20240412/vysos5/psphot.config
===================================================================
--- /branches/eam_branches/ippconfig.20240412/vysos5/psphot.config	(revision 42661)
+++ /branches/eam_branches/ippconfig.20240412/vysos5/psphot.config	(revision 42661)
@@ -0,0 +1,24 @@
+
+# XXX check on this value
+PSF_CLUMP_NSIGMA                    F32   3.5             # region of Sx,Sy plane to use for selecting PSF stars
+
+# do we want to do 2-pass analysis?
+# BREAK_POINT                         STR   PASS1     
+
+# keep these large since psfs are so undersampled
+PSPHOT.CR.NSIGMA.LIMIT              F32   5.0  # sources with crNsigma greater that this get tagged as likely cosmic rays
+PSPHOT.EXT.NSIGMA.LIMIT             F32   5.0  # sources with extNsigma greater that this get tagged as likely extended sources
+
+# small psfs so small grow radius
+FOOTPRINT_GROW_RADIUS               S32   1       	  # How much to grow bright footprints
+FOOTPRINT_GROW_RADIUS_2             S32   2       	  # How much to grow faint footprints
+
+PSF_MODEL                           STR   PS_MODEL_PGAUSS
+PSF_CLUMP_NX                        S32   3               # subdivide image in to NX x NY regions for 
+PSF_CLUMP_NY                        S32   3               # selecting PSF stars
+
+PSF.TREND.MODE                      STR   MAP
+PSF.TREND.NX                        S32   5
+PSF.TREND.NY                        S32   5
+
+PSF.RESIDUALS.SPATIAL_ORDER         S32   1               # fit spatial variations of the residuals at this order (0,1)
