diff --git a/source/Lib/DecoderLib/CABACReader.cpp b/source/Lib/DecoderLib/CABACReader.cpp
index 466b3203b5b2d186b798b9a7178eb06b67a2a85e..49c4f5528b07142de70462c70180d57523a4c2d7 100644
--- a/source/Lib/DecoderLib/CABACReader.cpp
+++ b/source/Lib/DecoderLib/CABACReader.cpp
@@ -3078,6 +3078,7 @@ void CABACReader::cu_palette_info(CodingUnit& cu, ComponentID compBegin, uint32_
   {
     recievedPLTnum = exp_golomb_eqprob(0);
   }
+  DTRACE(g_trace_ctx, D_SYNTAX, "cu_palette_info() recieved_plt_num=%d\n", recievedPLTnum);
 
   cu.curPLTSize[compBegin] = curPLTidx + recievedPLTnum;
 #if !INTRA_RM_SMALL_BLOCK_SIZE_CONSTRAINTS
@@ -3091,6 +3092,7 @@ void CABACReader::cu_palette_info(CodingUnit& cu, ComponentID compBegin, uint32_
       ComponentID compID = (ComponentID)comp;
       const int  channelBitDepth = sps.getBitDepth(toChannelType(compID));
       cu.curPLT[compID][idx] = m_BinDecoder.decodeBinsEP(channelBitDepth);
+      DTRACE(g_trace_ctx, D_SYNTAX, "cu_palette_info() comp=%d idx=%d cur_plt=%d\n", comp, idx, cu.curPLT[compID][idx]);
 #if !INTRA_RM_SMALL_BLOCK_SIZE_CONSTRAINTS
       if( cu.isLocalSepTree() )
       {
@@ -3112,6 +3114,7 @@ void CABACReader::cu_palette_info(CodingUnit& cu, ComponentID compBegin, uint32_
   {
     uint32_t escCode = 0;
     escCode = m_BinDecoder.decodeBinEP();
+    DTRACE(g_trace_ctx, D_SYNTAX, "cu_palette_info() esc_code=%d\n", escCode);
     cu.useEscape[compBegin] = (escCode != 0);
   }
   uint32_t    indexMaxSize = cu.useEscape[compBegin] ? (cu.curPLTSize[compBegin] + 1) : cu.curPLTSize[compBegin];
@@ -3332,6 +3335,7 @@ void CABACReader::cuPaletteSubblockInfo(CodingUnit& cu, ComponentID compBegin, u
 void CABACReader::parseScanRotationModeFlag(CodingUnit& cu, ComponentID compBegin)
 {
   cu.useRotation[compBegin] = m_BinDecoder.decodeBin(Ctx::RotationFlag());
+  DTRACE(g_trace_ctx, D_SYNTAX, "cu_palette_info() use_rotation=%d\n", cu.useRotation[compBegin]);
 }
 
 void CABACReader::xDecodePLTPredIndicator(CodingUnit& cu, uint32_t maxPLTSize, ComponentID compBegin)
@@ -4258,7 +4262,7 @@ void CABACReader::ibcMbvdData(PredictionUnit& pu)
   }
   uiUnaryIdx += temp;
   pu.ibcMbvdMergeIdx = var0 * mbvdsPerBase + uiUnaryIdx;
-  DTRACE(g_trace_ctx, D_SYNTAX, "ibc_mbvd_data() merge_idx=%d\n", pu.ibcMbvdMergeIdx);
+  DTRACE(g_trace_ctx, D_SYNTAX, "ibc_mbvd_data() ibc_merge_idx=%d\n", pu.ibcMbvdMergeIdx);
 
   if (biMbvdMode == 1)
   {
@@ -4298,7 +4302,7 @@ void CABACReader::ibcMbvdData(PredictionUnit& pu)
       uiUnaryIdx1 += (uiUnaryIdx+1);
     }
     pu.ibcMergeIdx1 = var1 * mbvdsPerBase + uiUnaryIdx1 + IBC_MRG_MAX_NUM_CANDS;
-    DTRACE(g_trace_ctx, D_SYNTAX, "ibc_mbvd_data() merge_idx1=%d\n", pu.ibcMergeIdx1 - IBC_MRG_MAX_NUM_CANDS);
+    DTRACE(g_trace_ctx, D_SYNTAX, "ibc_mbvd_data() ibc_merge_idx1=%d\n", pu.ibcMergeIdx1 - IBC_MRG_MAX_NUM_CANDS);
   }
 #else
   unsigned int uiUnaryIdx = 0;
@@ -5348,7 +5352,12 @@ void CABACReader::merge_idx( PredictionUnit& pu )
 #endif
   }
 
-  DTRACE( g_trace_ctx, D_SYNTAX, "merge_idx() merge_idx=%d\n", pu.mergeIdx );
+#if JVET_AE0169_BIPREDICTIVE_IBC
+  if (pu.ibcMbvdMergeFlag) 
+    DTRACE( g_trace_ctx, D_SYNTAX, "merge_idx() ibc_merge_idx1=%d\n", pu.ibcMergeIdx1 ); 
+  else 
+#endif
+    DTRACE( g_trace_ctx, D_SYNTAX, "merge_idx() merge_idx=%d\n", pu.mergeIdx );
 #if JVET_X0049_ADAPT_DMVR
   if (pu.bmMergeFlag && pu.bmDir == 2)
   {
@@ -7792,6 +7801,7 @@ void CABACReader::cu_chroma_qp_offset( CodingUnit& cu )
    *              1 if outer flag is set and there is no inner flag
    *              1+ otherwise */
   cu.chromaQpAdj = cu.cs->chromaQpAdj = qpAdj;
+  DTRACE(g_trace_ctx, D_SYNTAX, "cu_chroma_qp_offset() chroma_qp_adj=%d\n", cu.chromaQpAdj);
 }
 
 //================================================================================
diff --git a/source/Lib/EncoderLib/CABACWriter.cpp b/source/Lib/EncoderLib/CABACWriter.cpp
index 829b552b56c10101e4aceaedd538f80821027867..9848c7609bd15f30e8a1790fdddacc91b81685d4 100644
--- a/source/Lib/EncoderLib/CABACWriter.cpp
+++ b/source/Lib/EncoderLib/CABACWriter.cpp
@@ -2710,6 +2710,7 @@ void CABACWriter::cu_palette_info(const CodingUnit& cu, ComponentID compBegin, u
   {
     exp_golomb_eqprob(cu.curPLTSize[compBegin] - reusedPLTnum, 0);
   }
+  DTRACE(g_trace_ctx, D_SYNTAX, "cu_palette_info() recieved_plt_num=%d\n", cu.curPLTSize[compBegin] - reusedPLTnum);
 
   for (int comp = compBegin; comp < (compBegin + numComp); comp++)
   {
@@ -2718,12 +2719,14 @@ void CABACWriter::cu_palette_info(const CodingUnit& cu, ComponentID compBegin, u
       ComponentID compID = (ComponentID)comp;
       const int  channelBitDepth = sps.getBitDepth(toChannelType(compID));
       m_BinEncoder.encodeBinsEP(cu.curPLT[comp][idx], channelBitDepth);
+      DTRACE(g_trace_ctx, D_SYNTAX, "cu_palette_info() comp=%d idx=%d cur_plt=%d\n", comp, idx, cu.curPLT[compID][idx]);
     }
   }
   uint32_t signalEscape = (cu.useEscape[compBegin]) ? 1 : 0;
   if (cu.curPLTSize[compBegin] > 0)
   {
     m_BinEncoder.encodeBinEP(signalEscape);
+    DTRACE(g_trace_ctx, D_SYNTAX, "cu_palette_info() esc_code=%d\n", signalEscape);
   }
   //encode index map
   uint32_t   height = cu.block(compBegin).height;
@@ -2884,6 +2887,7 @@ void CABACWriter::cuPaletteSubblockInfo(const CodingUnit& cu, ComponentID compBe
 void CABACWriter::codeScanRotationModeFlag(const CodingUnit& cu, ComponentID compBegin)
 {
   m_BinEncoder.encodeBin((cu.useRotation[compBegin]), Ctx::RotationFlag());
+  DTRACE(g_trace_ctx, D_SYNTAX, "cu_palette_info() use_rotation=%d\n", cu.useRotation[compBegin]);
 }
 void CABACWriter::xEncodePLTPredIndicator(const CodingUnit& cu, uint32_t maxPLTSize, ComponentID compBegin)
 {
@@ -3760,7 +3764,7 @@ void CABACWriter::ibcMbvdData(const PredictionUnit& pu)
   {
     m_BinEncoder.encodeBinsEP( mvpIdx % riceParVal, length);
   }
-  DTRACE(g_trace_ctx, D_SYNTAX, "ibc_mbvd_data() merge_idx=%d\n", pu.ibcMbvdMergeIdx);
+  DTRACE(g_trace_ctx, D_SYNTAX, "ibc_mbvd_data() ibc_merge_idx=%d\n", pu.ibcMbvdMergeIdx);
 
   if (pu.interDir == 3 && pu.ibcMergeIdx1 >= IBC_MRG_MAX_NUM_CANDS)
   {
@@ -3786,7 +3790,7 @@ void CABACWriter::ibcMbvdData(const PredictionUnit& pu)
     {
       m_BinEncoder.encodeBinsEP( mvpIdx1 % riceParVal, length1);
     }
-    DTRACE(g_trace_ctx, D_SYNTAX, "ibc_mbvd_data() merge_idx1=%d\n", pu.ibcMergeIdx1-IBC_MRG_MAX_NUM_CANDS);
+    DTRACE(g_trace_ctx, D_SYNTAX, "ibc_mbvd_data() ibc_merge_idx1=%d\n", pu.ibcMergeIdx1 - IBC_MRG_MAX_NUM_CANDS);
   }
 #else
   unsigned int ricePar = 1;
@@ -4875,7 +4879,12 @@ void CABACWriter::merge_idx( const PredictionUnit& pu )
 #endif
   }
 #if JVET_X0049_ADAPT_DMVR
-  DTRACE( g_trace_ctx, D_SYNTAX, "merge_idx() merge_idx=%d\n", mergeIdx );
+#if JVET_AE0169_BIPREDICTIVE_IBC
+  if (pu.ibcMbvdMergeFlag)
+    DTRACE( g_trace_ctx, D_SYNTAX, "merge_idx() ibc_merge_idx1=%d\n", mergeIdx );
+  else 
+#endif
+    DTRACE( g_trace_ctx, D_SYNTAX, "merge_idx() merge_idx=%d\n", mergeIdx );
 #else
   DTRACE( g_trace_ctx, D_SYNTAX, "merge_idx() merge_idx=%d\n", pu.mergeIdx );
 #endif
@@ -7396,6 +7405,7 @@ void CABACWriter::cu_chroma_qp_offset( const CodingUnit& cu )
       unary_max_symbol( qpAdj-1, Ctx::ChromaQpAdjIdc(), Ctx::ChromaQpAdjIdc(), length-1 );
     }
   }
+  DTRACE(g_trace_ctx, D_SYNTAX, "cu_chroma_qp_offset() chroma_qp_adj=%d\n", cu.chromaQpAdj);
 }