diff --git a/doc/software-manual.tex b/doc/software-manual.tex
index 5140b2ed6948fbcaa5f091699416160f76c5335f..ce3a86419367867f2cd7bb0b0ada75ff01f62442 100644
--- a/doc/software-manual.tex
+++ b/doc/software-manual.tex
@@ -1000,40 +1000,88 @@ For --profile=main-RExt, specifies the value to use to derive the general_max_bi
 For --profile=main-RExt, specifies the chroma-format to use for the general profile constraints for RExt profiles; when 0, use the value of ChromaFormatIDC.
 \\
 
-\Option{IntraConstraintFlag} &
+\Option{GciPresentFlag} &
+%\ShortOption{\None} &
+\Default{1} &
+Specifies the value of gci_present_flag
+\\
+
+\Option{IntraOnlyConstraintFlag} &
 %\ShortOption{\None} &
 \Default{false} &
-For --profile=main-RExt, specifies the value of general_intra_constraint_flag to use for RExt profiles.
+Specifies the value of gci_intra_only_constraint_flag
+\\
+
+\Option{AllLayersIndependentConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of all_layers_independent_constraint_flag
 \\
 
 \Option{OnePictureOnlyConstraintFlag} &
 %\ShortOption{\None} &
 \Default{false} &
-Specifies the value of general_one_picture_only_constraint_flag.
+Specifies the value of general_one_picture_only_constraint_flag
 \\
 
-\Option{LowerBitRateConstraintFlag} &
+\Option{MaxBitDepthConstraintIdc} &
 %\ShortOption{\None} &
-\Default{true} &
-Specifies the value of general_lower_bit_constraint_flag to use for RExt profiles.
+\Default{16} &
+Specifies the value of 16 minus gci_sixteen_minus_max_bitdepth_constraint_idc
 \\
 
-\Option{NoResChangeInClvsConstraintFlag} &
+\Option{MaxChromaFormatConstraintIdc} &
+%\ShortOption{\None} &
+\Default{3} &
+Specifies the value of 3 minus gci_three_minus_max_chroma_format_constraint_idc
+\\
+
+\Option{TrailConstraintFlag} &
 %\ShortOption{\None} &
 \Default{false} &
-Specifies the value of no_res_change_in_clvs_constraint_flag
+Specifies the value of gci_no_trail_constraint_flag
 \\
 
-\Option{SingleLayerConstraintFlag} &
+\Option{StsaConstraintFlag} &
 %\ShortOption{\None} &
 \Default{false} &
-Specifies the value of single_layer_constraint_flag
+Specifies the value of gci_no_stsa_constraint_flag
 \\
 
-\Option{AllLayersIndependentConstraintFlag} &
+\Option{RaslConstraintFlag} &
 %\ShortOption{\None} &
 \Default{false} &
-Specifies the value of all_layers_independent_constraint_flag
+Specifies the value of gci_no_rasl_constraint_flag
+\\
+
+\Option{RadlConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_radl_constraint_flag
+\\
+
+\Option{IdrConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_idr_constraint_flag
+\\
+
+\Option{CraConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_cra_constraint_flag
+\\
+
+\Option{GdrConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_gdr_constraint_flag
+\\
+
+\Option{ApsConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_aps_constraint_flag
 \\
 
 \Option{OneTilePerPicConstraintFlag} &
@@ -1060,24 +1108,252 @@ Specifies the value of one_slice_per_pic_constraint_flag
 Specifies the value of one_subpic_per_pic_constraint_flag
 \\
 
+\Option{PartitionConstraintsOverrideConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_partition_constraints_override_constraint_flag
+\\
+
+\Option{QtbttDualTreeIntraConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_qtbtt_dual_tree_intra_constraint_flag
+\\
+
+\Option{PaletteConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_palette_constraint_flag
+\\
+
+\Option{IbcConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_ibc_constraint_flag
+\\
+
+\Option{IspConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_isp_constraint_flag
+\\
+
+\Option{MrlConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_mrl_constraint_flag
+\\
+
+\Option{MipConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_mip_constraint_flag
+\\
+
+\Option{CclmConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_cclm_constraint_flag
+\\
+
+\Option{NoResChangeInClvsConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_res_change_in_clvs_constraint_flag
+\\
+
+\Option{RefWraparoundConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_ref_wraparound_constraint_flag
+\\
+
+\Option{TemporalMvpConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_temporal_mvp_constraint_flag
+\\
+
+\Option{SbtmvpConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_sbtmvp_constraint_flag
+\\
+
+\Option{AmvrConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_amvr_constraint_flag
+\\
+
+\Option{SmvdConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_smvd_constraint_flag
+\\
+
+\Option{BdofConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_bdof_constraint_flag
+\\
+
+\Option{DmvrConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_dmvr_constraint_flag
+\\
+
+\Option{MmvdConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_mmvd_constraint_flag
+\\
+
+\Option{AffineMotionConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_affine_motion_constraint_flag
+\\
+
+\Option{ProfConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_prof_constraint_flag
+\\
+
+\Option{BcwConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_bcw_constraint_flag
+\\
+
+\Option{CiipConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_ciip_constraint_flag
+\\
+
+\Option{GpmConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_gpm_constraint_flag
+\\
+
+\Option{TransformSkipConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_transform_skip_constraint_flag
+\\
+
+\Option{BDPCMConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_bdpcm_constraint_flag
+\\
+
+\Option{MtsConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_mts_constraint_flag
+\\
+
+\Option{LfnstConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_lfnst_constraint_flag
+\\
+
+\Option{JointCbCrConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_joint_cbcr_constraint_flag
+\\
+
+\Option{SbtConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_sbt_constraint_flag
+\\
+
+\Option{ActConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_act_constraint_flag
+\\
+
 \Option{ExplicitScaleListConstraintFlag} &
 %\ShortOption{\None} &
 \Default{false} &
 Specifies the value of gci_no_explicit_scaling_list_constraint_flag
 \\
 
+\Option{DepQuantConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_dep_quant_constraint_flag
+\\
+
+\Option{SignDataHidingConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_sign_data_hiding_constraint_flag
+\\
+
+\Option{QpDeltaConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_cu_qp_delta_constraint_flag
+\\
+
+\Option{SaoConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_sao_constraint_flag
+\\
+
+\Option{AlfConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_alf_constraint_flag
+\\
+
+\Option{CCAlfConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_ccalf_constraint_flag
+\\
+
+\Option{LmcsConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_lmcs_constraint_flag
+\\
+
+\Option{LadfConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_ladf_constraint_flag
+\\
+
 \Option{VirtualBoundaryConstraintFlag} &
 %\ShortOption{\None} &
 \Default{false} &
 Specifies the value of gci_no_virtual_boundaries_constraint_flag
 \\
 
-\Option{FrameOnly} &
+
+\Option{SingleLayerConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of single_layer_constraint_flag
+\\
+
+\Option{FrameOnlyConstraintFlag} &
 %\ShortOption{\None} &
 \Default{false} &
 Specifies the value of general_frame_only_constraint_flag
 \\
-
 \end{OptionTableNoShorthand}
 
 
@@ -2924,7 +3200,7 @@ Specifies the value of general_progressive_source_flag
 \Default{false} &
 Specifies the value of general_interlaced_source_flag 
 \\
-\Option{NonPackedSource} &
+\Option{NonPackedSourceConstraintFlag} &
 %\ShortOption{\None} &
 \Default{false} &
 Specifies the value of general_non_packed_constraint_flag
diff --git a/source/App/EncoderApp/EncApp.cpp b/source/App/EncoderApp/EncApp.cpp
index a233449ee328521704ef1199ba1ebc32a0c66eff..8255d06f0ece9cda6d76e26262d45ea43e09f83a 100644
--- a/source/App/EncoderApp/EncApp.cpp
+++ b/source/App/EncoderApp/EncApp.cpp
@@ -242,13 +242,8 @@ void EncApp::xInitLibCfg()
 
   //====== SPS constraint flags =======
 #if JVET_S0179_CONDITIONAL_SIGNAL_GCI
-  m_cEncLib.setGciPresentFlag                                    (true);
+  m_cEncLib.setGciPresentFlag                                    ( m_gciPresentFlag );
 #endif
-//#if JVET_S0094_CHROMAFORMAT_BITDEPTH_CONSTRAINT
-//  m_cEncLib.setMaxBitDepthConstraintIdc                          ( m_bitDepthConstraint );
-//#else
-//  m_cEncLib.setMaxBitDepthConstraintIdc                          ( m_bitDepthConstraint - 8 );
-//#endif
   if (m_cEncLib.getGciPresentFlag())
   {
     m_cEncLib.setNonPackedConstraintFlag(m_nonPackedConstraintFlag);
@@ -260,8 +255,8 @@ void EncApp::xInitLibCfg()
     m_cEncLib.setFrameOnlyConstraintFlag(m_frameOnlyConstraintFlag);
     m_cEncLib.setOnePictureOnlyConstraintFlag(m_onePictureOnlyConstraintFlag);
     m_cEncLib.setIntraOnlyConstraintFlag(m_intraOnlyConstraintFlag);
-    m_cEncLib.setNoIdrConstraintFlag(m_noIdrConstraintFlag); // Not yet possible to encode bitstream starting with a GDR picture
-    m_cEncLib.setNoGdrConstraintFlag(m_noGdrConstraintFlag); // Not yet possible to encode GDR using config parameters
+    m_cEncLib.setNoIdrConstraintFlag(m_noIdrConstraintFlag);
+    m_cEncLib.setNoGdrConstraintFlag(m_noGdrConstraintFlag);
     m_cEncLib.setSingleLayerConstraintFlag(m_singleLayerConstraintFlag);
     m_cEncLib.setAllLayersIndependentConstraintFlag(m_allLayersIndependentConstraintFlag);
     m_cEncLib.setNoQpDeltaConstraintFlag(m_bNoQpDeltaConstraintFlag);
@@ -285,10 +280,10 @@ void EncApp::xInitLibCfg()
     CHECK(m_noResChangeInClvsConstraintFlag && m_resChangeInClvsEnabled, "Resolution change in CLVS shall be deactivated when m_noResChangeInClvsConstraintFlag is equal to 1");
 
     m_cEncLib.setMaxBitDepthConstraintIdc(m_maxBitDepthConstraintIdc);
-    CHECK(m_maxBitDepthConstraintIdc < m_bitDepthConstraint - 8, "Bit depth minus 8 shall be less than m_maxBitDepthConstraintIdc");
+    CHECK(m_internalBitDepth[CHANNEL_TYPE_LUMA] > m_maxBitDepthConstraintIdc, "Internal bit depth shall be less than or equal to m_maxBitDepthConstraintIdc");
 
     m_cEncLib.setMaxChromaFormatConstraintIdc(m_maxChromaFormatConstraintIdc);
-    CHECK(m_maxChromaFormatConstraintIdc < m_chromaFormatConstraint, "Chroma format Idc shall be less than m_maxBitDepthConstraintIdc");
+    CHECK(m_chromaFormatIDC > m_maxChromaFormatConstraintIdc, "Chroma format Idc shall be less than or equal to m_maxBitDepthConstraintIdc");
 
     m_cEncLib.setNoQtbttDualTreeIntraConstraintFlag(m_bNoQtbttDualTreeIntraConstraintFlag);
     CHECK(m_bNoQtbttDualTreeIntraConstraintFlag && m_dualTree, "Dual tree shall be deactivated when m_bNoQtbttDualTreeIntraConstraintFlag is equal to 1");
@@ -401,7 +396,7 @@ void EncApp::xInitLibCfg()
 #if JVET_S0050_GCI
     m_cEncLib.setNoExplicitScaleListConstraintFlag(m_noExplicitScaleListConstraintFlag);
     CHECK(m_noExplicitScaleListConstraintFlag && m_useScalingListId != SCALING_LIST_OFF, "Explicit scaling list shall be deactivated when m_noExplicitScaleListConstraintFlag is equal to 1");
-   
+
     m_cEncLib.setNoVirtualBoundaryConstraintFlag(m_noVirtualBoundaryConstraintFlag);
     CHECK(m_noVirtualBoundaryConstraintFlag && m_virtualBoundariesEnabledFlag, "Virtuall boundaries shall be deactivated when m_noVirtualBoundaryConstraintFlag is equal to 1");
 #endif
@@ -420,8 +415,8 @@ void EncApp::xInitLibCfg()
     m_cEncLib.setFrameOnlyConstraintFlag(false);
     m_cEncLib.setOnePictureOnlyConstraintFlag(false);
     m_cEncLib.setIntraOnlyConstraintFlag(false);
-    m_cEncLib.setMaxBitDepthConstraintIdc(8);
-    m_cEncLib.setMaxChromaFormatConstraintIdc(CHROMA_444);
+    m_cEncLib.setMaxBitDepthConstraintIdc(16);
+    m_cEncLib.setMaxChromaFormatConstraintIdc(3);
     m_cEncLib.setNoQtbttDualTreeIntraConstraintFlag(false);
     m_cEncLib.setNoPartitionConstraintsOverrideConstraintFlag(false);
     m_cEncLib.setNoSaoConstraintFlag(false);
diff --git a/source/App/EncoderApp/EncAppCfg.cpp b/source/App/EncoderApp/EncAppCfg.cpp
index 3bd23b720ce75dc72236b5d9779f42897f5de362..c08061e802b92600dc5428c3cb8bda18708f0b4e 100644
--- a/source/App/EncoderApp/EncAppCfg.cpp
+++ b/source/App/EncoderApp/EncAppCfg.cpp
@@ -81,60 +81,6 @@ EncAppCfg::EncAppCfg()
 , m_snrInternalColourSpace(false)
 , m_outputInternalColourSpace(false)
 , m_packedYUVMode(false)
-#if JVET_S0179_CONDITIONAL_SIGNAL_GCI
-, m_gciPresentFlag(true)
-#endif
-, m_bIntraOnlyConstraintFlag(false)
-, m_maxBitDepthConstraintIdc(0)
-, m_maxChromaFormatConstraintIdc(CHROMA_420)
-, m_bFrameConstraintFlag(false)
-, m_singleLayerConstraintFlag(false)
-, m_allLayersIndependentConstraintFlag(false)
-, m_noMrlConstraintFlag(false)
-, m_noIspConstraintFlag(false)
-, m_noMipConstraintFlag(false)
-, m_noLfnstConstraintFlag(false)
-, m_noMmvdConstraintFlag(false)
-, m_noSmvdConstraintFlag(false)
-, m_noProfConstraintFlag(false)
-, m_noPaletteConstraintFlag(false)
-, m_noActConstraintFlag(false)
-, m_noLmcsConstraintFlag(false)
-, m_bNoQtbttDualTreeIntraConstraintFlag(false)
-, m_noPartitionConstraintsOverrideConstraintFlag(false)
-, m_bNoSaoConstraintFlag(false)
-, m_bNoAlfConstraintFlag(false)
-, m_noCCAlfConstraintFlag(false)
-, m_bNoRefWraparoundConstraintFlag(false)
-, m_bNoTemporalMvpConstraintFlag(false)
-, m_bNoSbtmvpConstraintFlag(false)
-, m_bNoAmvrConstraintFlag(false)
-, m_bNoBdofConstraintFlag(false)
-, m_noDmvrConstraintFlag(false)
-, m_bNoCclmConstraintFlag(false)
-, m_bNoMtsConstraintFlag(false)
-, m_noSbtConstraintFlag(false)
-, m_bNoAffineMotionConstraintFlag(false)
-, m_bNoBcwConstraintFlag(false)
-, m_noIbcConstraintFlag(false)
-, m_bNoCiipConstraintFlag(false)
-, m_noGeoConstraintFlag(false)
-, m_bNoLadfConstraintFlag(false)
-, m_noTransformSkipConstraintFlag(false)
-, m_noBDPCMConstraintFlag(false)
-, m_noJointCbCrConstraintFlag(false)
-, m_bNoQpDeltaConstraintFlag(false)
-, m_bNoDepQuantConstraintFlag(false)
-, m_bNoSignDataHidingConstraintFlag(false)
-, m_noTrailConstraintFlag(false)
-, m_noStsaConstraintFlag(false)
-, m_noRaslConstraintFlag(false)
-, m_noRadlConstraintFlag(false)
-, m_noIdrConstraintFlag(false)
-, m_noCraConstraintFlag(false)
-, m_noGdrConstraintFlag(false)
-, m_noApsConstraintFlag(false)
-
 #if EXTENSION_360_VIDEO
 , m_ext360(*this)
 #endif
@@ -820,29 +766,77 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] )
   ("Tier",                                            m_levelTier,                                Level::MAIN, "Tier to use for interpretation of --Level (main or high only)")
   ("SubProfile",                                      cfg_SubProfile,                          cfg_SubProfile,  "Sub-profile idc")
   ("EnableDecodingCapabilityInformation",             m_DCIEnabled,                                     false, "Enables writing of Decoding Capability Information")
-  //("MaxBitDepthConstraint",                           m_bitDepthConstraint,                                0u, "Bit depth to use for profile-constraint for RExt profiles. 0=automatically choose based upon other parameters")
-  //("MaxChromaFormatConstraint",                       tmpConstraintChromaFormat,                            0, "Chroma-format to use for the profile-constraint for RExt profiles. 0=automatically choose based upon other parameters")
-  ("GciPresentFlag",                                  m_gciPresentFlag,                                  true, "GCI field present")
-  ("MaxBitDepthConstraintIdc",                        m_maxBitDepthConstraintIdc,                          8u, "Indicate that bit_depth_minus8 shall be in the range of 0 to max_bitdepth_constraint_idc")
-  ("MaxChromaFormatConstraintIdc",                    m_maxChromaFormatConstraintIdc,                      3u, "Indicate that chroma_format_idc shall be in the range of 0 to max_chroma_format_constraint_idc")
+  ("MaxBitDepthConstraint",                           m_bitDepthConstraint,                                0u, "Bit depth to use for profile-constraint for RExt profiles. 0=automatically choose based upon other parameters")
+  ("MaxChromaFormatConstraint",                       tmpConstraintChromaFormat,                            0, "Chroma-format to use for the profile-constraint for RExt profiles. 0=automatically choose based upon other parameters")
+
+  ("GciPresentFlag",                                  m_gciPresentFlag,                                 false, "GCI field present")
+  ("IntraOnlyConstraintFlag",                         m_intraOnlyConstraintFlag,                        false, "Value of intra_only_constraint_flag")
+  ("AllLayersIndependentConstraintFlag",              m_allLayersIndependentConstraintFlag,             false, "Indicate that all layers are independent")
   ("OnePictureOnlyConstraintFlag",                    m_onePictureOnlyConstraintFlag,                   false, "Value of general_intra_constraint_flag. Can only be used for single frame encodings. Will be set to true for still picture profiles")
-  ("IntraOnlyConstraintFlag",                         m_intraOnlyConstraintFlag,                            false, "Value of intra_only_constraint_flag")
-#if !JVET_S0266_VUI_length
-  ("NonPackedSourceConstraintFlag",                   m_nonPackedConstraintFlag,                        false, "Indicate that source does not contain frame packing")
-  ("NonProjectedConstraintFlag",                      m_nonProjectedConstraintFlag,                     false, "Indicate that the bitstream contains projection SEI messages")
-#endif
-  ("NoResChangeInClvsConstraintFlag",                 m_noResChangeInClvsConstraintFlag,                false, "Indicate that the picture spatial resolution does not change within any CLVS referring to the SPS")
-  ("SingleLayerConstraintFlag",                       m_singleLayerConstraintFlag,                     false, "Indicate that the bitstream contains only one layer")
-  ("AllLayersIndependentConstraintFlag",              m_allLayersIndependentConstraintFlag,            false, "Indicate that all layers are independent")
+  ("MaxBitDepthConstraintIdc",                        m_maxBitDepthConstraintIdc,                          16u, "Indicate that bit_depth_minus8 plus 8 shall be in the range of 0 to m_maxBitDepthConstraintIdc")
+  ("MaxChromaFormatConstraintIdc",                    m_maxChromaFormatConstraintIdc,                        3, "Indicate that chroma_format_idc shall be in the range of 0 to m_maxChromaFormatConstraintIdc")
+  ("TrailConstraintFlag",                             m_noTrailConstraintFlag,                          false, "Indicate that TRAIL is deactivated")
+  ("StsaConstraintFlag",                              m_noStsaConstraintFlag,                           false, "Indicate that STSA is deactivated")
+  ("RaslConstraintFlag",                              m_noRaslConstraintFlag,                           false, "Indicate that RSAL is deactivated")
+  ("RadlConstraintFlag",                              m_noRadlConstraintFlag,                           false, "Indicate that RADL is deactivated")
+  ("IdrConstraintFlag",                               m_noIdrConstraintFlag,                            false, "Indicate that IDR is deactivated")
+  ("CraConstraintFlag",                               m_noCraConstraintFlag,                            false, "Indicate that CRA is deactivated")
+  ("GdrConstraintFlag",                               m_noGdrConstraintFlag,                            false, "Indicate that GDR is deactivated")
+  ("ApsConstraintFlag",                               m_noApsConstraintFlag,                            false, "Indicate that APS is deactivated")
   ("OneTilePerPicConstraintFlag",                     m_oneTilePerPicConstraintFlag,                    false, "Indicate that each picture shall contain only one tile")
   ("PicHeaderInSliceHeaderConstraintFlag",            m_picHeaderInSliceHeaderConstraintFlag,           false, "Indicate that picture header is present in slice header")
   ("OneSlicePerPicConstraintFlag",                    m_oneSlicePerPicConstraintFlag,                   false, "Indicate that each picture shall contain only one slice")
   ("OneSubpicPerPicConstraintFlag",                   m_oneSubpicPerPicConstraintFlag,                  false, "Indicate that each picture shall contain only one subpicture")
-  ("FrameOnly",                                       m_frameOnlyConstraintFlag,                        false, "Indicate that the bitstream contains only frames")
+  ("PartitionConstraintsOverrideConstraintFlag",      m_noPartitionConstraintsOverrideConstraintFlag,   false, "Indicate that Partition Override is deactivated")
+  ("QtbttDualTreeIntraConstraintFlag",                m_bNoQtbttDualTreeIntraConstraintFlag,            false, "Indicate that Qtbtt DualTree Intra is deactivated")
+  ("PaletteConstraintFlag",                           m_noPaletteConstraintFlag,                        false, "Indicate that PLT is deactivated")
+  ("IbcConstraintFlag",                               m_noIbcConstraintFlag,                            false, "Indicate that IBC is deactivated")
+  ("IspConstraintFlag",                               m_noIspConstraintFlag,                            false, "Indicate that ISP is deactivated")
+  ("MrlConstraintFlag",                               m_noMrlConstraintFlag,                            false, "Indicate that MRL is deactivated")
+  ("MipConstraintFlag",                               m_noMipConstraintFlag,                            false, "Indicate that MIP is deactivated")
+  ("CclmConstraintFlag",                              m_bNoCclmConstraintFlag,                          false, "Indicate that CCLM is deactivated")
+  ("NoResChangeInClvsConstraintFlag",                 m_noResChangeInClvsConstraintFlag,                false, "Indicate that the picture spatial resolution does not change within any CLVS referring to the SPS")
+  ("RefWraparoundConstraintFlag",                     m_bNoRefWraparoundConstraintFlag,                 false, "Indicate that Reference Wraparound is deactivated")
+  ("TemporalMvpConstraintFlag",                       m_bNoTemporalMvpConstraintFlag,                   false, "Indicate that temporal MVP is deactivated")
+  ("SbtmvpConstraintFlag",                            m_bNoSbtmvpConstraintFlag,                        false, "Indicate that SbTMVP is deactivated")
+  ("AmvrConstraintFlag",                              m_bNoAmvrConstraintFlag,                          false, "Indicate that AMVR is deactivated")
+  ("SmvdConstraintFlag",                              m_noSmvdConstraintFlag,                           false, "Indicate that SMVD is deactivated")
+  ("BdofConstraintFlag",                              m_bNoBdofConstraintFlag,                          false, "Indicate that BIO is deactivated")
+  ("DmvrConstraintFlag",                              m_noDmvrConstraintFlag,                           false, "Indicate that DMVR is deactivated")
+  ("MmvdConstraintFlag",                              m_noMmvdConstraintFlag,                           false, "Indicate that MMVD is deactivated")
+  ("AffineMotionConstraintFlag",                      m_bNoAffineMotionConstraintFlag,                  false, "Indicate that Affine is deactivated")
+  ("ProfConstraintFlag",                              m_noProfConstraintFlag,                           false, "Indicate that PROF is deactivated")
+  ("BcwConstraintFlag",                               m_bNoBcwConstraintFlag,                           false, "Indicate that BCW is deactivated")
+  ("CiipConstraintFlag",                              m_bNoCiipConstraintFlag,                          false, "Indicate that CIIP is deactivated")
+  ("GpmConstraintFlag",                               m_noGeoConstraintFlag,                            false, "Indicate that GPM is deactivated")
+  ("TransformSkipConstraintFlag",                     m_noTransformSkipConstraintFlag,                  false, "Indicate that Transform Skip is deactivated")
+  ("BDPCMConstraintFlag",                             m_noBDPCMConstraintFlag,                          false, "Indicate that BDPCM is deactivated")
+  ("MtsConstraintFlag",                               m_bNoMtsConstraintFlag,                           false, "Indicate that MTS is deactivated")
+  ("LfnstConstraintFlag",                             m_noLfnstConstraintFlag,                          false, "Indicate that LFNST is deactivated")
+  ("JointCbCrConstraintFlag",                         m_noJointCbCrConstraintFlag,                      false, "Indicate that JCCR is deactivated")
+  ("SbtConstraintFlag",                               m_noSbtConstraintFlag,                            false, "Indicate that SBT is deactivated")
+  ("ActConstraintFlag",                               m_noActConstraintFlag,                            false, "Indicate that ACT is deactivated")
 #if JVET_S0050_GCI
   ("ExplicitScaleListConstraintFlag",                 m_noExplicitScaleListConstraintFlag,              false, "Indicate that explicit scaling list is deactivated")
+#endif
+  ("DepQuantConstraintFlag",                          m_bNoDepQuantConstraintFlag,                      false, "Indicate that DQ is deactivated")
+  ("SignDataHidingConstraintFlag",                    m_bNoSignDataHidingConstraintFlag,                false, "Indicate that SDH is deactivated")
+  ("QpDeltaConstraintFlag",                           m_bNoQpDeltaConstraintFlag,                       false, "Indicate that QPdelta is deactivated")
+  ("SaoConstraintFlag",                               m_bNoSaoConstraintFlag,                           false, "Indicate that SAO is deactivated")
+  ("AlfConstraintFlag",                               m_bNoAlfConstraintFlag,                           false, "Indicate that ALF is deactivated")
+  ("CCAlfConstraintFlag",                             m_noCCAlfConstraintFlag,                          false, "Indicate that CCALF is deactivated")
+  ("LmcsConstraintFlag",                              m_noLmcsConstraintFlag,                           false, "Indicate that LMCS is deactivated")
+  ("LadfConstraintFlag",                              m_bNoLadfConstraintFlag,                          false, "Indicate that LADF is deactivated")
+#if JVET_S0050_GCI
   ("VirtualBoundaryConstraintFlag",                   m_noVirtualBoundaryConstraintFlag,                false, "Indicate that virtual boundary is deactivated")
 #endif
+  ("SingleLayerConstraintFlag",                       m_singleLayerConstraintFlag,                      false, "Indicate that the bitstream contains only one layer")
+  ("FrameOnlyConstraintFlag",                         m_frameOnlyConstraintFlag,                        false, "Indicate that the bitstream contains only frames")
+ #if !JVET_S0266_VUI_length
+  ("NonPackedSourceConstraintFlag",                   m_nonPackedConstraintFlag,                        false, "Indicate that source does not contain frame packing")
+  ("NonProjectedConstraintFlag",                      m_nonProjectedConstraintFlag,                     false, "Indicate that the bitstream contains projection SEI messages")
+#endif
+
   ("CTUSize",                                         m_uiCTUSize,                                       128u, "CTUSize (specifies the CTU size if QTBT is on) [default: 128]")
   ("Log2MinCuSize",                                   m_log2MinCuSize,                                     2u, "Log2 min CU size")
   ("SubPicInfoPresentFlag",                           m_subPicInfoPresentFlag,                          false, "equal to 1 specifies that subpicture parameters are present in in the SPS RBSP syntax")
@@ -1193,7 +1187,7 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] )
   ("ProgressiveSource",                               m_progressiveSourceFlag,                          false, "Indicate that source is progressive")
   ("InterlacedSource",                                m_interlacedSourceFlag,                           false, "Indicate that source is interlaced")
 #if JVET_S0266_VUI_length
-  ("NonPackedSource",                                 m_nonPackedConstraintFlag,                        false, "Indicate that source does not contain frame packing")
+  ("NonPackedSourceConstraintFlag",                   m_nonPackedConstraintFlag,                        false, "Indicate that source does not contain frame packing")
   ("NonProjectedConstraintFlag",                      m_nonProjectedConstraintFlag,                     false, "Indicate that the bitstream contains projection SEI messages")
 #endif
   ("ChromaLocInfoPresent",                            m_chromaLocInfoPresentFlag,                       false, "Signals whether chroma_sample_loc_type_top_field and chroma_sample_loc_type_bottom_field are present")
diff --git a/source/App/EncoderApp/EncAppCfg.h b/source/App/EncoderApp/EncAppCfg.h
index cfee5334e85dde083624eb890058c3677be33365..8124d782fa2abc2ba5e51b1139834b92ead9afa6 100644
--- a/source/App/EncoderApp/EncAppCfg.h
+++ b/source/App/EncoderApp/EncAppCfg.h
@@ -136,8 +136,7 @@ protected:
 #endif
   bool      m_bIntraOnlyConstraintFlag;
   uint32_t  m_maxBitDepthConstraintIdc;
-  uint32_t  m_maxChromaFormatConstraintIdc;
-  bool      m_bFrameConstraintFlag;
+  int       m_maxChromaFormatConstraintIdc;
   bool      m_singleLayerConstraintFlag;
   bool      m_allLayersIndependentConstraintFlag;
   bool      m_noMrlConstraintFlag;
diff --git a/source/Lib/CommonLib/Slice.h b/source/Lib/CommonLib/Slice.h
index 76d78a7eb0db616fdb77e024b360f49223ffede5..fc74bdd09a1ba5aa3491a363bf7315ee82b10475 100644
--- a/source/Lib/CommonLib/Slice.h
+++ b/source/Lib/CommonLib/Slice.h
@@ -250,7 +250,7 @@ class ConstraintInfo
   bool              m_frameOnlyConstraintFlag;
   bool              m_intraOnlyConstraintFlag;
   uint32_t          m_maxBitDepthConstraintIdc;
-  ChromaFormat      m_maxChromaFormatConstraintIdc;
+  int               m_maxChromaFormatConstraintIdc;
   bool              m_onePictureOnlyConstraintFlag;
   bool              m_lowerBitRateConstraintFlag;
 
@@ -406,8 +406,8 @@ public:
   uint32_t      getMaxBitDepthConstraintIdc() const { return m_maxBitDepthConstraintIdc; }
   void          setMaxBitDepthConstraintIdc(uint32_t bitDepth) { m_maxBitDepthConstraintIdc = bitDepth; }
 
-  ChromaFormat  getMaxChromaFormatConstraintIdc() const { return m_maxChromaFormatConstraintIdc; }
-  void          setMaxChromaFormatConstraintIdc(ChromaFormat fmt) { m_maxChromaFormatConstraintIdc = fmt; }
+  int           getMaxChromaFormatConstraintIdc() const { return m_maxChromaFormatConstraintIdc; }
+  void          setMaxChromaFormatConstraintIdc(int fmt) { m_maxChromaFormatConstraintIdc = fmt; }
 
 #if !JVET_S0266_VUI_length
   bool          getNonProjectedConstraintFlag() const { return m_nonProjectedConstraintFlag; }
diff --git a/source/Lib/EncoderLib/EncCfg.h b/source/Lib/EncoderLib/EncCfg.h
index 5dc6b259e7a772a80ce9cb86a982d4138e4eb89b..f004c8078d394a25a11206eecf65e570aea74613 100644
--- a/source/Lib/EncoderLib/EncCfg.h
+++ b/source/Lib/EncoderLib/EncCfg.h
@@ -181,8 +181,7 @@ protected:
   bool      m_onePictureOnlyConstraintFlag;
   bool      m_bIntraOnlyConstraintFlag;
   uint32_t  m_maxBitDepthConstraintIdc;
-  uint32_t  m_maxChromaFormatConstraintIdc;
-  bool      m_bFrameConstraintFlag;
+  int  m_maxChromaFormatConstraintIdc;
 
   bool      m_singleLayerConstraintFlag;
   bool      m_allLayersIndependentConstraintFlag;
@@ -776,15 +775,12 @@ public:
   void      setIntraOnlyConstraintFlag(bool bVal) { m_bIntraOnlyConstraintFlag = bVal; }
   uint32_t  getMaxBitDepthConstraintIdc() const { return m_maxBitDepthConstraintIdc; }
   void      setMaxBitDepthConstraintIdc(uint32_t u) { m_maxBitDepthConstraintIdc = u; }
-  uint32_t  getMaxChromaFormatConstraintIdc() const { return m_maxChromaFormatConstraintIdc; }
-  void      setMaxChromaFormatConstraintIdc(uint32_t u) { m_maxChromaFormatConstraintIdc = u; }
-  bool      getFrameConstraintFlag() const { return m_bFrameConstraintFlag; }
-  void      setFrameConstraintFlag(bool bVal) { m_bFrameConstraintFlag = bVal; }
+  int       getMaxChromaFormatConstraintIdc() const { return m_maxChromaFormatConstraintIdc; }
+  void      setMaxChromaFormatConstraintIdc(int u) { m_maxChromaFormatConstraintIdc = u; }
 #if JVET_S0179_CONDITIONAL_SIGNAL_GCI
   bool          getGciPresentFlag() const { return m_gciPresentFlag; }
   void          setGciPresentFlag(bool b) { m_gciPresentFlag = b; }
 #endif
-
   bool          getSingleLayerConstraintFlag() const { return m_singleLayerConstraintFlag; }
   void          setSingleLayerConstraintFlag(bool bVal) { m_singleLayerConstraintFlag = bVal; }
   bool          getAllLayersIndependentConstraintFlag() const { return m_allLayersIndependentConstraintFlag; }
diff --git a/source/Lib/EncoderLib/EncLib.cpp b/source/Lib/EncoderLib/EncLib.cpp
index 76da93b4a93617709c314bbccbc4551422bc2980..66b948eb7e205c200559424ed97003695454f06e 100644
--- a/source/Lib/EncoderLib/EncLib.cpp
+++ b/source/Lib/EncoderLib/EncLib.cpp
@@ -1132,7 +1132,7 @@ void EncLib::xInitSPS( SPS& sps )
   cinfo->setOnePictureOnlyConstraintFlag(m_onePictureOnlyConstraintFlag);
   cinfo->setIntraOnlyConstraintFlag         (m_intraOnlyConstraintFlag);
   cinfo->setMaxBitDepthConstraintIdc    (m_maxBitDepthConstraintIdc);
-  cinfo->setMaxChromaFormatConstraintIdc((ChromaFormat)m_maxChromaFormatConstraintIdc);
+  cinfo->setMaxChromaFormatConstraintIdc((int)m_maxChromaFormatConstraintIdc);
   cinfo->setSingleLayerConstraintFlag (m_singleLayerConstraintFlag);
   cinfo->setAllLayersIndependentConstraintFlag (m_allLayersIndependentConstraintFlag);
   cinfo->setNoMrlConstraintFlag (m_noMrlConstraintFlag);