* seq_parameter_set_data() [16473 bits without vui_parameters()]
- profile_idc                                   u(8)
- constraint_set0_flag                          u(1)
- constraint_set1_flag                          u(1)
- constraint_set2_flag                          u(1)
- constraint_set3_flag                          u(1)
- constraint_set4_flag                          u(1)
- constraint_set5_flag                          u(1)
- reserved_zero_2bits                           u(2)
- level_idc                                     u(8)
- seq_parameter_set_id                          ue(v):0:31
- chroma_format_idc                             ue(v):0:3
- separate_colour_plane_flag                    u(1)
- bit_depth_luma_minus8                         ue(v):0:6
- bit_depth_chroma_minus8                       ue(v):0:6
- qpprime_y_zero_transform_bypass_flag          u(1)
- seq_scaling_matrix_present_flag               u(1)
- log2_max_frame_num_minus4                     ue(v):0:12
- pic_order_cnt_type                            ue(v):0:2
- <if> (pic_order_cnt_type == 0)
  + log2_max_pic_order_cnt_lsb_minus4           ue(v):0:12
- <if> (pic_order_cnt_type == 1)
  + delta_pic_order_always_zero_flag            u(1)
  + offset_for_non_ref_pic                      se(v):-2147483647:2147483647
  + offset_for_top_to_bottom_field              se(v):-2147483647:2147483647
  + num_ref_frames_in_pic_order_cnt_cycle       ue(v):0:255
  + offset_for_ref_frame[i]                     se(v):-2147483647:2147483647
    * num_ref_frames_in_pic_order_cnt_cycle (255 at most)
- max_num_ref_frames                            ue(v):0:16
- gaps_in_frame_num_value_allowed_flag          u(1)
- pic_width_in_mbs_minus1                       ue(v):0:36864
- pic_height_in_mbs_minus1                      ue(v):0:36864
- frame_mbs_only_flag                           u(1)
- mb_adaptive_frame_field_flag                  u(1)
- direct_8x8_inference_flag                     u(1)
- frame_cropping_flag                           u(1)
- frame_crop_left_offset                        ue(v):0:36864
- frame_crop_right_offset                       ue(v):0:36864
- frame_crop_top_offset                         ue(v):0:36864
- frame_crop_bottom_offset                      ue(v):0:36864
- vui_parameters_present_flag                   u(1)
  + vui_parameters()

* vui_parameters() [210 bits without hrd_parameters() * 2]
- aspect_ratio_info_present_flag                u(1)
  + aspect_ratio_idc                            u(8)
  + sar_width                                   u(16)
  + sar_height                                  u(16)
- overscan_info_present_flag                    u(1)
  + overscan_appropriate_flag                   u(1)
- video_signal_type_present_flag                u(1)
  + video_format                                u(3)
  + video_full_range_flag                       u(1)
  + colour_description_present_flag             u(1)
    + colour_primaries                          u(8)
    + transfer_characteristics                  u(8)
    + matrix_coefficients                       u(8)
- chroma_loc_info_present_flag                  u(1)
  + chroma_sample_loc_type_top_field            ue(v):0:5
  + chroma_sample_loc_type_bottom_field         ue(v):0:5
- timing_info_present_flag                      u(1)
  + num_units_in_tick                           u(32)
  + time_scale                                  u(32)
  + fixed_frame_rate_flag                       u(1)
- nal_hrd_parameters_present_flag               u(1)
  + hrd_parameters()
- vcl_hrd_parameters_present_flag               u(1)
  + hrd_parameters()
- low_delay_hrd_flag                            u(1)
- pic_struct_present_flag                       u(1)
- bitstream_restriction_flag                    u(1)
  + motion_vectors_over_pic_boundaries_flag     u(1)
  + max_bytes_per_pic_denom                     ue(v):0:16
  + max_bits_per_mb_denom                       ue(v):0:16
  + log2_max_mv_length_horizontal               ue(v):0:16
  + log2_max_mv_length_vertical                 ue(v):0:16
  + max_num_reorder_frames                      ue(v):0:16
  + max_dec_frame_buffering                     ue(v):0:16

* hrd_parameters() [4103 bits]
- cpb_cnt_minus1                                ue(v):0:31
- bit_rate_scale                                u(4)
- cpb_size_scale                                u(4)
x (cpb_cnt_minus1 + 1)
  + bit_rate_value_minus1[SchedSelIdx]          ue(v):0:4294967294
  + cpb_size_value_minus1[SchedSelIdx]          ue(v):0:4294967294
  + cbr_flag                                    u(1)
- initial_cpb_removal_delay_length_minus1       u(5)
- cpb_removal_delay_length_minus1               u(5)
- dpb_output_delay_length_minus1                u(5)
- time_offset_length                            u(5)

