diff --git a/GUI/coregui/Views/FitWidgets/FitComparisonWidget.cpp b/GUI/coregui/Views/FitWidgets/FitComparisonWidget.cpp
index b68ba6544601b214a8828dfba7f0ae7d8b57eed3..9e28a661ba5ed6c6040814e8d941f5bbca6771ce 100644
--- a/GUI/coregui/Views/FitWidgets/FitComparisonWidget.cpp
+++ b/GUI/coregui/Views/FitWidgets/FitComparisonWidget.cpp
@@ -48,7 +48,7 @@ FitComparisonWidget::FitComparisonWidget(QWidget *parent)
 //    , m_simulatedDataItem(0)
     , m_relativeDiffItem(0)
     , m_resetViewAction(0)
-    , m_tempIntensityDataModel(new SessionModel("TempIntensityDataModel", this))
+    , m_tempIntensityDataModel(new SessionModel("TempIntensityDataModel"))
 {
     QVBoxLayout *vlayout = new QVBoxLayout;
     vlayout->setMargin(0);
@@ -75,23 +75,15 @@ FitComparisonWidget::FitComparisonWidget(QWidget *parent)
     m_resetViewAction->setToolTip("Reset View");
     connect(m_resetViewAction, SIGNAL(triggered()), this, SLOT(onResetViewAction()));
 
+    m_relativeDiffItem = createRelativeDifferenceItem();
+    m_relativeDiffPlot->setItem(m_relativeDiffItem);
 }
 
 FitComparisonWidget::~FitComparisonWidget()
 {
-//    if(m_simulatedDataItem)
-//        m_simulatedDataItem->mapper()->unsubscribe(this);
-
-//    if(m_currentJobItem)
-//        m_currentJobItem->mapper()->unsubscribe(this);
-}
-
-void FitComparisonWidget::setItem(SessionItem *item)
-{
-    SessionItemWidget::setItem(item);
-    qDebug() << "FitComparisonWidget::setItem(SessionItem *item)";
-//    JobItem *jobItem = dynamic_cast<JobItem *>(item);
-//    setJobItem(jobItem);
+    // FIXME unclear corrupter memory on aplication exist (comment lines below to reproduce)
+    m_relativeDiffPlot->setItem(0);
+    delete m_tempIntensityDataModel;
 }
 
 QList<QAction *> FitComparisonWidget::actionList()
@@ -99,49 +91,6 @@ QList<QAction *> FitComparisonWidget::actionList()
     return QList<QAction *>() << m_resetViewAction;
 }
 
-//void FitComparisonWidget::setJobItem(JobItem *jobItem)
-//{
-//    if(!jobItem->isValidForFitting())
-//        return;
-
-//    processJobItemItem(jobItem);
-//    setSimulatedDataItem(jobItem->intensityDataItem());
-
-
-//    m_relativeDiffItem = createRelativeDifferenceItem();
-//    calculateRelativeDifference();
-
-//    m_realDataPlot->setItem(m_realDataItem);
-//    m_simulatedDataPlot->setItem(m_simulatedDataItem);
-//    m_relativeDiffPlot->setItem(m_relativeDiffItem);
-//    m_fitFlowWidget->setItem(jobItem->fitSuiteItem());
-
-//    m_statusLabel->reset();
-//    m_statusLabel->addColorMap(m_realDataPlot);
-//    m_statusLabel->addColorMap(m_simulatedDataPlot);
-//    m_statusLabel->addColorMap(m_relativeDiffPlot);
-//}
-
-//! When widget is visible, axes labels will be removed intensity data items to free more space.
-
-//void FitComparisonWidget::showEvent(QShowEvent *)
-//{
-////    if(isVisible()) {
-////        removeLabels(m_realDataItem);
-////        removeLabels(m_simulatedDataItem);
-////    }
-//}
-
-//! When widget is about to be hidden, axes labels will be restored to not to upset other widgets.
-
-//void FitComparisonWidget::hideEvent(QHideEvent *)
-//{
-////    if(isHidden()) {
-////        restoreLabels(m_realDataItem);
-////        restoreLabels(m_simulatedDataItem);
-////    }
-//}
-
 void FitComparisonWidget::subscribeToItem()
 {
     if(!jobItem()->isValidForFitting())
@@ -164,22 +113,16 @@ void FitComparisonWidget::subscribeToItem()
         }, this);
     }
 
-    if(!m_relativeDiffItem)
-        m_relativeDiffItem = createRelativeDifferenceItem();
-
     calculateRelativeDifference();
 
     m_realDataPlot->setItem(realDataItem());
     m_simulatedDataPlot->setItem(simulatedDataItem());
-    m_relativeDiffPlot->setItem(m_relativeDiffItem);
     m_fitFlowWidget->setItem(jobItem()->fitSuiteItem());
 
     m_statusLabel->reset();
     m_statusLabel->addColorMap(m_realDataPlot);
     m_statusLabel->addColorMap(m_simulatedDataPlot);
     m_statusLabel->addColorMap(m_relativeDiffPlot);
-
-
 }
 
 void FitComparisonWidget::unsubscribeFromItem()
@@ -191,35 +134,6 @@ void FitComparisonWidget::unsubscribeFromItem()
         simulatedDataItem()->mapper()->unsubscribe(this);
 }
 
