Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 6906)
+++ trunk/MagicSoft/Mars/Changelog	(revision 6907)
@@ -39,4 +39,25 @@
    * mjobs/MJStar.cc:
     - added MPointingPosCalc to tasklist for "Events" in case of MC
+
+   * ganymed.cc, mjobs/MJCut.[h,cc]:
+     - implemented an option to enhance the display
+     - do not display FS plot in wobble mode
+     - made sure files are not written when they should not be written
+
+   * mhflux/MHAlpha.[h,cc]:
+     - let FitEnergyBins return the mean of the significance of
+       all Energy Bins
+
+   * mimage/MHHillasExt.cc, mimage/MHHillasSrc.cc, 
+     mimage/MHImagePar.cc, mimage/MHNewImagePar.cc:
+     - implemented or fixed implementation of "same" Draw-option
+     - slightly modified binning for Dist in MHHillasSrc
+
+   * mjobs/MJCalibrateSignal.cc:
+     - do not plot pulse time twice
+
+   * mjobs/MJOptimize.cc:
+     - print all parameters in minuit after they have been
+       setup
 
 
Index: trunk/MagicSoft/Mars/ganymed.cc
===================================================================
--- trunk/MagicSoft/Mars/ganymed.cc	(revision 6906)
+++ trunk/MagicSoft/Mars/ganymed.cc	(revision 6907)
@@ -69,4 +69,5 @@
     gLog << "   --print-ds                Print Dataset information" << endl;
     gLog << "   --print-files             Print Files taken from Sequences ('+' found, '-' missing)" << endl;
+    gLog << "   --full-display            Show as many plots as possible" << endl;
     gLog << "   --config=ganymed.rc       Resource file [default=ganymed.rc]" << endl;
     gLog << endl;
@@ -110,4 +111,5 @@
     const Bool_t  kDebugMem     = arg.HasOnlyAndRemove("--debug-mem");
     const Bool_t  kWriteOnly    = arg.HasOnlyAndRemove("--write-only");
+    const Bool_t  kFullDisplay  = arg.HasOnlyAndRemove("--full-display");
     Int_t  kDebugEnv = arg.HasOnlyAndRemove("--debug-env") ? 1 : 0;
     kDebugEnv = arg.GetIntAndRemove("--debug-env=", kDebugEnv);
@@ -235,4 +237,5 @@
     job.EnableWriteOnly(kWriteOnly);
     job.EnableWobbleMode(iswobble);
+    job.EnableFullDisplay(kFullDisplay);
     if (kWriteSummary) // Don't change flag set in SetNameSummaryFile
         job.EnableStorageOfSummary();
Index: trunk/MagicSoft/Mars/mhflux/MHAlpha.cc
===================================================================
--- trunk/MagicSoft/Mars/mhflux/MHAlpha.cc	(revision 6906)
+++ trunk/MagicSoft/Mars/mhflux/MHAlpha.cc	(revision 6907)
@@ -184,5 +184,5 @@
 }
 
-void MHAlpha::FitEnergyBins(Bool_t paint)
+Float_t MHAlpha::FitEnergyBins(Bool_t paint)
 {
     // Do not store the 'final' result in fFit
@@ -193,4 +193,6 @@
     fHEnergy.SetEntries(0);
 
+    Float_t mean = 0;
+    Int_t   num  = 0;
     for (int i=1; i<=n; i++)
     {
@@ -202,6 +204,13 @@
             else
                 fHEnergy.SetBinError(i, fit.GetEventsExcess());
-        }
-    }
+
+            if (fit.GetSignificance()>1)
+            {
+                mean += fit.GetSignificance();
+                num++;
+            }
+        }
+    }
+    return mean/num;
 }
 
@@ -412,7 +421,4 @@
     fHAlphaTime.SetEntries(0);
 
-    // Get number of bins
-    const Int_t n = fHTime.GetNbinsX();
-
     //
     // Prepare Histogram
@@ -420,4 +426,7 @@
     if (final)
         time->Plus1ns();
+
+    // Get number of bins
+    const Int_t n = fHTime.GetNbinsX();
 
     // Enhance binning