* pic_parameter_set_rbsp() [101 bits]
- pic_parameter_set_id                          ue(v):0:255
- seq_parameter_set_id                          ue(v):0:31
- entropy_coding_mode_flag                      u(1)
- bottom_field_pic_order_in_frame_present_flag  u(1)
- num_slice_groups_minus1                       ue(v):0
- num_ref_idx_l0_default_active_minus1          ue(v):0:31
- num_ref_idx_l1_default_active_minus1          ue(v):0:31
- weighted_pred_flag                            u(1)
- weighted_bipred_idc                           u(2)
- pic_init_qp_minus26                           se(v):-26:25
- pic_init_qs_minus26                           se(v):-26:25
- chroma_qp_index_offset                        se(v):-12:12
- deblockiong_filter_control_present_flag       u(1)
- constrained_intra_pred_flag                   u(1)
- redundant_pic_cnt_present_flag                u(1)
- transform_8x8_mode_flag                       u(1)
- pic_scaling_matrix_present_flag               u(1)
- second_chroma_qp_index_offset                 se(v):-12:12

* slice_header() [397 bits without 7.3.3.1 - 7.3.3.3]
- first_mb_in_slice                             ue(v):0:PicSizeInMbs-1
- slice_type                                    ue(v):0:9
- pic_parameter_set_id                          ue(v):0:255
- colour_plane_id                               u(2)
- frame_num                                     u(v):0:65535
- field_pic_flag                                u(1)
- bottom_field_flag                             u(1)
- idr_pic_id                                    ue(v):0:65535
- <if> (pic_order_cnt_type == 0)
  + pic_order_cnt_lsb                           u(v):0:65535
  + delta_pic_order_cnt_bottom                  se(v):-65535:2147483647
- <if> (pic_order_cnt_type == 1 && !delta_pic_order_always_zero_flag)
  + delta_pic_order_cnt[0]                      se(v):-2147483647:2147483647
  + delta_pic_order_cnt[1]                      se(v):-2147483647:2147483647
- redundant_pic_cnt                             ue(v):0:127
- direct_spatial_mv_pred_flag                   u(1)
- num_ref_idx_active_override_flag              u(1)
- num_ref_idx_l0_active_minus1                  ue(v):0:31
- num_ref_idx_l1_active_minus1                  ue(v):0:31
+ ref_pic_list_modification()
+ pred_weight_table()
+ dec_ref_pic_marking()
- cabac_init_idc                                ue(v):0:2
- slice_qp_delta                                se(v):-36:51
- sp_for_switch_flag                            u(1)
- slice_qs_delta                                se(v):0:51
- disable_deblocking_filter_idc                 ue(v):0:2
- slice_alpha_c0_offset_div2                    se(v):-6:6
- slice_beta_offset_div2                        se(v):-6:6

* ref_pic_list_modification() [2572 bits]
- ref_pic_list_modification_flag_l0             u(1)
  + modification_of_pic_nums_idc                ue(v):0:3
  + abs_diff_pic_num_minus1                     ue(v):0:131071
  <or>
  + long_term_pic_num                           ue(v):LongTermPicNum range
- ref_pic_list_modification_flag_l1             u(1)
  + modification_of_pic_nums_idc                ue(v):0:3
  + abs_diff_pic_num_minus1                     ue(v):0:131071
  <or>
  + long_term_pic_num                           ue(v):LongTermPicNum range
  
* pred_weight_table() [6670 bits]
- luma_log2_weight_denom                        ue(v):0:7
- chroma_log2_weight_denom                      ue(v):0:7
- <repeat> num_ref_idx_l0_active_minus1 + 1 times
  + luma_weight_l0_flag                         u(1)
    + luma_weight_l0[i]                         se(v):-128:127
    + luma_offset_l0[i]                         se(v):-128:127
  + chroma_weight_l0_flag                       u(1)
    + <repeat> 2 times
      + chroma_weight_l0[i][j]                  se(v):-128:127
      + chroma_offset_l0[i][j]                  se(v):-128:127
- <repeat> num_ref_idx_l1_active_minus1 + 1 times
  + luma_weight_l1_flag                         u(1)
    + luma_weight_l1[i]                         se(v):-128:127
    + luma_offset_l1[i]                         se(v):-128:127
  + chroma_weight_l1_flag                       u(1)
    + <repeat> 2 times
      + chroma_weight_l1[i][j]                  se(v):-128:127
      + chroma_offset_l1[i][j]                  se(v):-128:127

* dec_ref_pic_marking() [2402 bits]
- <if> (IdfPicFlag)
  + no_output_of_prior_pics_flag                u(1)
  + long_term_reference_flag                    u(1)
- <else>
  + adaptive_ref_pic_marking_mode_flag          u(1)
    + <repeat>
      + memory_management_control_operation     ue(v):0:6
      + difference_of_pic_nums_minus1           ue(v)
      + long_term_pic_num                       ue(v)
      + long_term_frame_idx                     ue(v):0:MaxLongTermFrameIdx
      + max_long_term_frame_idx_plus1           ue(v):0:max_num_ref_frames
    + <until> memory_management_control_operation = 0
