Index: /branches/eam_branches/ipp-20220316/ippconfig/README
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/README	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/README	(revision 42373)
@@ -17,2 +17,5 @@
   - 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/ipp-20220316/ippconfig/gpc1/Makefile.am
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc1/Makefile.am	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc1/Makefile.am	(revision 42373)
@@ -16,4 +16,5 @@
 	format_20100228.config \
 	format_20100723.config \
+	format_20220827.config \
 	format_mef.config \
 	format_relphot.config \
Index: /branches/eam_branches/ipp-20220316/ippconfig/gpc1/format_20220827.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc1/format_20220827.config	(revision 42373)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc1/format_20220827.config	(revision 42373)
@@ -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/ipp-20220316/ippconfig/gpc1/ppImage.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc1/ppImage.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc1/ppImage.config	(revision 42373)
@@ -518,4 +518,59 @@
 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?
Index: /branches/eam_branches/ipp-20220316/ippconfig/gpc1/psastro.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc1/psastro.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc1/psastro.config	(revision 42373)
@@ -149,5 +149,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR g
-  ZEROPT   F32 24.563
+  ZEROPT   F32 25.013
   PHOTCODE STR g
   GHOST_MAX_MAG                   F32 -16.5
@@ -156,5 +156,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR r
-  ZEROPT   F32 24.750
+  ZEROPT   F32 24.840
   PHOTCODE STR r
   GHOST_MAX_MAG                   F32 -20.0
@@ -163,5 +163,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR i
-  ZEROPT   F32 24.611
+  ZEROPT   F32 24.711
   PHOTCODE STR i
   GHOST_MAX_MAG                   F32 -22.0
@@ -170,5 +170,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR z
-  ZEROPT   F32 24.250
+  ZEROPT   F32 24.300
   PHOTCODE STR z
   GHOST_MAX_MAG                   F32 -22.0
@@ -177,5 +177,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR y
-  ZEROPT   F32 23.320
+  ZEROPT   F32 23.570
   PHOTCODE STR y
   GHOST_MAX_MAG                   F32 -21.5
@@ -184,5 +184,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR w
-  ZEROPT   F32 26.3
+  ZEROPT   F32 26.000
   PHOTCODE STR r
   GHOST_MAX_MAG                   F32 -20.4
Index: /branches/eam_branches/ipp-20220316/ippconfig/gpc2/Makefile.am
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc2/Makefile.am	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc2/Makefile.am	(revision 42373)
@@ -8,5 +8,7 @@
 	format_mef.config \
 	format_20180131.config \
+	format_20220616.config \
         ghost.model.mdc \
+        crosstalk_rules.mdc \
 	ppImage.config \
         ppMerge.config \
Index: /branches/eam_branches/ipp-20220316/ippconfig/gpc2/camera.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc2/camera.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc2/camera.config	(revision 42373)
@@ -5,4 +5,5 @@
 	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
Index: /branches/eam_branches/ipp-20220316/ippconfig/gpc2/crosstalk_rules.mdc
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc2/crosstalk_rules.mdc	(revision 42373)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc2/crosstalk_rules.mdc	(revision 42373)
@@ -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/ipp-20220316/ippconfig/gpc2/format_20220616.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc2/format_20220616.config	(revision 42373)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc2/format_20220616.config	(revision 42373)
@@ -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/ipp-20220316/ippconfig/gpc2/ppImage.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc2/ppImage.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc2/ppImage.config	(revision 42373)
@@ -413,4 +413,59 @@
      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
Index: /branches/eam_branches/ipp-20220316/ippconfig/gpc2/psastro.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc2/psastro.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc2/psastro.config	(revision 42373)
@@ -143,5 +143,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR g
-  ZEROPT   F32 24.563
+  ZEROPT   F32 25.013
   PHOTCODE STR g
   GHOST_MAX_MAG                   F32 -16.5
@@ -150,5 +150,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR r
-  ZEROPT   F32 24.750
+  ZEROPT   F32 24.840
   PHOTCODE STR r
   GHOST_MAX_MAG                   F32 -20.0
@@ -157,5 +157,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR i
-  ZEROPT   F32 24.611
+  ZEROPT   F32 24.711
   PHOTCODE STR i
   GHOST_MAX_MAG                   F32 -23.5
@@ -164,5 +164,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR z
-  ZEROPT   F32 24.250
+  ZEROPT   F32 24.300
   PHOTCODE STR z
   GHOST_MAX_MAG                   F32 -25.0