Index: trunk/MagicSoft/Mars/mhflux/MHAlpha.h
===================================================================
--- trunk/MagicSoft/Mars/mhflux/MHAlpha.h	(revision 6906)
+++ trunk/MagicSoft/Mars/mhflux/MHAlpha.h	(revision 6907)
@@ -117,5 +117,5 @@
 
     void FitEnergySpec(Bool_t paint=kFALSE);
-    void FitEnergyBins(Bool_t paint=kFALSE);
+    Float_t FitEnergyBins(Bool_t paint=kFALSE);
     void FitThetaBins(Bool_t paint=kFALSE);
 
Index: trunk/MagicSoft/Mars/mimage/MHHillasExt.cc
===================================================================
--- trunk/MagicSoft/Mars/mimage/MHHillasExt.cc	(revision 6906)
+++ trunk/MagicSoft/Mars/mimage/MHHillasExt.cc	(revision 6907)
@@ -244,5 +244,5 @@
 // together with the canvas.
 //
-void MHHillasExt::Draw(Option_t *)
+void MHHillasExt::Draw(Option_t *o)
 {
     TVirtualPad *pad = gPad ? gPad : MakeDefCanvas(this);
@@ -251,17 +251,30 @@
     AppendPad("");
 
-    pad->Divide(2, 2);
+    // FIXME: If same-option given make two independant y-axis!
+    const TString opt(o);
+    const Bool_t same = opt.Contains("same");
+
+    if (!same)
+        pad->Divide(2,2);
+    else
+    {
+        fHM3Long.SetLineColor(kMagenta);
+        fHM3Trans.SetLineColor(kCyan);
+
+        fHAsym.SetLineColor(kBlue);
+        fHMaxDist.SetLineColor(kBlue);
+    }
 
     pad->cd(1);
     gPad->SetBorderMode(0);
-    MH::DrawSame(fHM3Long, fHM3Trans, "3^{rd} Moments");
+    MH::DrawSame(fHM3Long, fHM3Trans, "3^{rd} Moments", same);
 
     pad->cd(3);
     gPad->SetBorderMode(0);
-    fHAsym.Draw();
+    fHAsym.Draw(same?"same":"");
 
     pad->cd(2);
     gPad->SetBorderMode(0);
-    fHMaxDist.Draw();
+    fHMaxDist.Draw(same?"same":"");
 
     delete pad->GetPad(4);
Index: trunk/MagicSoft/Mars/mimage/MHHillasSrc.cc
===================================================================
--- trunk/MagicSoft/Mars/mimage/MHHillasSrc.cc	(revision 6906)
+++ trunk/MagicSoft/Mars/mimage/MHHillasSrc.cc	(revision 6907)
@@ -71,5 +71,5 @@
     //
     fAlpha    = new TH1F("Alpha",    "Alpha of Ellipse",                 90,   -90,  90);
-    fDist     = new TH1F("Dist",     "Dist of Ellipse",                 100,     0, 445);
+    fDist     = new TH1F("Dist",     "Dist of Ellipse",                  70,     0, 623);
     fCosDA    = new TH1F("CosDA",    "cos(Delta,Alpha) of Ellipse",     101,    -1,   1);
     fDCA      = new TH1F("DCA",      "Distance of closest aproach",     101,  -500, 500);
@@ -214,5 +214,5 @@
 // together with the canvas.
 //
-void MHHillasSrc::Draw(Option_t *)
+void MHHillasSrc::Draw(Option_t *o)
 {
     TVirtualPad *pad = gPad ? gPad : MakeDefCanvas(this);
@@ -223,17 +223,30 @@
     // FIXME: Display Source position
 
-    pad->Divide(2, 2);
+    // FIXME: If same-option given make two independant y-axis!
+    const TString opt(o);
+    const Bool_t same = opt.Contains("same");
+
+    if (!same)
+        pad->Divide(2,2);
+    else
+    {
+        fAlpha->SetLineColor(kGreen);
+        fDist->SetLineColor(kGreen);
+        fDCA->SetLineColor(kGreen);
+        fCosDA->SetLineColor(kGreen);
+        fDCADelta->SetLineColor(kGreen);
+    }
 
     pad->cd(1);
     gPad->SetBorderMode(0);
-    fAlpha->Draw();
+    fAlpha->Draw(same?"same":"");
 
     pad->cd(2);
     gPad->SetBorderMode(0);
-    fDist->Draw();
+    fDist->Draw(same?"same":"");
 
     pad->cd(3);
     gPad->SetBorderMode(0);
-    fDCA->Draw();
+    fDCA->Draw(same?"same":"");
 
     pad->cd(4);
@@ -241,12 +254,13 @@
 
     TVirtualPad *p = gPad;
-    p->Divide(1,2);
+    if (!same)
+        p->Divide(1,2);
     p->cd(1);
     gPad->SetBorderMode(0);
-    fCosDA->Draw();
+    fCosDA->Draw(same?"same":"");
 
     p->cd(2);
     gPad->SetBorderMode(0);
-    fDCADelta->Draw();
+    fDCADelta->Draw(same?"same":"");
 }
 
Index: trunk/MagicSoft/Mars/mimage/MHImagePar.cc
===================================================================
--- trunk/MagicSoft/Mars/mimage/MHImagePar.cc	(revision 6906)
+++ trunk/MagicSoft/Mars/mimage/MHImagePar.cc	(revision 6907)
@@ -231,32 +231,43 @@
         pad->Divide(2,2);
     else
+    {
+        fHistSatHi.SetLineColor(kMagenta);
+        fHistSatLo.SetLineColor(kCyan);
+
+        fHistSizeMainIsland.SetLineColor(kMagenta);
+        fHistSizeSubIslands.SetLineColor(kCyan);
+
         fHistIslands.SetLineColor(kGreen);
-
+        fHistNumSP.SetLineColor(kGreen);
+        fHistSizeSP.SetLineColor(kGreen);
+    }
+
+    pad->cd(1);
+    gPad->SetBorderMode(0);
+    MH::DrawSame(fHistSatHi, fHistSatLo, "Saturating Pixels", same);
+    fHistSatHi.SetMinimum();    // switch off to allow log-scale
+    fHistSatLo.SetMinimum();    // switch off to allow log-scale
+    fHistSatLo.SetMaximum(0.1); // dummy value to allow log-scale
+
+    pad->cd(4);
+    gPad->SetBorderMode(0);
+    MH::DrawSame(fHistSizeMainIsland, fHistSizeSubIslands, "Sizes...", same);
+    fHistSizeMainIsland.SetMinimum();    // switch off to allow log-scale
+    fHistSizeSubIslands.SetMinimum();    // switch off to allow log-scale
+    fHistSizeSubIslands.SetMaximum(0.1); // dummy value to allow log-scale
+
+    pad->cd(2);
+    gPad->SetBorderMode(0);
     if (!same)
+        pad->GetPad(2)->Divide(1,2,1e-10,1e-10);
+    if (pad->GetPad(2))
     {
-        pad->cd(1);
+        pad->GetPad(2)->cd(1);
         gPad->SetBorderMode(0);
-        MH::DrawSame(fHistSatHi, fHistSatLo, "Saturating Pixels");
-        fHistSatHi.SetMinimum();    // switch off to allow log-scale
-        fHistSatLo.SetMinimum();    // switch off to allow log-scale
-        fHistSatLo.SetMaximum(0.1); // dummy value to allow log-scale
-
-        pad->cd(4);
+        fHistNumSP.Draw(same?"same":"");
+        pad->GetPad(2)->cd(2);
         gPad->SetBorderMode(0);
-        MH::DrawSame(fHistSizeMainIsland, fHistSizeSubIslands, "Sizes...");
-        fHistSizeMainIsland.SetMinimum();    // switch off to allow log-scale
-        fHistSizeSubIslands.SetMinimum();    // switch off to allow log-scale
-        fHistSizeSubIslands.SetMaximum(0.1); // dummy value to allow log-scale
+        fHistSizeSP.Draw(same?"same":"");
     }
-
-    pad->cd(2);
-    gPad->SetBorderMode(0);
-    pad->GetPad(2)->Divide(1,2,1e-10,1e-10);
-    pad->GetPad(2)->cd(1);
-    gPad->SetBorderMode(0);
-    fHistNumSP.Draw(same?"same":"");
-    pad->GetPad(2)->cd(2);
-    gPad->SetBorderMode(0);
-    fHistSizeSP.Draw(same?"same":"");
 
     pad->cd(3);
Index: trunk/MagicSoft/Mars/mimage/MHNewImagePar.cc
===================================================================
--- trunk/MagicSoft/Mars/mimage/MHNewImagePar.cc	(revision 6906)
+++ trunk/MagicSoft/Mars/mimage/MHNewImagePar.cc	(revision 6907)
@@ -284,6 +284,6 @@
 void MHNewImagePar::Paint(Option_t *o)
 {
-    if (TString(o)==(TString)"log" && fHistLeakage1.GetMaximum()>0)
-        gPad->SetLogy();
+    if (fHistLeakage1.GetMaximum()>0 && gPad->GetPad(1))
+        gPad->GetPad(1)->SetLogy();
 }
 
@@ -294,5 +294,5 @@
 // together with the canvas.
 //
-void MHNewImagePar::Draw(Option_t *)
+void MHNewImagePar::Draw(Option_t *o)
 {
     TVirtualPad *pad = gPad ? gPad : MakeDefCanvas(this);
@@ -301,5 +301,24 @@
     AppendPad("");
 
-    pad->Divide(2,2);
+    // FIXME: If same-option given make two independant y-axis!
+    const TString opt(o);
+    const Bool_t same = opt.Contains("same");
+
+    if (!same)
+        pad->Divide(2,2);
+    else
+    {
+        fHistLeakage1.SetLineColor(kMagenta);
+        fHistLeakage1.SetLineColor(kCyan);
+
+        fHistCorePix.SetLineColor(kMagenta);
+        fHistUsedPix.SetLineColor(kCyan);
+
+        fHistConc1.SetLineColor(kMagenta);
+        fHistConc.SetLineColor(kCyan);
+
+        fHistCoreArea.SetLineColor(kMagenta);
+        fHistUsedArea.SetLineColor(kCyan);
+    }
 
     pad->cd(1);
@@ -307,21 +326,20 @@
     TAxis &x = *fHistLeakage1.GetXaxis();
     x.SetRangeUser(0.0, x.GetXmax());
-    MH::DrawSame(fHistLeakage1, fHistLeakage2, "Leakage1 and Leakage2");
+    MH::DrawSame(fHistLeakage1, fHistLeakage2, "Leakage1 and Leakage2", same);
     fHistLeakage1.SetMinimum();
     fHistLeakage2.SetMinimum();
     fHistLeakage2.SetMaximum(0.1);   // dummy value to allow log-scale
-    AppendPad("log");
 
     pad->cd(2);
     gPad->SetBorderMode(0);
-    MH::DrawSame(fHistCorePix, fHistUsedPix, "Number of core/used Pixels");
+    MH::DrawSame(fHistCorePix, fHistUsedPix, "Number of core/used Pixels", same);
 
     pad->cd(3);
     gPad->SetBorderMode(0);
-    MH::DrawSame(fHistConc1, fHistConc, "Concentrations");
+    MH::DrawSame(fHistConc1, fHistConc, "Concentrations", same);
 
     pad->cd(4);
     gPad->SetBorderMode(0);
-    MH::DrawSame(fHistCoreArea, fHistUsedArea, "Area of core/used Pixels");
+    MH::DrawSame(fHistCoreArea, fHistUsedArea, "Area of core/used Pixels", same);
 }
 
Index: trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc	(revision 6906)
+++ trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc	(revision 6907)
@@ -866,5 +866,5 @@
 
     MGeomCam &geomcam = *(MGeomCam*)plist.FindObject("MGeomCam");
-
+/*
     //
     // Get container from list
@@ -894,5 +894,5 @@
         disp21.CamDraw(c0, 2, 2, 1);
       }
-
+ */
     if (!fIsHiLoCalibration)
       return;
Index: trunk/MagicSoft/Mars/mjobs/MJCut.cc
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJCut.cc	(revision 6906)
+++ trunk/MagicSoft/Mars/mjobs/MJCut.cc	(revision 6907)
@@ -56,4 +56,5 @@
 #include "../mhflux/MAlphaFitter.h"
 #include "MBinning.h"
+#include "MWeight.h"
 #include "MDataSet.h"
 #include "MParameters.h"
@@ -71,8 +72,9 @@
 MJCut::MJCut(const char *name, const char *title)
     : fStoreSummary(kFALSE), fStoreResult(kFALSE), fWriteOnly(kFALSE),
-    fIsWobble(kFALSE), fEstimateEnergy(0), fCalcHadronness(0)
+    fIsWobble(kFALSE), fFullDisplay(kFALSE), fEstimateEnergy(0),
+    fCalcHadronness(0)
 {
     fName  = name  ? name  : "MJCut";
-    fTitle = title ? title : "Standard program to perform g/h-seperation cuts";
+    fTitle = title ? title : "Standard program to perform g/h-separation cuts";
 }
 
@@ -260,13 +262,18 @@
 //   "DataType"     to  "Events"
 //
-void MJCut::SetupWriter(MWriteRootFile &write, const char *name) const
-{
-    write.SetName(name);
-    write.AddContainer("MHillas",        "Events");
-    write.AddContainer("MHillasSrc",     "Events");
-    write.AddContainer("MHillasSrcAnti", "Events", kFALSE);
-    write.AddContainer("MHadronness",    "Events", kFALSE);
-    write.AddContainer("MEnergyEst",     "Events", kFALSE);
-    write.AddContainer("DataType",       "Events");
+void MJCut::SetupWriter(MWriteRootFile *write, const char *name) const
+{
+    if (!write)
+        return;
+
+    write->SetName(name);
+    write->AddContainer("MHillas",        "Events");
+    write->AddContainer("MHillasSrc",     "Events");
+    write->AddContainer("MHillasSrcAnti", "Events", kFALSE);
+    write->AddContainer("MNewImagePar",   "Events", kFALSE);
+    write->AddContainer("MNewImagePar2",  "Events", kFALSE);
+    write->AddContainer("MHadronness",    "Events", kFALSE);
+    write->AddContainer("MEnergyEst",     "Events", kFALSE);
+    write->AddContainer("DataType",       "Events");
 
     // Should not be the default: Either as option, or as
@@ -326,8 +333,14 @@
     MBinning bins3(50, 0,  60,   "BinningTheta",     "cos");
     MBinning bins4("BinningFalseSource");
+    //MBinning bins5("BinningWidth");
+    //MBinning bins6("BinningLength");
+    //MBinning bins7("BinningDist");
     plist.AddToList(&bins1);
     plist.AddToList(&bins2);
     plist.AddToList(&bins3);
     plist.AddToList(&bins4);
+    //plist.AddToList(&bins5);
+    //plist.AddToList(&bins6);
+    //plist.AddToList(&bins7);
 
     // --------------------------------------------------------------------------------
@@ -368,10 +381,8 @@
     fname1 += fNameResult.IsNull()  ?  (TString) Form("ganymed%08d-result.root",  set.GetNumAnalysis()) : fNameResult;
 
-    MWriteRootFile write0(fPathOut.IsNull()?0:fname0.Data(), fOverwrite?"RECREATE":"NEW");
-    MWriteRootFile write1(fPathOut.IsNull()?0:fname1.Data(), fOverwrite?"RECREATE":"NEW");
-    if (CanStoreSummary())
-        SetupWriter(write0, "WriteAfterCut0");
-    if (CanStoreSummary())
-        SetupWriter(write1, "WriteAfterCut3");
+    MWriteRootFile *write0 = CanStoreSummary() ? new MWriteRootFile(fPathOut.IsNull()?0:fname0.Data(), fOverwrite?"RECREATE":"NEW") : 0;
+    MWriteRootFile *write1 = CanStoreResult()  ? new MWriteRootFile(fPathOut.IsNull()?0:fname1.Data(), fOverwrite?"RECREATE":"NEW") : 0;
+    SetupWriter(write0, "WriteAfterCut0");
+    SetupWriter(write1, "WriteAfterCut3");
 
 
@@ -384,10 +395,18 @@
     taskenv2.SetDefault(fCalcHadronness);
 
-    MFillH fill1a("MHHillasOffPre  [MHHillas]", "MHillas",    "FillHillasPre");
-    MFillH fill2a("MHHillasOffPost [MHHillas]", "MHillas",    "FillHillasPost");
-    MFillH fill3a("MHVsSizeOffPost [MHVsSize]", "MHillasSrc", "FillVsSizePost");
+    MFillH fill1a("MHHillasOffPre  [MHHillas]",      "MHillas",      "FillHillasPre");
+    MFillH fill2a("MHHillasOffPost [MHHillas]",      "MHillas",      "FillHillasPost");
+    MFillH fill3a("MHVsSizeOffPost [MHVsSize]",      "MHillasSrc",   "FillVsSizePost");
+    MFillH fill4a("MHHilExtOffPost [MHHillasExt]",   "MHillasSrc",   "FillHilExtPost");
+    MFillH fill5a("MHHilSrcOffPost [MHHillasSrc]",   "MHillasSrc",   "FillHilSrcPost");
+    MFillH fill6a("MHImgParOffPost [MHImagePar]",    "MImagePar",    "FillImgParPost");
+    MFillH fill7a("MHNewParOffPost [MHNewImagePar]", "MNewImagePar", "FillNewParPost");
     fill1a.SetNameTab("PreCut");
     fill2a.SetNameTab("PostCut");
     fill3a.SetNameTab("VsSize");
+    fill4a.SetNameTab("HilExt");
+    fill5a.SetNameTab("HilSrc");
+    fill6a.SetNameTab("ImgPar");
+    fill7a.SetNameTab("NewPar");
 
     MPrint print2("MEffectiveOnTime");
@@ -412,10 +431,10 @@
     tlist2.AddToList(&taskenv2);
     tlist2.AddToList(&cont0);
-    if (CanStoreSummary())
-        tlist2.AddToList(&write0);
+    if (write0)
+        tlist2.AddToList(write0);
     if (!fWriteOnly)
         tlist2.AddToList(&fill1a);
     tlist2.AddToList(&cont1);
-    if (!fWriteOnly)
+    if (!fWriteOnly && !fIsWobble)
         tlist2.AddToList(&ffs);
     tlist2.AddToList(&cont2);
@@ -423,11 +442,18 @@
     {
         tlist2.AddToList(&fill2a);
-        tlist2.AddToList(&fill3a);
+        if (fFullDisplay)
+        {
+            tlist2.AddToList(&fill3a);
+            tlist2.AddToList(&fill4a);
+            tlist2.AddToList(&fill5a);
+            tlist2.AddToList(&fill6a);
+            tlist2.AddToList(&fill7a);
+        }
     }
     if (!fWriteOnly)
         tlist2.AddToList(&falpha);
     tlist2.AddToList(&cont3);
-    if (CanStoreResult())
-        tlist2.AddToList(&write1);
+    if (write1)
+        tlist2.AddToList(write1);
 
     tlist.AddToList(&readoff);
@@ -461,4 +487,6 @@
             return kFALSE;
         }
+
+        //plist.FindObject("MTimeEffectiveOnTime")->Clear();
     }
 
@@ -473,14 +501,31 @@
         scalc.SetWobbleMode(kFALSE); /********************/
 
-    MFillH fill1b("MHHillasOnPre  [MHHillas]", "MHillas",    "FillHillasPre");
-    MFillH fill2b("MHHillasOnPost [MHHillas]", "MHillas",    "FillHillasPost");
-    MFillH fill3b("MHVsSizeOnPost [MHVsSize]", "MHillasSrc", "FillVsSizePost");
+    MFillH fill1b("MHHillasOnPre  [MHHillas]",      "MHillas",      "FillHillasPre");
+    MFillH fill2b("MHHillasOnPost [MHHillas]",      "MHillas",      "FillHillasPost");
+    MFillH fill3b("MHVsSizeOnPost [MHVsSize]",      "MHillasSrc",   "FillVsSizePost");
+    MFillH fill4b("MHHilExtOnPost [MHHillasExt]",   "MHillasSrc",   "FillHilExtPost");
+    MFillH fill5b("MHHilSrcOnPost [MHHillasSrc]",   "MHillasSrc",   "FillHilSrcPost");
+    MFillH fill6b("MHImgParOnPost [MHImagePar]",    "MImagePar",    "FillImgParPost");
+    MFillH fill7b("MHNewParOnPost [MHNewImagePar]", "MNewImagePar", "FillNewParPost");
     fill1b.SetNameTab("PreCut");
     fill2b.SetNameTab("PostCut");
     fill3b.SetNameTab("VsSize");
+    fill4b.SetNameTab("HilExt");
+    fill5b.SetNameTab("HilSrc");
+    fill6b.SetNameTab("ImgPar");
+    fill7b.SetNameTab("NewPar");
     fill1b.SetDrawOption(set.HasOffSequences()||fIsWobble?"same":"");
     fill2b.SetDrawOption(set.HasOffSequences()||fIsWobble?"same":"");
     fill3b.SetDrawOption(set.HasOffSequences()||fIsWobble?"same":"");
-
+    fill4b.SetDrawOption(set.HasOffSequences()||fIsWobble?"same":"");
+    fill5b.SetDrawOption(set.HasOffSequences()||fIsWobble?"same":"");
+    fill6b.SetDrawOption(set.HasOffSequences()||fIsWobble?"same":"");
+    fill7b.SetDrawOption(set.HasOffSequences()||fIsWobble?"same":"");
+/*
+    MWeight weight;
+    weight.SetWeight(-1);
+    fill2a.SetWeight(&weight);
+    fill3a.SetWeight(&weight);
+  */
     MFillH falpha2("MHAlpha", "MHillasSrc", "FillAlpha");
     MFillH ffs2("MHFalseSource", "MHillas", "FillFS");
@@ -490,8 +535,23 @@
     {
         tlist2.Replace(&fill1b);
+/*        if (fIsWobble)
+        {
+            tlist2.AddToListAfter(&fill2b, &fill2a);
+            tlist2.AddToListAfter(&fill3b, &fill3a);
+        }
+        else
+        */
         tlist2.Replace(&fill2b);
-        tlist2.Replace(&fill3b);
+        if (fFullDisplay)
+        {
+            tlist2.Replace(&fill3b);
+            tlist2.Replace(&fill4b);
+            tlist2.Replace(&fill5b);
+            tlist2.Replace(&fill6b);
+            tlist2.Replace(&fill7b);
+        }
         tlist2.Replace(&falpha2);
-        tlist2.Replace(&ffs2);
+        if (!fIsWobble)
+            tlist2.Replace(&ffs2);
     }
 
@@ -518,4 +578,9 @@
     }
 
