diff --git a/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerTaskTrdR.cxx b/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerTaskTrdR.cxx
index fd653f95909068143a41f997392a7d45e9704271..84275de51240923b66518ff584b9b434ec59a8fc 100644
--- a/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerTaskTrdR.cxx
+++ b/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerTaskTrdR.cxx
@@ -179,6 +179,7 @@ Bool_t CbmMcbm2018UnpackerTaskTrdR::InitContainers() {
   fUnpackerAlgo->SetDebugMonitorMode(fbDebugMonitorMode);
   fUnpackerAlgo->SetWriteOutput(fbWriteOutput);
   fUnpackerAlgo->SetDebugWriteOutput(fbDebugWriteOutput);
+  fUnpackerAlgo->SetDebugSortOutput(fbDebugSortOutput);
   fUnpackerAlgo->SetBaselineAvg(fbBaselineAvg);
   // Activate histograms in unpacker
   fUnpackerAlgo->SetActiveHistograms(fIsActiveHistoVec);
@@ -252,4 +253,7 @@ void CbmMcbm2018UnpackerTaskTrdR::SetTimeOffsetNs(Double_t dOffsetIn) {
   if (fUnpackerAlgo != nullptr) fUnpackerAlgo->SetTimeOffsetNs(dOffsetIn);
 }
 
+void CbmMcbm2018UnpackerTaskTrdR::SetIgnoreOverlapMs(Bool_t bFlagIn) {
+  fUnpackerAlgo->SetIgnoreOverlapMs(bFlagIn);
+}
 ClassImp(CbmMcbm2018UnpackerTaskTrdR)
diff --git a/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerTaskTrdR.h b/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerTaskTrdR.h
index 1300e4db4e5ba7e4a2150db842587e8234d1d73c..fb9224ae3ab6187646cb241c3a8c7f762e57bd34 100644
--- a/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerTaskTrdR.h
+++ b/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerTaskTrdR.h
@@ -75,6 +75,9 @@ public:
   void SetDebugWriteOutput(Bool_t bFlagIn = kTRUE) {
     fbDebugWriteOutput = bFlagIn;
   }
+  void SetDebugSortOutput(Bool_t bFlagIn = kTRUE) {
+    fbDebugSortOutput = bFlagIn;
+  }
   void SetSystemIdentifier(std::uint8_t id) { fSystemIdentifier = id; }
   void SetTimeOffsetNs(Double_t dOffsetIn = 0.0);
 
@@ -92,6 +95,8 @@ public:
     fdMsSizeInNs = msSizeInNs;
   }  // TODO handle this with asic parameter files
 
+  void SetIgnoreOverlapMs(Bool_t bFlagIn = kTRUE);
+
   void SetFirstChannelsElinkEven(bool isEven) {
     fIsFirstChannelsElinkEven = isEven;
   }  /// < Set wether channels 00..15 are on the even (true) or the odd (false and default) elink
@@ -106,15 +111,19 @@ private:
     fbWriteOutput;  ///< If ON the output Vector of digis is written to disk.
   Bool_t
     fbDebugWriteOutput;  ///< If ON the output vector of raw messages is filled and written to disk.
+  Bool_t fbDebugSortOutput =
+    kTRUE;  ///< If ON the output vector of raw messages is sorted in time.
   Bool_t
     fbBaselineAvg;  ///< Set to true if Baseline Averaging is activated in Spadic.
   std::uint8_t
     fSystemIdentifier;  ///< by default set to: fles::SubsystemIdentifier::TRD, changable via setter
   Double_t
     fdMsSizeInNs;  ///< microslice size in ns to be passed to the unpacker // TODO handle this with asic parameter files
+
   bool fIsFirstChannelsElinkEven =
     false;  ///< define if the first 16 channels (00..15) are found on the even (set true) or odd (false) eLinkId, default for mCbm2020 is false thus, initialized as false
 
+
   TString fMonitorHistoFileName;
   std::vector<bool> fIsActiveHistoVec;  // Define active histos in algo