@@ -171,5 +171,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR y
-  ZEROPT   F32 23.320
+  ZEROPT   F32 23.570
   PHOTCODE STR y
   GHOST_MAX_MAG                   F32 -25.0
@@ -178,5 +178,5 @@
 PHOTCODE.DATA METADATA
   FILTER   STR w
-  ZEROPT   F32 26.3
+  ZEROPT   F32 26.000
   PHOTCODE STR r
   GHOST_MAX_MAG                   F32 -23.5
@@ -281,5 +281,8 @@
 REFSTAR_MASK_CROSSTALK_MAG_MAX   F32 -14.47
 CROSSTALK_MAX_MAG                F32  20.0
-CROSSTALK_MASK                   BOOL FALSE
+CROSSTALK_MASK                   BOOL TRUE
+
+# crosstal rules file is relative to PATH (eg, ippconfig directory)
+CROSSTALK_FILE                     STR  gpc2/crosstalk_rules.mdc
 
 PS1_REFERENCE METADATA
@@ -393,4 +396,16 @@
 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
Index: /branches/eam_branches/ipp-20220316/ippconfig/gpc2/pswarp.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/gpc2/pswarp.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/gpc2/pswarp.config	(revision 42373)
@@ -1,2 +1,0 @@
-APPLY.PIXELNAN		BOOL	FALSE		# Apply NAN'ing of pixels underneath masks
-
Index: /branches/eam_branches/ipp-20220316/ippconfig/recipes/filerules-mef.mdc
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/recipes/filerules-mef.mdc	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/recipes/filerules-mef.mdc	(revision 42373)
@@ -71,4 +71,5 @@
 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
Index: /branches/eam_branches/ipp-20220316/ippconfig/recipes/filerules-simple.mdc
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/recipes/filerules-simple.mdc	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/recipes/filerules-simple.mdc	(revision 42373)
@@ -31,4 +31,5 @@
 PPIMAGE.SHUTTER           INPUT    @DETDB        CHIP       IMAGE     
 PPIMAGE.LINEARITY         INPUT    @DETDB        CHIP       LINEARITY
+PPIMAGE.NEWNONLIN         INPUT    @DETDB        CHIP       NEWNONLIN
 
 FPCAMERA.OUTPUT          STR FPCAMERA.OUT.CMF
Index: /branches/eam_branches/ipp-20220316/ippconfig/recipes/filerules-split.mdc
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/recipes/filerules-split.mdc	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/recipes/filerules-split.mdc	(revision 42373)
@@ -53,4 +53,5 @@
 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
Index: /branches/eam_branches/ipp-20220316/ippconfig/recipes/ppImage.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/recipes/ppImage.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/recipes/ppImage.config	(revision 42373)
@@ -6,4 +6,5 @@
 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
@@ -21,4 +22,5 @@
 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?
@@ -527,4 +529,43 @@
    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
Index: /branches/eam_branches/ipp-20220316/ippconfig/recipes/psastro.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/recipes/psastro.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/recipes/psastro.config	(revision 42373)
@@ -246,4 +246,5 @@
 # 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
Index: /branches/eam_branches/ipp-20220316/ippconfig/recipes/psphot.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/recipes/psphot.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/recipes/psphot.config	(revision 42373)
@@ -861,4 +861,29 @@
 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 
Index: /branches/eam_branches/ipp-20220316/ippconfig/recipes/pswarp.config
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/recipes/pswarp.config	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/recipes/pswarp.config	(revision 42373)
@@ -13,4 +13,5 @@
 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
Index: /branches/eam_branches/ipp-20220316/ippconfig/recipes/reductionClasses.mdc
===================================================================
--- /branches/eam_branches/ipp-20220316/ippconfig/recipes/reductionClasses.mdc	(revision 42372)
+++ /branches/eam_branches/ipp-20220316/ippconfig/recipes/reductionClasses.mdc	(revision 42373)
@@ -325,6 +325,6 @@
         STACK_PPSUB       STR     STACK
         STACK_PSPHOT      STR     STACK
-        DIFF_PPSUB        STR     DIFF
-        DIFF_PSPHOT       STR     DIFF
+        DIFF_PPSUB        STR     WARPSTACK
+        DIFF_PSPHOT       STR     QUB_DIFF
         JPEG_BIN1         STR     PPIMAGE_J1
         JPEG_BIN2         STR     PPIMAGE_J2
@@ -613,4 +613,30 @@
 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