+    if (write0)
+        delete write0;
+    if (write1)
+        delete write1;
+
     tlist.PrintStatistics();
 
Index: trunk/MagicSoft/Mars/mjobs/MJCut.h
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJCut.h	(revision 6906)
+++ trunk/MagicSoft/Mars/mjobs/MJCut.h	(revision 6907)
@@ -17,4 +17,5 @@
     Bool_t  fWriteOnly;
     Bool_t  fIsWobble;
+    Bool_t  fFullDisplay;
 
     TString fNameSummary;
@@ -27,5 +28,5 @@
     TString GetOutputFile(UInt_t num) const;
     Bool_t  CheckEnvLocal();
-    void    SetupWriter(MWriteRootFile &write, const char *name) const;
+    void    SetupWriter(MWriteRootFile *write, const char *name) const;
     Bool_t  WriteTasks(UInt_t num, TObjArray &cont) const;
     Bool_t  WriteResult(UInt_t num) const;
@@ -44,4 +45,5 @@
     void EnableWriteOnly(Bool_t b=kTRUE)         { fWriteOnly    = b; }
     void EnableWobbleMode(Bool_t b=kTRUE)        { fIsWobble     = b; }
+    void EnableFullDisplay(Bool_t b=kTRUE)       { fFullDisplay  = b; }
 
     void SetNameSummaryFile(const char *name="");
@@ -52,5 +54,5 @@
     void SetHadronnessCalculator(const MTask *task=0);
 
-    ClassDef(MJCut, 0) // Standard program to perform g/h-seperation cuts
+    ClassDef(MJCut, 0) // Standard program to perform g/h-separation cuts
 };
 
Index: trunk/MagicSoft/Mars/mjobs/MJOptimize.cc
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJOptimize.cc	(revision 6906)
+++ trunk/MagicSoft/Mars/mjobs/MJOptimize.cc	(revision 6907)
@@ -497,8 +497,8 @@
 
     gMinuit = new TMinuit(fParameters.GetSize());
-    //gMinuit->SetPrintLevel(-1);
 
     gMinuit->SetFCN(fcn);
     gMinuit->SetObjectFit(this);
+    gMinuit->SetPrintLevel(-1); // Don't print when DefineParameter
 
     //
@@ -526,4 +526,7 @@
             gMinuit->FixParameter(i);
     }
+
+    gMinuit->SetPrintLevel(1); // Switch on pritning again
+    gMinuit->mnprin(1,0);      // Print all parameters
 
     fEvtLoop = &evtloop;
