Index: branches/eam_branches/ipp-20220316/psModules/src/detrend/pmOverscan.c
===================================================================
--- branches/eam_branches/ipp-20220316/psModules/src/detrend/pmOverscan.c	(revision 42147)
+++ branches/eam_branches/ipp-20220316/psModules/src/detrend/pmOverscan.c	(revision 42160)
@@ -40,4 +40,5 @@
 
     opts->minValid = 0.0; // default value if not defined
+    opts->maxValid = (float) 0x10000; // default value if not defined
     opts->maskVal = 0x0001; // default value if not defined
 
@@ -314,5 +315,5 @@
 	// declare the readout dead and mask
 
-	if (reduced < overscanOpts->minValid) {
+	if ((reduced < overscanOpts->minValid) || (reduced > overscanOpts->maxValid)) {
 	    fprintf (stderr, "bad overscan (1) %f, masking readout\n", reduced);
 	    psImage *mask = input->mask;
@@ -398,5 +399,5 @@
 	    // declare the readout dead and mask
 	  
-	    if (vectorStats->sampleMean < overscanOpts->minValid) {
+	    if ((vectorStats->sampleMean < overscanOpts->minValid) || (vectorStats->sampleMean > overscanOpts->maxValid)) {
 		fprintf (stderr, "bad overscan (2) %f, masking readout\n", vectorStats->sampleMean);
 		psImage *mask = input->mask;
@@ -497,5 +498,5 @@
 	  // declare the readout dead and mask
 	  
-	  if (vectorStats->sampleMean < overscanOpts->minValid) {
+	  if ((vectorStats->sampleMean < overscanOpts->minValid) || (vectorStats->sampleMean > overscanOpts->maxValid)) {
 	      fprintf (stderr, "bad overscan (3) %f, masking readout\n", vectorStats->sampleMean);
 	      psImage *mask = input->mask;
Index: branches/eam_branches/ipp-20220316/psModules/src/detrend/pmOverscan.h
===================================================================
--- branches/eam_branches/ipp-20220316/psModules/src/detrend/pmOverscan.h	(revision 42147)
+++ branches/eam_branches/ipp-20220316/psModules/src/detrend/pmOverscan.h	(revision 42160)
@@ -44,4 +44,5 @@
     float gauss;                        ///< Gaussian smoothing sigma
     float minValid;			///< if overscan is too low, readout is dead : mask
+    float maxValid;			///< if overscan is too high, readout is dead : mask
     psImageMaskType maskVal;            ///< Mask value to give dead readouts
 