-//void FitComparisonWidget::processJobItemItem(JobItem *jobItem)
-//{
-
-//    if(jobItem == m_currentJobItem)
-//        return;
-
-//    if(m_currentJobItem)
-//        m_currentJobItem->mapper()->unsubscribe(this);
-
-//    m_currentJobItem = jobItem;
-//    if(!m_currentJobItem) return;
-
-//    m_currentJobItem->mapper()->setOnPropertyChange(
-//                [this](const QString &name)
-//    {
-//        if(name == JobItem::P_STATUS) {
-//            if(m_currentJobItem->isCompleted())
-//                onResetViewAction();
-//        }
-//    }, this);
-
-//    m_currentJobItem->mapper()->setOnItemDestroy(
-//                [this](SessionItem *) {
-//        m_currentJobItem = 0;
-//    }, this);
-
-//    m_realDataItem = m_currentJobItem->realDataItem()->intensityDataItem();
-//}
-
 void FitComparisonWidget::onResetViewAction()
 {
     if(auto item = realDataItem())
@@ -234,32 +148,6 @@ void FitComparisonWidget::onResetViewAction()
     }
 }
 
-//! Sets tracking of simulated data item.
-
-//void FitComparisonWidget::setSimulatedDataItem(IntensityDataItem *simulatedDataItem)
-//{
-//    if(simulatedDataItem == m_simulatedDataItem)
-//        return;
-
-//    if(m_simulatedDataItem)
-//        m_simulatedDataItem->mapper()->unsubscribe(this);
-
-//    m_simulatedDataItem = simulatedDataItem;
-//    if(!m_simulatedDataItem) return;
-
-//    m_simulatedDataItem->mapper()->setOnValueChange(
-//        [this]()
-//    {
-//        calculateRelativeDifference();
-//    }, this);
-
-//    m_simulatedDataItem->mapper()->setOnItemDestroy(
-//                [this](SessionItem *) {
-//        m_simulatedDataItem = 0;
-//    }, this);
-
-//}
-
 //! Creates an IntensityDataItem which will hold relative difference map between simulation
 //! and real data.
 
@@ -292,7 +180,7 @@ void FitComparisonWidget::calculateRelativeDifference()
 
 }
 
-//! Restores item labels from the backup.
+//! Restores item labels from the backup (FIXME currently unused. Do we need to hide labels?).
 
 void FitComparisonWidget::restoreLabels(IntensityDataItem *intensityItem)
 {
diff --git a/GUI/coregui/Views/FitWidgets/FitComparisonWidget.h b/GUI/coregui/Views/FitWidgets/FitComparisonWidget.h
index f1328b9026ea9b9e7682c2dbb63f12647bc1cb68..13e2c4706871b0e6412f76151f560bb9c3899d09 100644
--- a/GUI/coregui/Views/FitWidgets/FitComparisonWidget.h
+++ b/GUI/coregui/Views/FitWidgets/FitComparisonWidget.h
@@ -39,25 +39,16 @@ public:
     explicit FitComparisonWidget(QWidget *parent = 0);
     ~FitComparisonWidget();
 
-    void setItem(SessionItem *item);
-
     virtual QList<QAction *> actionList();
 
 private slots:
     void onResetViewAction();
 
 protected:
-//    void setJobItem(class JobItem *jobItem);
-//    virtual void showEvent(QShowEvent *);
-//    virtual void hideEvent(QHideEvent *);
     virtual void subscribeToItem();
     virtual void unsubscribeFromItem();
 
 private:
-
-//    void processJobItemItem(JobItem *jobItem);
-//    void setSimulatedDataItem(IntensityDataItem *simulatedDataItem);
-
     IntensityDataItem *createRelativeDifferenceItem();
     void calculateRelativeDifference();
     void restoreLabels(IntensityDataItem *intensityItem);
@@ -70,17 +61,11 @@ private:
     ColorMapCanvas *m_realDataPlot;
     ColorMapCanvas *m_simulatedDataPlot;
     ColorMapCanvas *m_relativeDiffPlot;
-
     FitFlowWidget *m_fitFlowWidget;
     ColorMapLabel *m_statusLabel;
 
-//    JobItem *m_currentJobItem;
-//    IntensityDataItem *m_realDataItem;
-//    IntensityDataItem *m_simulatedDataItem;
     IntensityDataItem *m_relativeDiffItem;
-
     QAction *m_resetViewAction;
-
     SessionModel *m_tempIntensityDataModel;
 };
 
diff --git a/GUI/coregui/Views/FitWidgets/FitFlowWidget.h b/GUI/coregui/Views/FitWidgets/FitFlowWidget.h
index 3c616b28fa4f989a4cac69c521176ee5e39d3164..8b9c750635a49bf77f7efa0b7ec9b744a75593ad 100644
--- a/GUI/coregui/Views/FitWidgets/FitFlowWidget.h
+++ b/GUI/coregui/Views/FitWidgets/FitFlowWidget.h
@@ -26,6 +26,8 @@ class FitSuiteItem;
 //! The FitFlowWidget class is intended for showing chi2 .vs interation count dependency.
 //! The main goal is to fill vacant place in FitComparisonWidget.
 
+//  FIXME Switch to SessionItemWidget
+
 class BA_CORE_API_ FitFlowWidget : public QFrame
 {
     Q_OBJECT