diff --git a/source/Lib/CommonLib/Quant.cpp b/source/Lib/CommonLib/Quant.cpp
index f57a415a6dbe90bf888ad9e787449c318b7cda42..f2081f62e7dac20d15a9a2e41cc123212760f9de 100644
--- a/source/Lib/CommonLib/Quant.cpp
+++ b/source/Lib/CommonLib/Quant.cpp
@@ -545,17 +545,21 @@ void Quant::setScalingList(ScalingList *scalingList, const int maxLog2TrDynamicR
       if ((size == SCALING_LIST_2x2 && list < 4) || (size == SCALING_LIST_64x64 && list % (SCALING_LIST_NUM / SCALING_LIST_PRED_MODES) != 0))   // skip 2x2 luma
         continue;
 #if JVET_Q0505_CHROAM_QM_SIGNALING_400
-      if (!(scalingList->getChromaScalingListPresentFlag() || list % (SCALING_LIST_NUM / SCALING_LIST_PRED_MODES) == 0 || (size ==SCALING_LIST_64x64)))// skip chroma QM for 400
+      if (scalingList->getChromaScalingListPresentFlag() || scalingListId % 3 == 2 || scalingListId == 27)
       {
-        scalingList->processDefaultMatrix(scalingListId);
-        scalingListId++; continue;
-      }
 #endif
-      for(int qp = minimumQp; qp < maximumQp; qp++)
+        for(int qp = minimumQp; qp < maximumQp; qp++)
+        {
+          xSetScalingListEnc(scalingList, list, size, qp, scalingListId);
+          xSetScalingListDec(*scalingList, list, size, qp, scalingListId);
+        }
+#if JVET_Q0505_CHROAM_QM_SIGNALING_400
+      }
+      else // chroma QMs in 400
       {
-        xSetScalingListEnc(scalingList, list, size, qp, scalingListId);
-        xSetScalingListDec(*scalingList, list, size, qp, scalingListId);
+         scalingList->processDefaultMatrix(scalingListId);
       }
+#endif
       scalingListId++;
     }
   }
diff --git a/source/Lib/EncoderLib/EncLib.cpp b/source/Lib/EncoderLib/EncLib.cpp
index 8212adc027fb65fcfdbdd367c5cc5e37bf9ac08c..d455c05efd541d5d81032b8392afc02144cfcd5d 100644
--- a/source/Lib/EncoderLib/EncLib.cpp
+++ b/source/Lib/EncoderLib/EncLib.cpp
@@ -597,7 +597,8 @@ void EncLib::xInitScalingLists( SPS &sps, APS &aps )
     for (uint32_t scalingListId = 0; scalingListId < 28; scalingListId++)
     {
 #if JVET_Q0505_CHROAM_QM_SIGNALING_400
-      if (aps.getScalingList().getChromaScalingListPresentFlag()|| scalingListId % 3 == 2 || scalingListId == 27){
+      if (aps.getScalingList().getChromaScalingListPresentFlag()|| scalingListId % 3 == 2 || scalingListId == 27)
+      {
 #endif
         aps.getScalingList().checkPredMode(scalingListId);
 #if JVET_Q0505_CHROAM_QM_SIGNALING_400