Index: trunk/MagicSoft/Mars/msignal/MExtractTimeAndCharge.cc
===================================================================
--- trunk/MagicSoft/Mars/msignal/MExtractTimeAndCharge.cc	(revision 6798)
+++ trunk/MagicSoft/Mars/msignal/MExtractTimeAndCharge.cc	(revision 6820)
@@ -85,5 +85,5 @@
 using namespace std;
 
-const Float_t MExtractTimeAndCharge::fgLoGainStartShift = -2.8; 
+const Float_t MExtractTimeAndCharge::fgLoGainStartShift = -4.0; 
 const Byte_t  MExtractTimeAndCharge::fgLoGainSwitch = 120; 
 // --------------------------------------------------------------------------
@@ -217,6 +217,6 @@
           fLoGainFirstSave = fLoGainFirst;
           const Byte_t logainstart = sathi 
-            ? (sathi > (Int_t)fLoGainStartShift ? sathi + (Int_t)fLoGainStartShift : fLoGainFirst)
-            : (Byte_t)(timehi + fLoGainStartShift);
+            ? (sathi > (Int_t)(-fLoGainStartShift) ? sathi + (Int_t)fLoGainStartShift : fLoGainFirst)
+            : (timehi+fLoGainStartShift > 0. ? (Byte_t)(timehi + fLoGainStartShift) : fLoGainFirst);
           fLoGainFirst = logainstart > fLoGainFirstSave ? logainstart : fLoGainFirstSave;
 
Index: trunk/MagicSoft/Mars/msignal/MExtractor.cc
===================================================================
--- trunk/MagicSoft/Mars/msignal/MExtractor.cc	(revision 6798)
+++ trunk/MagicSoft/Mars/msignal/MExtractor.cc	(revision 6820)
@@ -133,9 +133,12 @@
 void MExtractor::SetRange(Byte_t hifirst, Byte_t hilast, Byte_t lofirst, Byte_t lolast)
 {
-    fHiGainFirst = hifirst;
-    fHiGainLast  = hilast;
-
-    fLoGainFirst = lofirst;
-    fLoGainLast  = lolast;
+ 
+  Clear();
+
+  fHiGainFirst = hifirst;
+  fHiGainLast  = hilast;
+  
+  fLoGainFirst = lofirst;
+  fLoGainLast  = lolast;
 }
 
Index: trunk/MagicSoft/Mars/msignal/MExtractor.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/MExtractor.h	(revision 6798)
+++ trunk/MagicSoft/Mars/msignal/MExtractor.h	(revision 6820)
@@ -72,4 +72,9 @@
   MExtractor(const char *name=NULL, const char *title=NULL);
   
+  void Clear(Option_t *o="") 
+    {
+      fHiGainFirst = fHiGainLast = fLoGainFirst = fLoGainLast = fHiLoLast = 0;
+    }
+
   Byte_t  GetHiGainFirst()      const { return fHiGainFirst;      }
   Byte_t  GetHiGainLast ()      const { return fHiGainLast ;      }
