Cisco-IOS-XR-asr9k-qos-oper

This module contains a collection of YANG definitions for Cisco IOS-XR asr9k-qos package operational data. This module contains...

  • Version: 2021-04-09

    Cisco-IOS-XR-asr9k-qos-oper@2021-04-09


    
      module Cisco-IOS-XR-asr9k-qos-oper {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-qos-oper";
    
        prefix asr9k-qos-oper;
    
        import Cisco-IOS-XR-types {
          prefix xr;
        }
        import cisco-semver {
          prefix semver;
        }
    
        include Cisco-IOS-XR-asr9k-qos-oper-sub2 {
          revision-date "2021-04-09";
        }
        include Cisco-IOS-XR-asr9k-qos-oper-sub1 {
          revision-date "2021-04-09";
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
         
         Postal: 170 West Tasman Drive
         San Jose, CA 95134
         
         Tel: +1 800 553-NETS
         
         E-mail: cs-yang@cisco.com";
    
        description
          "This module contains a collection of YANG definitions
         for Cisco IOS-XR asr9k-qos package operational data.
         
         This module contains definitions
         for the following management objects:
           platform-qos: QoS ASR9K platform operational data
         
         Copyright (c) 2013-2021 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2021-04-09" {
          description
            "pi changes to support wred drop probability";
        }
    
        revision "2020-12-23" {
          description
            "Introduced an CLI to show qos performance stats";
        }
    
        revision "2019-09-30" {
          description
            "YANG support for PWHE interface";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2015-11-09" {
          description "IOS XR 6.0 revision.";
        }
    
        semver:module-version "1.0.0";
    
        container platform-qos {
          config false;
          description
            "QoS ASR9K platform operational data ";
          container nodes {
            description
              "List of nodes with platform specific QoS
             configuration";
            list node {
              key "node-name";
              description
                "Node with platform specific QoS configuration";
              container capability {
                description
                  "QoS system capability";
                leaf max-policy-maps {
                  type uint32;
                  description
                    "Maximum policy maps per system";
                }
    
                leaf max-policy-hierarchy {
                  type uint32;
                  description
                    "Maximum policy hierarchy";
                }
    
                leaf max-policy-name-length {
                  type uint32;
                  description
                    "Maximum policy name length";
                }
    
                leaf max-classes-per-child-policy {
                  type uint32;
                  description
                    "Maximum classes per child policy";
                }
    
                leaf max-classes-per-policy {
                  type uint32;
                  description
                    "Maximum classes per policy";
                }
    
                leaf max-classes-per-grand-parent-policy {
                  type uint32;
                  description
                    "Maximum classes per parent policy";
                }
    
                leaf max-police-actions-per-class {
                  type uint32;
                  description
                    "Maximum police actions per class";
                }
    
                leaf max-marking-actions-per-class {
                  type uint32;
                  description
                    "Maximum marking action  per class";
                }
    
                leaf max-matches-per-class {
                  type uint32;
                  description
                    "Maximum matches per class";
                }
    
                leaf max-classmap-name-length {
                  type uint32;
                  description
                    "Maximum classmap name length";
                }
    
                leaf max-bundle-members {
                  type uint32;
                  description
                    "Maximum bundle members";
                }
    
                leaf max-instance-name-length {
                  type uint32;
                  description
                    "Maximum instance name length";
                }
              }  // container capability
    
              container pwhe-interfaces {
                description
                  "QoS list of Pwhe interfaces";
                list pwhe-interface {
                  key "interface-name";
                  description
                    "QoS interface name";
                  container pwhe-output {
                    description
                      "QoS policy direction output";
                    container pin-interfaces {
                      description
                        "QoS list of member interfaces";
                      list pin-interface {
                        key "interface-name";
                        description
                          "QoS interface name";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Memeber interface";
                        }
    
                        container details {
                          description
                            "QoS policy direction egress";
                          container header {
                            description
                              "QoS policy header";
                            container interface-parameters {
                              description
                                "Interface config and programmed parameters";
                              container port-config-bandwidth {
                                description
                                  "Bandwidth due to port speed change";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container port-config-bandwidth
    
                              container ancp-config-bandwidth {
                                description
                                  "Bandwidth obtain from IM";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container ancp-config-bandwidth
    
                              container ancp-programmed-bandwidth {
                                description
                                  "ANCP bandwidth that was programmed";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container ancp-programmed-bandwidth
    
                              container port-shaper-rate {
                                description
                                  "Bandwidth that was programmed";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container port-shaper-rate
                            }  // container interface-parameters
    
                            container programmed-bandwidth {
                              description
                                "Bandwidth that was programmed";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container programmed-bandwidth
    
                            leaf classes {
                              type uint16;
                              description
                                "Number of classes";
                            }
    
                            leaf policy-name {
                              type string {
                                length "0..65";
                              }
                              description
                                "Policy name";
                            }
                          }  // container header
    
                          container policy {
                            description
                              "Trident QoS policy details";
                            list qos-show-ea-st-v1 {
                              description
                                "qos show ea st v1";
                              container queue {
                                description
                                  "Queue parameters";
                                leaf queue-id {
                                  type uint32;
                                  description
                                    "Queue ID";
                                }
    
                                leaf queue-type {
                                  type Queue;
                                  description
                                    "Queue type";
                                }
    
                                leaf class-name {
                                  type string {
                                    length
                                      "0..65";
                                  }
                                  description
                                    "Class name";
                                }
                              }  // container queue
    
                              container queue-limit-parameters {
                                description
                                  "Queue limit parameters";
                                container queue-limit {
                                  description
                                    "Queue limit in kbytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container queue-limit
    
                                container config-queue-limit {
                                  description
                                    "Config queue limit";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container config-queue-limit
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Profile ID";
                                }
    
                                leaf scaling-profile-id {
                                  type uint32;
                                  description
                                    "Scaling profile ID";
                                }
                              }  // container queue-limit-parameters
    
                              container shape {
                                description
                                  "Shape parameters";
                                container cir {
                                  description
                                    "CIR in kbps";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container config-bandwidth {
                                  description
                                    "Config bandwidth";
                                  container minimum-rate {
                                    description
                                      "Minimum bandwidth rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container minimum-rate
                                }  // container config-bandwidth
    
                                container cbs {
                                  description
                                    "CBS in bytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR in kbps";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS in bytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                leaf profile-id {
                                  type uint16;
                                  description
                                    "Shape profile ID";
                                }
                              }  // container shape
    
                              container police {
                                description
                                  "Police parameters";
                                container cir {
                                  description
                                    "CIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container cbs {
                                  description
                                    "CBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                container police-config-parameters {
                                  description
                                    "Police config parameters";
                                  container average-rate {
                                    description
                                      "Average rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container average-rate
    
                                  container peak-rate {
                                    description
                                      "Peak rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container peak-rate
    
                                  container conform-burst {
                                    description
                                      "Conform burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container conform-burst
    
                                  container exceed-burst {
                                    description
                                      "Exceed burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container exceed-burst
                                }  // container police-config-parameters
    
                                leaf policer-type {
                                  type Tb-algorithm;
                                  description
                                    "Policer type";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Police profile ID";
                                }
                              }  // container police
    
                              container wfq {
                                description
                                  "WFQ parameters";
                                container parent-bandwidth {
                                  description
                                    "Parent bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container parent-bandwidth
    
                                container bandwidth {
                                  description
                                    "CFG Bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container bandwidth
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "WFQ profile";
                                }
    
                                leaf committed-weight {
                                  type uint32;
                                  description
                                    "Committed weight";
                                }
    
                                leaf excess-weight {
                                  type uint16;
                                  description
                                    "Excess weight";
                                }
    
                                leaf excess-ratio {
                                  type uint16;
                                  description
                                    "Parent Excess ratio";
                                }
    
                                leaf chunk-id {
                                  type uint32;
                                  description
                                    "Chunk ID";
                                }
    
                                leaf level {
                                  type uint8;
                                  description
                                    "Level";
                                }
                              }  // container wfq
    
                              container wred {
                                description
                                  "WRED parameters";
                                leaf type {
                                  type Wred;
                                  description
                                    "WRED type";
                                }
    
                                leaf curve-xr {
                                  type uint16;
                                  description
                                    "Number of curves";
                                }
    
                                leaf table-id {
                                  type uint8;
                                  description
                                    "Table ID";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Profile ID";
                                }
    
                                leaf scaling-profile-id {
                                  type uint32;
                                  description
                                    "Scaling profile ID";
                                }
    
                                list curve {
                                  max-elements
                                    64;
                                  description
                                    "Curve details";
                                  container min-threshold {
                                    description
                                      "Minimum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold
    
                                  container min-threshold-user-config {
                                    description
                                      "Minimum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold-user-config
    
                                  container max-threshold {
                                    description
                                      "Maximum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold
    
                                  container max-threshold-user-config {
                                    description
                                      "Maximum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold-user-config
    
                                  leaf match {
                                    type string;
                                    description
                                      "WRED precedence match if precedence start value
    equals to end value Format: <start-value> , else
    range Format: <start-value> <end-value>";
                                  }
                                }  // list curve
                              }  // container wred
    
                              container mark {
                                description
                                  "Mark parameters";
                                container child-mark {
                                  description
                                    "Child mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container child-mark
    
                                container police-conform {
                                  description
                                    "Child police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-conform
    
                                container police-exceed {
                                  description
                                    "Child police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-exceed
    
                                container police-violate {
                                  description
                                    "Child police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-violate
    
                                container parent-mark {
                                  description
                                    "Parent mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-mark
    
                                container parent-police-conform {
                                  description
                                    "Parent police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-conform
    
                                container parent-police-exceed {
                                  description
                                    "Parent police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-exceed
    
                                container parent-police-violate {
                                  description
                                    "Parent police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-violate
                              }  // container mark
    
                              leaf class-level {
                                type uint8;
                                description
                                  "Class level";
                              }
    
                              leaf class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Class name";
                              }
    
                              leaf policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Policy name";
                              }
    
                              leaf parent-policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent policy name";
                              }
    
                              leaf parent-class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent class name";
                              }
                            }  // list qos-show-ea-st-v1
                          }  // container policy
    
                          container policy-typhoon {
                            description
                              "Typhoon QoS policy details";
                            list qos-show-ea-st-v2 {
                              description
                                "qos show ea st v2";
                              container queue {
                                description
                                  "Queue parameters";
                                leaf queue-id {
                                  type uint32;
                                  description
                                    "Queue ID";
                                }
    
                                leaf queue-type {
                                  type Queue;
                                  description
                                    "Queue type";
                                }
    
                                leaf class-name {
                                  type string {
                                    length
                                      "0..65";
                                  }
                                  description
                                    "Class name";
                                }
                              }  // container queue
    
                              container queue-limit-parameters {
                                description
                                  "Queue limit parameters";
                                container queue-limit {
                                  description
                                    "Queue limit in kbytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container queue-limit
    
                                container config-queue-limit {
                                  description
                                    "Config queue limit";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container config-queue-limit
    
                                leaf absolute-index {
                                  type uint16;
                                  description
                                    "Absolute Index";
                                }
    
                                leaf template-id {
                                  type uint16;
                                  description
                                    "Template ID";
                                }
    
                                leaf curve-id {
                                  type uint16;
                                  description
                                    "Curve ID";
                                }
                              }  // container queue-limit-parameters
    
                              container shape {
                                description
                                  "Shape parameters";
                                container cir-shape {
                                  description
                                    "CIR shaper params";
                                  container cir {
                                    description
                                      "CIR in kbps";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container cir
    
                                  container config-bandwidth {
                                    description
                                      "Config bandwidth";
                                    container minimum-rate {
                                      description
                                        "Minimum bandwidth rate";
                                      leaf value {
                                        type uint32;
                                        description
                                          "Config value";
                                      }
    
                                      leaf unit {
                                        type Qos-unit;
                                        description
                                          "Config unit";
                                      }
                                    }  // container minimum-rate
                                  }  // container config-bandwidth
    
                                  container cbs {
                                    description
                                      "CBS in bytes";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container cbs
    
                                  leaf chunk-id {
                                    type uint32;
                                    description
                                      "Shape Chunk ID";
                                  }
    
                                  leaf profile-id {
                                    type uint16;
                                    description
                                      "Shape profile ID";
                                  }
    
                                  leaf scale-factor {
                                    type uint16;
                                    description
                                      "Scale Factor";
                                  }
                                }  // container cir-shape
    
                                container pir-shape {
                                  description
                                    "PIR shaper params";
                                  container pir {
                                    description
                                      "PIR in kbps";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container pir
    
                                  container pbs {
                                    description
                                      "PBS in bytes";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container pbs
    
                                  leaf chunk-id {
                                    type uint32;
                                    description
                                      "Shape Chunk ID";
                                  }
    
                                  leaf profile-id {
                                    type uint16;
                                    description
                                      "Shape profile ID";
                                  }
    
                                  leaf scale-factor {
                                    type uint16;
                                    description
                                      "Scale Factor";
                                  }
                                }  // container pir-shape
    
                                leaf cir-shape-type {
                                  type Shape-profiletype-v2;
                                  description
                                    "CIR Shaper type";
                                }
    
                                leaf pir-shape-type {
                                  type Shape-profiletype-v2;
                                  description
                                    "PIR Shaper type";
                                }
                              }  // container shape
    
                              container police {
                                description
                                  "Police parameters";
                                container cir {
                                  description
                                    "CIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container cbs {
                                  description
                                    "CBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                container police-config-parameters {
                                  description
                                    "Police config parameters";
                                  container average-rate {
                                    description
                                      "Average rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container average-rate
    
                                  container peak-rate {
                                    description
                                      "Peak rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container peak-rate
    
                                  container conform-burst {
                                    description
                                      "Conform burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container conform-burst
    
                                  container exceed-burst {
                                    description
                                      "Exceed burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container exceed-burst
                                }  // container police-config-parameters
    
                                leaf policer-type {
                                  type Tb-algorithm;
                                  description
                                    "Policer type";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Police profile ID";
                                }
                              }  // container police
    
                              container wfq {
                                description
                                  "WFQ parameters";
                                container parent-bandwidth {
                                  description
                                    "Parent bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container parent-bandwidth
    
                                container bandwidth {
                                  description
                                    "CFG Bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container bandwidth
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "WFQ profile";
                                }
    
                                leaf committed-weight {
                                  type uint32;
                                  description
                                    "Committed weight";
                                }
    
                                leaf excess-weight {
                                  type uint16;
                                  description
                                    "Excess weight";
                                }
    
                                leaf excess-ratio {
                                  type uint16;
                                  description
                                    "Parent Excess ratio";
                                }
    
                                leaf chunk-id {
                                  type uint32;
                                  description
                                    "Chunk ID";
                                }
    
                                leaf level {
                                  type uint8;
                                  description
                                    "Level";
                                }
                              }  // container wfq
    
                              container wred {
                                description
                                  "WRED parameters";
                                leaf type {
                                  type Wred;
                                  description
                                    "WRED type";
                                }
    
                                leaf curve-xr {
                                  type uint16;
                                  description
                                    "Number of curves";
                                }
    
                                list curve {
                                  max-elements
                                    64;
                                  description
                                    "Curve details";
                                  container min-threshold {
                                    description
                                      "Minimum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold
    
                                  container min-threshold-user-config {
                                    description
                                      "Minimum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold-user-config
    
                                  container max-threshold {
                                    description
                                      "Maximum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold
    
                                  container max-threshold-user-config {
                                    description
                                      "Maximum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold-user-config
    
                                  leaf absolute-index {
                                    type uint16;
                                    description
                                      "Absolute Index";
                                  }
    
                                  leaf template-id {
                                    type uint16;
                                    description
                                      "Template ID";
                                  }
    
                                  leaf curve-id {
                                    type uint16;
                                    description
                                      "Curve ID";
                                  }
    
                                  leaf match {
                                    type string;
                                    description
                                      "WRED match if precedence start value equals to
    end value Format: <start-value> , else range
    Format: <start-value> <end-value>";
                                  }
    
                                  leaf exp-match {
                                    type string;
                                    description
                                      "WRED exp match if EXP start value equals to end
    value Format: <start-value> , else range Format:
    <start-value> <end-value>";
                                  }
                                }  // list curve
                              }  // container wred
    
                              container mark {
                                description
                                  "Mark parameters";
                                container child-mark {
                                  description
                                    "Child mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container child-mark
    
                                container police-conform {
                                  description
                                    "Child police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-conform
    
                                container police-exceed {
                                  description
                                    "Child police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-exceed
    
                                container police-violate {
                                  description
                                    "Child police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-violate
    
                                container parent-mark {
                                  description
                                    "Parent mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-mark
    
                                container parent-police-conform {
                                  description
                                    "Parent police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-conform
    
                                container parent-police-exceed {
                                  description
                                    "Parent police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-exceed
    
                                container parent-police-violate {
                                  description
                                    "Parent police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-violate
                              }  // container mark
    
                              leaf class-level {
                                type uint8;
                                description
                                  "Class level";
                              }
    
                              leaf class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Class name";
                              }
    
                              leaf policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Policy name";
                              }
    
                              leaf parent-policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent policy name";
                              }
    
                              leaf parent-class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent class name";
                              }
                            }  // list qos-show-ea-st-v2
                          }  // container policy-typhoon
                        }  // container details
                      }  // list pin-interface
                    }  // container pin-interfaces
                  }  // container pwhe-output
    
                  container pwhe-input {
                    description
                      "QoS policy direction output";
                    container pin-interfaces {
                      description
                        "QoS list of member interfaces";
                      list pin-interface {
                        key "interface-name";
                        description
                          "QoS interface name";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Memeber interface";
                        }
    
                        container details {
                          description
                            "QoS policy direction egress";
                          container header {
                            description
                              "QoS policy header";
                            container interface-parameters {
                              description
                                "Interface config and programmed parameters";
                              container port-config-bandwidth {
                                description
                                  "Bandwidth due to port speed change";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container port-config-bandwidth
    
                              container ancp-config-bandwidth {
                                description
                                  "Bandwidth obtain from IM";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container ancp-config-bandwidth
    
                              container ancp-programmed-bandwidth {
                                description
                                  "ANCP bandwidth that was programmed";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container ancp-programmed-bandwidth
    
                              container port-shaper-rate {
                                description
                                  "Bandwidth that was programmed";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container port-shaper-rate
                            }  // container interface-parameters
    
                            container programmed-bandwidth {
                              description
                                "Bandwidth that was programmed";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container programmed-bandwidth
    
                            leaf classes {
                              type uint16;
                              description
                                "Number of classes";
                            }
    
                            leaf policy-name {
                              type string {
                                length "0..65";
                              }
                              description
                                "Policy name";
                            }
                          }  // container header
    
                          container policy {
                            description
                              "Trident QoS policy details";
                            list qos-show-ea-st-v1 {
                              description
                                "qos show ea st v1";
                              container queue {
                                description
                                  "Queue parameters";
                                leaf queue-id {
                                  type uint32;
                                  description
                                    "Queue ID";
                                }
    
                                leaf queue-type {
                                  type Queue;
                                  description
                                    "Queue type";
                                }
    
                                leaf class-name {
                                  type string {
                                    length
                                      "0..65";
                                  }
                                  description
                                    "Class name";
                                }
                              }  // container queue
    
                              container queue-limit-parameters {
                                description
                                  "Queue limit parameters";
                                container queue-limit {
                                  description
                                    "Queue limit in kbytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container queue-limit
    
                                container config-queue-limit {
                                  description
                                    "Config queue limit";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container config-queue-limit
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Profile ID";
                                }
    
                                leaf scaling-profile-id {
                                  type uint32;
                                  description
                                    "Scaling profile ID";
                                }
                              }  // container queue-limit-parameters
    
                              container shape {
                                description
                                  "Shape parameters";
                                container cir {
                                  description
                                    "CIR in kbps";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container config-bandwidth {
                                  description
                                    "Config bandwidth";
                                  container minimum-rate {
                                    description
                                      "Minimum bandwidth rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container minimum-rate
                                }  // container config-bandwidth
    
                                container cbs {
                                  description
                                    "CBS in bytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR in kbps";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS in bytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                leaf profile-id {
                                  type uint16;
                                  description
                                    "Shape profile ID";
                                }
                              }  // container shape
    
                              container police {
                                description
                                  "Police parameters";
                                container cir {
                                  description
                                    "CIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container cbs {
                                  description
                                    "CBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                container police-config-parameters {
                                  description
                                    "Police config parameters";
                                  container average-rate {
                                    description
                                      "Average rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container average-rate
    
                                  container peak-rate {
                                    description
                                      "Peak rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container peak-rate
    
                                  container conform-burst {
                                    description
                                      "Conform burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container conform-burst
    
                                  container exceed-burst {
                                    description
                                      "Exceed burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container exceed-burst
                                }  // container police-config-parameters
    
                                leaf policer-type {
                                  type Tb-algorithm;
                                  description
                                    "Policer type";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Police profile ID";
                                }
                              }  // container police
    
                              container wfq {
                                description
                                  "WFQ parameters";
                                container parent-bandwidth {
                                  description
                                    "Parent bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container parent-bandwidth
    
                                container bandwidth {
                                  description
                                    "CFG Bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container bandwidth
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "WFQ profile";
                                }
    
                                leaf committed-weight {
                                  type uint32;
                                  description
                                    "Committed weight";
                                }
    
                                leaf excess-weight {
                                  type uint16;
                                  description
                                    "Excess weight";
                                }
    
                                leaf excess-ratio {
                                  type uint16;
                                  description
                                    "Parent Excess ratio";
                                }
    
                                leaf chunk-id {
                                  type uint32;
                                  description
                                    "Chunk ID";
                                }
    
                                leaf level {
                                  type uint8;
                                  description
                                    "Level";
                                }
                              }  // container wfq
    
                              container wred {
                                description
                                  "WRED parameters";
                                leaf type {
                                  type Wred;
                                  description
                                    "WRED type";
                                }
    
                                leaf curve-xr {
                                  type uint16;
                                  description
                                    "Number of curves";
                                }
    
                                leaf table-id {
                                  type uint8;
                                  description
                                    "Table ID";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Profile ID";
                                }
    
                                leaf scaling-profile-id {
                                  type uint32;
                                  description
                                    "Scaling profile ID";
                                }
    
                                list curve {
                                  max-elements
                                    64;
                                  description
                                    "Curve details";
                                  container min-threshold {
                                    description
                                      "Minimum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold
    
                                  container min-threshold-user-config {
                                    description
                                      "Minimum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold-user-config
    
                                  container max-threshold {
                                    description
                                      "Maximum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold
    
                                  container max-threshold-user-config {
                                    description
                                      "Maximum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold-user-config
    
                                  leaf match {
                                    type string;
                                    description
                                      "WRED precedence match if precedence start value
    equals to end value Format: <start-value> , else
    range Format: <start-value> <end-value>";
                                  }
                                }  // list curve
                              }  // container wred
    
                              container mark {
                                description
                                  "Mark parameters";
                                container child-mark {
                                  description
                                    "Child mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container child-mark
    
                                container police-conform {
                                  description
                                    "Child police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-conform
    
                                container police-exceed {
                                  description
                                    "Child police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-exceed
    
                                container police-violate {
                                  description
                                    "Child police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-violate
    
                                container parent-mark {
                                  description
                                    "Parent mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-mark
    
                                container parent-police-conform {
                                  description
                                    "Parent police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-conform
    
                                container parent-police-exceed {
                                  description
                                    "Parent police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-exceed
    
                                container parent-police-violate {
                                  description
                                    "Parent police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-violate
                              }  // container mark
    
                              leaf class-level {
                                type uint8;
                                description
                                  "Class level";
                              }
    
                              leaf class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Class name";
                              }
    
                              leaf policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Policy name";
                              }
    
                              leaf parent-policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent policy name";
                              }
    
                              leaf parent-class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent class name";
                              }
                            }  // list qos-show-ea-st-v1
                          }  // container policy
    
                          container policy-typhoon {
                            description
                              "Typhoon QoS policy details";
                            list qos-show-ea-st-v2 {
                              description
                                "qos show ea st v2";
                              container queue {
                                description
                                  "Queue parameters";
                                leaf queue-id {
                                  type uint32;
                                  description
                                    "Queue ID";
                                }
    
                                leaf queue-type {
                                  type Queue;
                                  description
                                    "Queue type";
                                }
    
                                leaf class-name {
                                  type string {
                                    length
                                      "0..65";
                                  }
                                  description
                                    "Class name";
                                }
                              }  // container queue
    
                              container queue-limit-parameters {
                                description
                                  "Queue limit parameters";
                                container queue-limit {
                                  description
                                    "Queue limit in kbytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container queue-limit
    
                                container config-queue-limit {
                                  description
                                    "Config queue limit";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container config-queue-limit
    
                                leaf absolute-index {
                                  type uint16;
                                  description
                                    "Absolute Index";
                                }
    
                                leaf template-id {
                                  type uint16;
                                  description
                                    "Template ID";
                                }
    
                                leaf curve-id {
                                  type uint16;
                                  description
                                    "Curve ID";
                                }
                              }  // container queue-limit-parameters
    
                              container shape {
                                description
                                  "Shape parameters";
                                container cir-shape {
                                  description
                                    "CIR shaper params";
                                  container cir {
                                    description
                                      "CIR in kbps";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container cir
    
                                  container config-bandwidth {
                                    description
                                      "Config bandwidth";
                                    container minimum-rate {
                                      description
                                        "Minimum bandwidth rate";
                                      leaf value {
                                        type uint32;
                                        description
                                          "Config value";
                                      }
    
                                      leaf unit {
                                        type Qos-unit;
                                        description
                                          "Config unit";
                                      }
                                    }  // container minimum-rate
                                  }  // container config-bandwidth
    
                                  container cbs {
                                    description
                                      "CBS in bytes";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container cbs
    
                                  leaf chunk-id {
                                    type uint32;
                                    description
                                      "Shape Chunk ID";
                                  }
    
                                  leaf profile-id {
                                    type uint16;
                                    description
                                      "Shape profile ID";
                                  }
    
                                  leaf scale-factor {
                                    type uint16;
                                    description
                                      "Scale Factor";
                                  }
                                }  // container cir-shape
    
                                container pir-shape {
                                  description
                                    "PIR shaper params";
                                  container pir {
                                    description
                                      "PIR in kbps";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container pir
    
                                  container pbs {
                                    description
                                      "PBS in bytes";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container pbs
    
                                  leaf chunk-id {
                                    type uint32;
                                    description
                                      "Shape Chunk ID";
                                  }
    
                                  leaf profile-id {
                                    type uint16;
                                    description
                                      "Shape profile ID";
                                  }
    
                                  leaf scale-factor {
                                    type uint16;
                                    description
                                      "Scale Factor";
                                  }
                                }  // container pir-shape
    
                                leaf cir-shape-type {
                                  type Shape-profiletype-v2;
                                  description
                                    "CIR Shaper type";
                                }
    
                                leaf pir-shape-type {
                                  type Shape-profiletype-v2;
                                  description
                                    "PIR Shaper type";
                                }
                              }  // container shape
    
                              container police {
                                description
                                  "Police parameters";
                                container cir {
                                  description
                                    "CIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container cbs {
                                  description
                                    "CBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                container police-config-parameters {
                                  description
                                    "Police config parameters";
                                  container average-rate {
                                    description
                                      "Average rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container average-rate
    
                                  container peak-rate {
                                    description
                                      "Peak rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container peak-rate
    
                                  container conform-burst {
                                    description
                                      "Conform burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container conform-burst
    
                                  container exceed-burst {
                                    description
                                      "Exceed burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container exceed-burst
                                }  // container police-config-parameters
    
                                leaf policer-type {
                                  type Tb-algorithm;
                                  description
                                    "Policer type";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Police profile ID";
                                }
                              }  // container police
    
                              container wfq {
                                description
                                  "WFQ parameters";
                                container parent-bandwidth {
                                  description
                                    "Parent bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container parent-bandwidth
    
                                container bandwidth {
                                  description
                                    "CFG Bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container bandwidth
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "WFQ profile";
                                }
    
                                leaf committed-weight {
                                  type uint32;
                                  description
                                    "Committed weight";
                                }
    
                                leaf excess-weight {
                                  type uint16;
                                  description
                                    "Excess weight";
                                }
    
                                leaf excess-ratio {
                                  type uint16;
                                  description
                                    "Parent Excess ratio";
                                }
    
                                leaf chunk-id {
                                  type uint32;
                                  description
                                    "Chunk ID";
                                }
    
                                leaf level {
                                  type uint8;
                                  description
                                    "Level";
                                }
                              }  // container wfq
    
                              container wred {
                                description
                                  "WRED parameters";
                                leaf type {
                                  type Wred;
                                  description
                                    "WRED type";
                                }
    
                                leaf curve-xr {
                                  type uint16;
                                  description
                                    "Number of curves";
                                }
    
                                list curve {
                                  max-elements
                                    64;
                                  description
                                    "Curve details";
                                  container min-threshold {
                                    description
                                      "Minimum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold
    
                                  container min-threshold-user-config {
                                    description
                                      "Minimum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold-user-config
    
                                  container max-threshold {
                                    description
                                      "Maximum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold
    
                                  container max-threshold-user-config {
                                    description
                                      "Maximum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold-user-config
    
                                  leaf absolute-index {
                                    type uint16;
                                    description
                                      "Absolute Index";
                                  }
    
                                  leaf template-id {
                                    type uint16;
                                    description
                                      "Template ID";
                                  }
    
                                  leaf curve-id {
                                    type uint16;
                                    description
                                      "Curve ID";
                                  }
    
                                  leaf match {
                                    type string;
                                    description
                                      "WRED match if precedence start value equals to
    end value Format: <start-value> , else range
    Format: <start-value> <end-value>";
                                  }
    
                                  leaf exp-match {
                                    type string;
                                    description
                                      "WRED exp match if EXP start value equals to end
    value Format: <start-value> , else range Format:
    <start-value> <end-value>";
                                  }
                                }  // list curve
                              }  // container wred
    
                              container mark {
                                description
                                  "Mark parameters";
                                container child-mark {
                                  description
                                    "Child mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container child-mark
    
                                container police-conform {
                                  description
                                    "Child police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-conform
    
                                container police-exceed {
                                  description
                                    "Child police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-exceed
    
                                container police-violate {
                                  description
                                    "Child police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-violate
    
                                container parent-mark {
                                  description
                                    "Parent mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-mark
    
                                container parent-police-conform {
                                  description
                                    "Parent police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-conform
    
                                container parent-police-exceed {
                                  description
                                    "Parent police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-exceed
    
                                container parent-police-violate {
                                  description
                                    "Parent police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-violate
                              }  // container mark
    
                              leaf class-level {
                                type uint8;
                                description
                                  "Class level";
                              }
    
                              leaf class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Class name";
                              }
    
                              leaf policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Policy name";
                              }
    
                              leaf parent-policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent policy name";
                              }
    
                              leaf parent-class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent class name";
                              }
                            }  // list qos-show-ea-st-v2
                          }  // container policy-typhoon
                        }  // container details
                      }  // list pin-interface
                    }  // container pin-interfaces
                  }  // container pwhe-input
    
                  leaf interface-name {
                    type xr:Interface-name;
                    description
                      "Pwhe interface name";
                  }
                }  // list pwhe-interface
              }  // container pwhe-interfaces
    
              container interfaces {
                description
                  "QoS list of interfaces";
                list interface {
                  key "interface-name";
                  description
                    "QoS interface name";
                  container input {
                    description
                      "QoS policy direction ingress";
                    container details {
                      description
                        "QoS policy direction egress";
                      container header {
                        description
                          "QoS policy header";
                        container interface-parameters {
                          description
                            "Interface config and programmed parameters";
                          container port-config-bandwidth {
                            description
                              "Bandwidth due to port speed change";
                            leaf value {
                              type uint32;
                              description
                                "Config value";
                            }
    
                            leaf unit {
                              type Qos-unit;
                              description
                                "Config unit";
                            }
                          }  // container port-config-bandwidth
    
                          container ancp-config-bandwidth {
                            description
                              "Bandwidth obtain from IM";
                            leaf value {
                              type uint32;
                              description
                                "Config value";
                            }
    
                            leaf unit {
                              type Qos-unit;
                              description
                                "Config unit";
                            }
                          }  // container ancp-config-bandwidth
    
                          container ancp-programmed-bandwidth {
                            description
                              "ANCP bandwidth that was programmed";
                            leaf value {
                              type uint32;
                              description
                                "Config value";
                            }
    
                            leaf unit {
                              type Qos-unit;
                              description
                                "Config unit";
                            }
                          }  // container ancp-programmed-bandwidth
    
                          container port-shaper-rate {
                            description
                              "Bandwidth that was programmed";
                            leaf value {
                              type uint32;
                              description
                                "Config value";
                            }
    
                            leaf unit {
                              type Qos-unit;
                              description
                                "Config unit";
                            }
                          }  // container port-shaper-rate
                        }  // container interface-parameters
    
                        container programmed-bandwidth {
                          description
                            "Bandwidth that was programmed";
                          leaf value {
                            type uint32;
                            description
                              "Config value";
                          }
    
                          leaf unit {
                            type Qos-unit;
                            description
                              "Config unit";
                          }
                        }  // container programmed-bandwidth
    
                        leaf classes {
                          type uint16;
                          description
                            "Number of classes";
                        }
    
                        leaf policy-name {
                          type string {
                            length "0..65";
                          }
                          description
                            "Policy name";
                        }
                      }  // container header
    
                      container policy {
                        description
                          "Trident QoS policy details";
                        list qos-show-ea-st-v1 {
                          description
                            "qos show ea st v1";
                          container queue {
                            description
                              "Queue parameters";
                            leaf queue-id {
                              type uint32;
                              description
                                "Queue ID";
                            }
    
                            leaf queue-type {
                              type Queue;
                              description
                                "Queue type";
                            }
    
                            leaf class-name {
                              type string {
                                length "0..65";
                              }
                              description
                                "Class name";
                            }
                          }  // container queue
    
                          container queue-limit-parameters {
                            description
                              "Queue limit parameters";
                            container queue-limit {
                              description
                                "Queue limit in kbytes";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container queue-limit
    
                            container config-queue-limit {
                              description
                                "Config queue limit";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container config-queue-limit
    
                            leaf profile-id {
                              type uint32;
                              description
                                "Profile ID";
                            }
    
                            leaf scaling-profile-id {
                              type uint32;
                              description
                                "Scaling profile ID";
                            }
                          }  // container queue-limit-parameters
    
                          container shape {
                            description
                              "Shape parameters";
                            container cir {
                              description
                                "CIR in kbps";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cir
    
                            container config-bandwidth {
                              description
                                "Config bandwidth";
                              container minimum-rate {
                                description
                                  "Minimum bandwidth rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container minimum-rate
                            }  // container config-bandwidth
    
                            container cbs {
                              description
                                "CBS in bytes";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cbs
    
                            container pir {
                              description
                                "PIR in kbps";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pir
    
                            container pbs {
                              description
                                "PBS in bytes";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pbs
    
                            leaf profile-id {
                              type uint16;
                              description
                                "Shape profile ID";
                            }
                          }  // container shape
    
                          container police {
                            description
                              "Police parameters";
                            container cir {
                              description "CIR";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cir
    
                            container cbs {
                              description "CBS";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cbs
    
                            container pir {
                              description "PIR";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pir
    
                            container pbs {
                              description "PBS";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pbs
    
                            container police-config-parameters {
                              description
                                "Police config parameters";
                              container average-rate {
                                description
                                  "Average rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container average-rate
    
                              container peak-rate {
                                description
                                  "Peak rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container peak-rate
    
                              container conform-burst {
                                description
                                  "Conform burst";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container conform-burst
    
                              container exceed-burst {
                                description
                                  "Exceed burst";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container exceed-burst
                            }  // container police-config-parameters
    
                            leaf policer-type {
                              type Tb-algorithm;
                              description
                                "Policer type";
                            }
    
                            leaf profile-id {
                              type uint32;
                              description
                                "Police profile ID";
                            }
                          }  // container police
    
                          container wfq {
                            description
                              "WFQ parameters";
                            container parent-bandwidth {
                              description
                                "Parent bandwidth";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container parent-bandwidth
    
                            container bandwidth {
                              description
                                "CFG Bandwidth";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container bandwidth
    
                            leaf profile-id {
                              type uint32;
                              description
                                "WFQ profile";
                            }
    
                            leaf committed-weight {
                              type uint32;
                              description
                                "Committed weight";
                            }
    
                            leaf excess-weight {
                              type uint16;
                              description
                                "Excess weight";
                            }
    
                            leaf excess-ratio {
                              type uint16;
                              description
                                "Parent Excess ratio";
                            }
    
                            leaf chunk-id {
                              type uint32;
                              description
                                "Chunk ID";
                            }
    
                            leaf level {
                              type uint8;
                              description
                                "Level";
                            }
                          }  // container wfq
    
                          container wred {
                            description
                              "WRED parameters";
                            leaf type {
                              type Wred;
                              description
                                "WRED type";
                            }
    
                            leaf curve-xr {
                              type uint16;
                              description
                                "Number of curves";
                            }
    
                            leaf table-id {
                              type uint8;
                              description
                                "Table ID";
                            }
    
                            leaf profile-id {
                              type uint32;
                              description
                                "Profile ID";
                            }
    
                            leaf scaling-profile-id {
                              type uint32;
                              description
                                "Scaling profile ID";
                            }
    
                            list curve {
                              max-elements 64;
                              description
                                "Curve details";
                              container min-threshold {
                                description
                                  "Minimum threshold";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container min-threshold
    
                              container min-threshold-user-config {
                                description
                                  "Minimum threshold WRED context";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container min-threshold-user-config
    
                              container max-threshold {
                                description
                                  "Maximum threshold";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container max-threshold
    
                              container max-threshold-user-config {
                                description
                                  "Maximum threshold WRED context";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container max-threshold-user-config
    
                              leaf match {
                                type string;
                                description
                                  "WRED precedence match if precedence start value
    equals to end value Format: <start-value> , else
    range Format: <start-value> <end-value>";
                              }
                            }  // list curve
                          }  // container wred
    
                          container mark {
                            description
                              "Mark parameters";
                            container child-mark {
                              description
                                "Child mark only";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container child-mark
    
                            container police-conform {
                              description
                                "Child police conform mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-conform
    
                            container police-exceed {
                              description
                                "Child police exceed mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-exceed
    
                            container police-violate {
                              description
                                "Child police violate mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-violate
    
                            container parent-mark {
                              description
                                "Parent mark only";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-mark
    
                            container parent-police-conform {
                              description
                                "Parent police conform mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-conform
    
                            container parent-police-exceed {
                              description
                                "Parent police exceed mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-exceed
    
                            container parent-police-violate {
                              description
                                "Parent police violate mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-violate
                          }  // container mark
    
                          leaf class-level {
                            type uint8;
                            description
                              "Class level";
                          }
    
                          leaf class-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Class name";
                          }
    
                          leaf policy-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Policy name";
                          }
    
                          leaf parent-policy-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Parent policy name";
                          }
    
                          leaf parent-class-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Parent class name";
                          }
                        }  // list qos-show-ea-st-v1
                      }  // container policy
    
                      container policy-typhoon {
                        description
                          "Typhoon QoS policy details";
                        list qos-show-ea-st-v2 {
                          description
                            "qos show ea st v2";
                          container queue {
                            description
                              "Queue parameters";
                            leaf queue-id {
                              type uint32;
                              description
                                "Queue ID";
                            }
    
                            leaf queue-type {
                              type Queue;
                              description
                                "Queue type";
                            }
    
                            leaf class-name {
                              type string {
                                length "0..65";
                              }
                              description
                                "Class name";
                            }
                          }  // container queue
    
                          container queue-limit-parameters {
                            description
                              "Queue limit parameters";
                            container queue-limit {
                              description
                                "Queue limit in kbytes";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container queue-limit
    
                            container config-queue-limit {
                              description
                                "Config queue limit";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container config-queue-limit
    
                            leaf absolute-index {
                              type uint16;
                              description
                                "Absolute Index";
                            }
    
                            leaf template-id {
                              type uint16;
                              description
                                "Template ID";
                            }
    
                            leaf curve-id {
                              type uint16;
                              description
                                "Curve ID";
                            }
                          }  // container queue-limit-parameters
    
                          container shape {
                            description
                              "Shape parameters";
                            container cir-shape {
                              description
                                "CIR shaper params";
                              container cir {
                                description
                                  "CIR in kbps";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container cir
    
                              container config-bandwidth {
                                description
                                  "Config bandwidth";
                                container minimum-rate {
                                  description
                                    "Minimum bandwidth rate";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container minimum-rate
                              }  // container config-bandwidth
    
                              container cbs {
                                description
                                  "CBS in bytes";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container cbs
    
                              leaf chunk-id {
                                type uint32;
                                description
                                  "Shape Chunk ID";
                              }
    
                              leaf profile-id {
                                type uint16;
                                description
                                  "Shape profile ID";
                              }
    
                              leaf scale-factor {
                                type uint16;
                                description
                                  "Scale Factor";
                              }
                            }  // container cir-shape
    
                            container pir-shape {
                              description
                                "PIR shaper params";
                              container pir {
                                description
                                  "PIR in kbps";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container pir
    
                              container pbs {
                                description
                                  "PBS in bytes";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container pbs
    
                              leaf chunk-id {
                                type uint32;
                                description
                                  "Shape Chunk ID";
                              }
    
                              leaf profile-id {
                                type uint16;
                                description
                                  "Shape profile ID";
                              }
    
                              leaf scale-factor {
                                type uint16;
                                description
                                  "Scale Factor";
                              }
                            }  // container pir-shape
    
                            leaf cir-shape-type {
                              type Shape-profiletype-v2;
                              description
                                "CIR Shaper type";
                            }
    
                            leaf pir-shape-type {
                              type Shape-profiletype-v2;
                              description
                                "PIR Shaper type";
                            }
                          }  // container shape
    
                          container police {
                            description
                              "Police parameters";
                            container cir {
                              description "CIR";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cir
    
                            container cbs {
                              description "CBS";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cbs
    
                            container pir {
                              description "PIR";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pir
    
                            container pbs {
                              description "PBS";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pbs
    
                            container police-config-parameters {
                              description
                                "Police config parameters";
                              container average-rate {
                                description
                                  "Average rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container average-rate
    
                              container peak-rate {
                                description
                                  "Peak rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container peak-rate
    
                              container conform-burst {
                                description
                                  "Conform burst";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container conform-burst
    
                              container exceed-burst {
                                description
                                  "Exceed burst";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container exceed-burst
                            }  // container police-config-parameters
    
                            leaf policer-type {
                              type Tb-algorithm;
                              description
                                "Policer type";
                            }
    
                            leaf profile-id {
                              type uint32;
                              description
                                "Police profile ID";
                            }
                          }  // container police
    
                          container wfq {
                            description
                              "WFQ parameters";
                            container parent-bandwidth {
                              description
                                "Parent bandwidth";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container parent-bandwidth
    
                            container bandwidth {
                              description
                                "CFG Bandwidth";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container bandwidth
    
                            leaf profile-id {
                              type uint32;
                              description
                                "WFQ profile";
                            }
    
                            leaf committed-weight {
                              type uint32;
                              description
                                "Committed weight";
                            }
    
                            leaf excess-weight {
                              type uint16;
                              description
                                "Excess weight";
                            }
    
                            leaf excess-ratio {
                              type uint16;
                              description
                                "Parent Excess ratio";
                            }
    
                            leaf chunk-id {
                              type uint32;
                              description
                                "Chunk ID";
                            }
    
                            leaf level {
                              type uint8;
                              description
                                "Level";
                            }
                          }  // container wfq
    
                          container wred {
                            description
                              "WRED parameters";
                            leaf type {
                              type Wred;
                              description
                                "WRED type";
                            }
    
                            leaf curve-xr {
                              type uint16;
                              description
                                "Number of curves";
                            }
    
                            list curve {
                              max-elements 64;
                              description
                                "Curve details";
                              container min-threshold {
                                description
                                  "Minimum threshold";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container min-threshold
    
                              container min-threshold-user-config {
                                description
                                  "Minimum threshold WRED context";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container min-threshold-user-config
    
                              container max-threshold {
                                description
                                  "Maximum threshold";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container max-threshold
    
                              container max-threshold-user-config {
                                description
                                  "Maximum threshold WRED context";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container max-threshold-user-config
    
                              leaf absolute-index {
                                type uint16;
                                description
                                  "Absolute Index";
                              }
    
                              leaf template-id {
                                type uint16;
                                description
                                  "Template ID";
                              }
    
                              leaf curve-id {
                                type uint16;
                                description
                                  "Curve ID";
                              }
    
                              leaf match {
                                type string;
                                description
                                  "WRED match if precedence start value equals to
    end value Format: <start-value> , else range
    Format: <start-value> <end-value>";
                              }
    
                              leaf exp-match {
                                type string;
                                description
                                  "WRED exp match if EXP start value equals to end
    value Format: <start-value> , else range Format:
    <start-value> <end-value>";
                              }
                            }  // list curve
                          }  // container wred
    
                          container mark {
                            description
                              "Mark parameters";
                            container child-mark {
                              description
                                "Child mark only";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container child-mark
    
                            container police-conform {
                              description
                                "Child police conform mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-conform
    
                            container police-exceed {
                              description
                                "Child police exceed mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-exceed
    
                            container police-violate {
                              description
                                "Child police violate mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-violate
    
                            container parent-mark {
                              description
                                "Parent mark only";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-mark
    
                            container parent-police-conform {
                              description
                                "Parent police conform mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-conform
    
                            container parent-police-exceed {
                              description
                                "Parent police exceed mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-exceed
    
                            container parent-police-violate {
                              description
                                "Parent police violate mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-violate
                          }  // container mark
    
                          leaf class-level {
                            type uint8;
                            description
                              "Class level";
                          }
    
                          leaf class-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Class name";
                          }
    
                          leaf policy-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Policy name";
                          }
    
                          leaf parent-policy-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Parent policy name";
                          }
    
                          leaf parent-class-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Parent class name";
                          }
                        }  // list qos-show-ea-st-v2
                      }  // container policy-typhoon
                    }  // container details
                  }  // container input
    
                  container output {
                    description
                      "QoS policy direction egress";
                    container details {
                      description
                        "QoS policy direction egress";
                      container header {
                        description
                          "QoS policy header";
                        container interface-parameters {
                          description
                            "Interface config and programmed parameters";
                          container port-config-bandwidth {
                            description
                              "Bandwidth due to port speed change";
                            leaf value {
                              type uint32;
                              description
                                "Config value";
                            }
    
                            leaf unit {
                              type Qos-unit;
                              description
                                "Config unit";
                            }
                          }  // container port-config-bandwidth
    
                          container ancp-config-bandwidth {
                            description
                              "Bandwidth obtain from IM";
                            leaf value {
                              type uint32;
                              description
                                "Config value";
                            }
    
                            leaf unit {
                              type Qos-unit;
                              description
                                "Config unit";
                            }
                          }  // container ancp-config-bandwidth
    
                          container ancp-programmed-bandwidth {
                            description
                              "ANCP bandwidth that was programmed";
                            leaf value {
                              type uint32;
                              description
                                "Config value";
                            }
    
                            leaf unit {
                              type Qos-unit;
                              description
                                "Config unit";
                            }
                          }  // container ancp-programmed-bandwidth
    
                          container port-shaper-rate {
                            description
                              "Bandwidth that was programmed";
                            leaf value {
                              type uint32;
                              description
                                "Config value";
                            }
    
                            leaf unit {
                              type Qos-unit;
                              description
                                "Config unit";
                            }
                          }  // container port-shaper-rate
                        }  // container interface-parameters
    
                        container programmed-bandwidth {
                          description
                            "Bandwidth that was programmed";
                          leaf value {
                            type uint32;
                            description
                              "Config value";
                          }
    
                          leaf unit {
                            type Qos-unit;
                            description
                              "Config unit";
                          }
                        }  // container programmed-bandwidth
    
                        leaf classes {
                          type uint16;
                          description
                            "Number of classes";
                        }
    
                        leaf policy-name {
                          type string {
                            length "0..65";
                          }
                          description
                            "Policy name";
                        }
                      }  // container header
    
                      container policy {
                        description
                          "Trident QoS policy details";
                        list qos-show-ea-st-v1 {
                          description
                            "qos show ea st v1";
                          container queue {
                            description
                              "Queue parameters";
                            leaf queue-id {
                              type uint32;
                              description
                                "Queue ID";
                            }
    
                            leaf queue-type {
                              type Queue;
                              description
                                "Queue type";
                            }
    
                            leaf class-name {
                              type string {
                                length "0..65";
                              }
                              description
                                "Class name";
                            }
                          }  // container queue
    
                          container queue-limit-parameters {
                            description
                              "Queue limit parameters";
                            container queue-limit {
                              description
                                "Queue limit in kbytes";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container queue-limit
    
                            container config-queue-limit {
                              description
                                "Config queue limit";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container config-queue-limit
    
                            leaf profile-id {
                              type uint32;
                              description
                                "Profile ID";
                            }
    
                            leaf scaling-profile-id {
                              type uint32;
                              description
                                "Scaling profile ID";
                            }
                          }  // container queue-limit-parameters
    
                          container shape {
                            description
                              "Shape parameters";
                            container cir {
                              description
                                "CIR in kbps";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cir
    
                            container config-bandwidth {
                              description
                                "Config bandwidth";
                              container minimum-rate {
                                description
                                  "Minimum bandwidth rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container minimum-rate
                            }  // container config-bandwidth
    
                            container cbs {
                              description
                                "CBS in bytes";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cbs
    
                            container pir {
                              description
                                "PIR in kbps";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pir
    
                            container pbs {
                              description
                                "PBS in bytes";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pbs
    
                            leaf profile-id {
                              type uint16;
                              description
                                "Shape profile ID";
                            }
                          }  // container shape
    
                          container police {
                            description
                              "Police parameters";
                            container cir {
                              description "CIR";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cir
    
                            container cbs {
                              description "CBS";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cbs
    
                            container pir {
                              description "PIR";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pir
    
                            container pbs {
                              description "PBS";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pbs
    
                            container police-config-parameters {
                              description
                                "Police config parameters";
                              container average-rate {
                                description
                                  "Average rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container average-rate
    
                              container peak-rate {
                                description
                                  "Peak rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container peak-rate
    
                              container conform-burst {
                                description
                                  "Conform burst";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container conform-burst
    
                              container exceed-burst {
                                description
                                  "Exceed burst";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container exceed-burst
                            }  // container police-config-parameters
    
                            leaf policer-type {
                              type Tb-algorithm;
                              description
                                "Policer type";
                            }
    
                            leaf profile-id {
                              type uint32;
                              description
                                "Police profile ID";
                            }
                          }  // container police
    
                          container wfq {
                            description
                              "WFQ parameters";
                            container parent-bandwidth {
                              description
                                "Parent bandwidth";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container parent-bandwidth
    
                            container bandwidth {
                              description
                                "CFG Bandwidth";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container bandwidth
    
                            leaf profile-id {
                              type uint32;
                              description
                                "WFQ profile";
                            }
    
                            leaf committed-weight {
                              type uint32;
                              description
                                "Committed weight";
                            }
    
                            leaf excess-weight {
                              type uint16;
                              description
                                "Excess weight";
                            }
    
                            leaf excess-ratio {
                              type uint16;
                              description
                                "Parent Excess ratio";
                            }
    
                            leaf chunk-id {
                              type uint32;
                              description
                                "Chunk ID";
                            }
    
                            leaf level {
                              type uint8;
                              description
                                "Level";
                            }
                          }  // container wfq
    
                          container wred {
                            description
                              "WRED parameters";
                            leaf type {
                              type Wred;
                              description
                                "WRED type";
                            }
    
                            leaf curve-xr {
                              type uint16;
                              description
                                "Number of curves";
                            }
    
                            leaf table-id {
                              type uint8;
                              description
                                "Table ID";
                            }
    
                            leaf profile-id {
                              type uint32;
                              description
                                "Profile ID";
                            }
    
                            leaf scaling-profile-id {
                              type uint32;
                              description
                                "Scaling profile ID";
                            }
    
                            list curve {
                              max-elements 64;
                              description
                                "Curve details";
                              container min-threshold {
                                description
                                  "Minimum threshold";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container min-threshold
    
                              container min-threshold-user-config {
                                description
                                  "Minimum threshold WRED context";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container min-threshold-user-config
    
                              container max-threshold {
                                description
                                  "Maximum threshold";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container max-threshold
    
                              container max-threshold-user-config {
                                description
                                  "Maximum threshold WRED context";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container max-threshold-user-config
    
                              leaf match {
                                type string;
                                description
                                  "WRED precedence match if precedence start value
    equals to end value Format: <start-value> , else
    range Format: <start-value> <end-value>";
                              }
                            }  // list curve
                          }  // container wred
    
                          container mark {
                            description
                              "Mark parameters";
                            container child-mark {
                              description
                                "Child mark only";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container child-mark
    
                            container police-conform {
                              description
                                "Child police conform mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-conform
    
                            container police-exceed {
                              description
                                "Child police exceed mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-exceed
    
                            container police-violate {
                              description
                                "Child police violate mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-violate
    
                            container parent-mark {
                              description
                                "Parent mark only";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-mark
    
                            container parent-police-conform {
                              description
                                "Parent police conform mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-conform
    
                            container parent-police-exceed {
                              description
                                "Parent police exceed mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-exceed
    
                            container parent-police-violate {
                              description
                                "Parent police violate mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-violate
                          }  // container mark
    
                          leaf class-level {
                            type uint8;
                            description
                              "Class level";
                          }
    
                          leaf class-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Class name";
                          }
    
                          leaf policy-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Policy name";
                          }
    
                          leaf parent-policy-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Parent policy name";
                          }
    
                          leaf parent-class-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Parent class name";
                          }
                        }  // list qos-show-ea-st-v1
                      }  // container policy
    
                      container policy-typhoon {
                        description
                          "Typhoon QoS policy details";
                        list qos-show-ea-st-v2 {
                          description
                            "qos show ea st v2";
                          container queue {
                            description
                              "Queue parameters";
                            leaf queue-id {
                              type uint32;
                              description
                                "Queue ID";
                            }
    
                            leaf queue-type {
                              type Queue;
                              description
                                "Queue type";
                            }
    
                            leaf class-name {
                              type string {
                                length "0..65";
                              }
                              description
                                "Class name";
                            }
                          }  // container queue
    
                          container queue-limit-parameters {
                            description
                              "Queue limit parameters";
                            container queue-limit {
                              description
                                "Queue limit in kbytes";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container queue-limit
    
                            container config-queue-limit {
                              description
                                "Config queue limit";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container config-queue-limit
    
                            leaf absolute-index {
                              type uint16;
                              description
                                "Absolute Index";
                            }
    
                            leaf template-id {
                              type uint16;
                              description
                                "Template ID";
                            }
    
                            leaf curve-id {
                              type uint16;
                              description
                                "Curve ID";
                            }
                          }  // container queue-limit-parameters
    
                          container shape {
                            description
                              "Shape parameters";
                            container cir-shape {
                              description
                                "CIR shaper params";
                              container cir {
                                description
                                  "CIR in kbps";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container cir
    
                              container config-bandwidth {
                                description
                                  "Config bandwidth";
                                container minimum-rate {
                                  description
                                    "Minimum bandwidth rate";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container minimum-rate
                              }  // container config-bandwidth
    
                              container cbs {
                                description
                                  "CBS in bytes";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container cbs
    
                              leaf chunk-id {
                                type uint32;
                                description
                                  "Shape Chunk ID";
                              }
    
                              leaf profile-id {
                                type uint16;
                                description
                                  "Shape profile ID";
                              }
    
                              leaf scale-factor {
                                type uint16;
                                description
                                  "Scale Factor";
                              }
                            }  // container cir-shape
    
                            container pir-shape {
                              description
                                "PIR shaper params";
                              container pir {
                                description
                                  "PIR in kbps";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container pir
    
                              container pbs {
                                description
                                  "PBS in bytes";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container pbs
    
                              leaf chunk-id {
                                type uint32;
                                description
                                  "Shape Chunk ID";
                              }
    
                              leaf profile-id {
                                type uint16;
                                description
                                  "Shape profile ID";
                              }
    
                              leaf scale-factor {
                                type uint16;
                                description
                                  "Scale Factor";
                              }
                            }  // container pir-shape
    
                            leaf cir-shape-type {
                              type Shape-profiletype-v2;
                              description
                                "CIR Shaper type";
                            }
    
                            leaf pir-shape-type {
                              type Shape-profiletype-v2;
                              description
                                "PIR Shaper type";
                            }
                          }  // container shape
    
                          container police {
                            description
                              "Police parameters";
                            container cir {
                              description "CIR";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cir
    
                            container cbs {
                              description "CBS";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container cbs
    
                            container pir {
                              description "PIR";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pir
    
                            container pbs {
                              description "PBS";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container pbs
    
                            container police-config-parameters {
                              description
                                "Police config parameters";
                              container average-rate {
                                description
                                  "Average rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container average-rate
    
                              container peak-rate {
                                description
                                  "Peak rate";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container peak-rate
    
                              container conform-burst {
                                description
                                  "Conform burst";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container conform-burst
    
                              container exceed-burst {
                                description
                                  "Exceed burst";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container exceed-burst
                            }  // container police-config-parameters
    
                            leaf policer-type {
                              type Tb-algorithm;
                              description
                                "Policer type";
                            }
    
                            leaf profile-id {
                              type uint32;
                              description
                                "Police profile ID";
                            }
                          }  // container police
    
                          container wfq {
                            description
                              "WFQ parameters";
                            container parent-bandwidth {
                              description
                                "Parent bandwidth";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container parent-bandwidth
    
                            container bandwidth {
                              description
                                "CFG Bandwidth";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container bandwidth
    
                            leaf profile-id {
                              type uint32;
                              description
                                "WFQ profile";
                            }
    
                            leaf committed-weight {
                              type uint32;
                              description
                                "Committed weight";
                            }
    
                            leaf excess-weight {
                              type uint16;
                              description
                                "Excess weight";
                            }
    
                            leaf excess-ratio {
                              type uint16;
                              description
                                "Parent Excess ratio";
                            }
    
                            leaf chunk-id {
                              type uint32;
                              description
                                "Chunk ID";
                            }
    
                            leaf level {
                              type uint8;
                              description
                                "Level";
                            }
                          }  // container wfq
    
                          container wred {
                            description
                              "WRED parameters";
                            leaf type {
                              type Wred;
                              description
                                "WRED type";
                            }
    
                            leaf curve-xr {
                              type uint16;
                              description
                                "Number of curves";
                            }
    
                            list curve {
                              max-elements 64;
                              description
                                "Curve details";
                              container min-threshold {
                                description
                                  "Minimum threshold";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container min-threshold
    
                              container min-threshold-user-config {
                                description
                                  "Minimum threshold WRED context";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container min-threshold-user-config
    
                              container max-threshold {
                                description
                                  "Maximum threshold";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container max-threshold
    
                              container max-threshold-user-config {
                                description
                                  "Maximum threshold WRED context";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container max-threshold-user-config
    
                              leaf absolute-index {
                                type uint16;
                                description
                                  "Absolute Index";
                              }
    
                              leaf template-id {
                                type uint16;
                                description
                                  "Template ID";
                              }
    
                              leaf curve-id {
                                type uint16;
                                description
                                  "Curve ID";
                              }
    
                              leaf match {
                                type string;
                                description
                                  "WRED match if precedence start value equals to
    end value Format: <start-value> , else range
    Format: <start-value> <end-value>";
                              }
    
                              leaf exp-match {
                                type string;
                                description
                                  "WRED exp match if EXP start value equals to end
    value Format: <start-value> , else range Format:
    <start-value> <end-value>";
                              }
                            }  // list curve
                          }  // container wred
    
                          container mark {
                            description
                              "Mark parameters";
                            container child-mark {
                              description
                                "Child mark only";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container child-mark
    
                            container police-conform {
                              description
                                "Child police conform mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-conform
    
                            container police-exceed {
                              description
                                "Child police exceed mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-exceed
    
                            container police-violate {
                              description
                                "Child police violate mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container police-violate
    
                            container parent-mark {
                              description
                                "Parent mark only";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-mark
    
                            container parent-police-conform {
                              description
                                "Parent police conform mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-conform
    
                            container parent-police-exceed {
                              description
                                "Parent police exceed mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-exceed
    
                            container parent-police-violate {
                              description
                                "Parent police violate mark";
                              leaf action-type {
                                type Action;
                                description
                                  "Action type";
                              }
    
                              list mark-detail {
                                max-elements 2;
                                description
                                  "Mark value";
                                leaf mark-value {
                                  type uint8;
                                  description
                                    "Mark value";
                                }
    
                                leaf action-opcode {
                                  type Action-opcode;
                                  description
                                    "Action opcode";
                                }
                              }  // list mark-detail
                            }  // container parent-police-violate
                          }  // container mark
    
                          leaf class-level {
                            type uint8;
                            description
                              "Class level";
                          }
    
                          leaf class-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Class name";
                          }
    
                          leaf policy-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Policy name";
                          }
    
                          leaf parent-policy-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Parent policy name";
                          }
    
                          leaf parent-class-name {
                            type string {
                              length "0..65";
                            }
                            description
                              "Parent class name";
                          }
                        }  // list qos-show-ea-st-v2
                      }  // container policy-typhoon
                    }  // container details
                  }  // container output
    
                  leaf interface-name {
                    type xr:Interface-name;
                    description
                      "The name of the interface";
                  }
                }  // list interface
              }  // container interfaces
    
              container bundle-interfaces {
                description
                  "QoS list of bundle interfaces";
                list bundle-interface {
                  key "interface-name";
                  description
                    "QoS interface name";
                  container bundle-output {
                    description
                      "QoS policy direction output";
                    container member-interfaces {
                      description
                        "QoS list of member interfaces";
                      list member-interface {
                        key "interface-name";
                        description
                          "QoS interface name";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Memeber interface";
                        }
    
                        container details {
                          description
                            "QoS policy direction egress";
                          container header {
                            description
                              "QoS policy header";
                            container interface-parameters {
                              description
                                "Interface config and programmed parameters";
                              container port-config-bandwidth {
                                description
                                  "Bandwidth due to port speed change";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container port-config-bandwidth
    
                              container ancp-config-bandwidth {
                                description
                                  "Bandwidth obtain from IM";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container ancp-config-bandwidth
    
                              container ancp-programmed-bandwidth {
                                description
                                  "ANCP bandwidth that was programmed";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container ancp-programmed-bandwidth
    
                              container port-shaper-rate {
                                description
                                  "Bandwidth that was programmed";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container port-shaper-rate
                            }  // container interface-parameters
    
                            container programmed-bandwidth {
                              description
                                "Bandwidth that was programmed";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container programmed-bandwidth
    
                            leaf classes {
                              type uint16;
                              description
                                "Number of classes";
                            }
    
                            leaf policy-name {
                              type string {
                                length "0..65";
                              }
                              description
                                "Policy name";
                            }
                          }  // container header
    
                          container policy {
                            description
                              "Trident QoS policy details";
                            list qos-show-ea-st-v1 {
                              description
                                "qos show ea st v1";
                              container queue {
                                description
                                  "Queue parameters";
                                leaf queue-id {
                                  type uint32;
                                  description
                                    "Queue ID";
                                }
    
                                leaf queue-type {
                                  type Queue;
                                  description
                                    "Queue type";
                                }
    
                                leaf class-name {
                                  type string {
                                    length
                                      "0..65";
                                  }
                                  description
                                    "Class name";
                                }
                              }  // container queue
    
                              container queue-limit-parameters {
                                description
                                  "Queue limit parameters";
                                container queue-limit {
                                  description
                                    "Queue limit in kbytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container queue-limit
    
                                container config-queue-limit {
                                  description
                                    "Config queue limit";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container config-queue-limit
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Profile ID";
                                }
    
                                leaf scaling-profile-id {
                                  type uint32;
                                  description
                                    "Scaling profile ID";
                                }
                              }  // container queue-limit-parameters
    
                              container shape {
                                description
                                  "Shape parameters";
                                container cir {
                                  description
                                    "CIR in kbps";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container config-bandwidth {
                                  description
                                    "Config bandwidth";
                                  container minimum-rate {
                                    description
                                      "Minimum bandwidth rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container minimum-rate
                                }  // container config-bandwidth
    
                                container cbs {
                                  description
                                    "CBS in bytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR in kbps";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS in bytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                leaf profile-id {
                                  type uint16;
                                  description
                                    "Shape profile ID";
                                }
                              }  // container shape
    
                              container police {
                                description
                                  "Police parameters";
                                container cir {
                                  description
                                    "CIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container cbs {
                                  description
                                    "CBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                container police-config-parameters {
                                  description
                                    "Police config parameters";
                                  container average-rate {
                                    description
                                      "Average rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container average-rate
    
                                  container peak-rate {
                                    description
                                      "Peak rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container peak-rate
    
                                  container conform-burst {
                                    description
                                      "Conform burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container conform-burst
    
                                  container exceed-burst {
                                    description
                                      "Exceed burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container exceed-burst
                                }  // container police-config-parameters
    
                                leaf policer-type {
                                  type Tb-algorithm;
                                  description
                                    "Policer type";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Police profile ID";
                                }
                              }  // container police
    
                              container wfq {
                                description
                                  "WFQ parameters";
                                container parent-bandwidth {
                                  description
                                    "Parent bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container parent-bandwidth
    
                                container bandwidth {
                                  description
                                    "CFG Bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container bandwidth
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "WFQ profile";
                                }
    
                                leaf committed-weight {
                                  type uint32;
                                  description
                                    "Committed weight";
                                }
    
                                leaf excess-weight {
                                  type uint16;
                                  description
                                    "Excess weight";
                                }
    
                                leaf excess-ratio {
                                  type uint16;
                                  description
                                    "Parent Excess ratio";
                                }
    
                                leaf chunk-id {
                                  type uint32;
                                  description
                                    "Chunk ID";
                                }
    
                                leaf level {
                                  type uint8;
                                  description
                                    "Level";
                                }
                              }  // container wfq
    
                              container wred {
                                description
                                  "WRED parameters";
                                leaf type {
                                  type Wred;
                                  description
                                    "WRED type";
                                }
    
                                leaf curve-xr {
                                  type uint16;
                                  description
                                    "Number of curves";
                                }
    
                                leaf table-id {
                                  type uint8;
                                  description
                                    "Table ID";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Profile ID";
                                }
    
                                leaf scaling-profile-id {
                                  type uint32;
                                  description
                                    "Scaling profile ID";
                                }
    
                                list curve {
                                  max-elements
                                    64;
                                  description
                                    "Curve details";
                                  container min-threshold {
                                    description
                                      "Minimum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold
    
                                  container min-threshold-user-config {
                                    description
                                      "Minimum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold-user-config
    
                                  container max-threshold {
                                    description
                                      "Maximum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold
    
                                  container max-threshold-user-config {
                                    description
                                      "Maximum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold-user-config
    
                                  leaf match {
                                    type string;
                                    description
                                      "WRED precedence match if precedence start value
    equals to end value Format: <start-value> , else
    range Format: <start-value> <end-value>";
                                  }
                                }  // list curve
                              }  // container wred
    
                              container mark {
                                description
                                  "Mark parameters";
                                container child-mark {
                                  description
                                    "Child mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container child-mark
    
                                container police-conform {
                                  description
                                    "Child police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-conform
    
                                container police-exceed {
                                  description
                                    "Child police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-exceed
    
                                container police-violate {
                                  description
                                    "Child police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-violate
    
                                container parent-mark {
                                  description
                                    "Parent mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-mark
    
                                container parent-police-conform {
                                  description
                                    "Parent police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-conform
    
                                container parent-police-exceed {
                                  description
                                    "Parent police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-exceed
    
                                container parent-police-violate {
                                  description
                                    "Parent police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-violate
                              }  // container mark
    
                              leaf class-level {
                                type uint8;
                                description
                                  "Class level";
                              }
    
                              leaf class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Class name";
                              }
    
                              leaf policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Policy name";
                              }
    
                              leaf parent-policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent policy name";
                              }
    
                              leaf parent-class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent class name";
                              }
                            }  // list qos-show-ea-st-v1
                          }  // container policy
    
                          container policy-typhoon {
                            description
                              "Typhoon QoS policy details";
                            list qos-show-ea-st-v2 {
                              description
                                "qos show ea st v2";
                              container queue {
                                description
                                  "Queue parameters";
                                leaf queue-id {
                                  type uint32;
                                  description
                                    "Queue ID";
                                }
    
                                leaf queue-type {
                                  type Queue;
                                  description
                                    "Queue type";
                                }
    
                                leaf class-name {
                                  type string {
                                    length
                                      "0..65";
                                  }
                                  description
                                    "Class name";
                                }
                              }  // container queue
    
                              container queue-limit-parameters {
                                description
                                  "Queue limit parameters";
                                container queue-limit {
                                  description
                                    "Queue limit in kbytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container queue-limit
    
                                container config-queue-limit {
                                  description
                                    "Config queue limit";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container config-queue-limit
    
                                leaf absolute-index {
                                  type uint16;
                                  description
                                    "Absolute Index";
                                }
    
                                leaf template-id {
                                  type uint16;
                                  description
                                    "Template ID";
                                }
    
                                leaf curve-id {
                                  type uint16;
                                  description
                                    "Curve ID";
                                }
                              }  // container queue-limit-parameters
    
                              container shape {
                                description
                                  "Shape parameters";
                                container cir-shape {
                                  description
                                    "CIR shaper params";
                                  container cir {
                                    description
                                      "CIR in kbps";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container cir
    
                                  container config-bandwidth {
                                    description
                                      "Config bandwidth";
                                    container minimum-rate {
                                      description
                                        "Minimum bandwidth rate";
                                      leaf value {
                                        type uint32;
                                        description
                                          "Config value";
                                      }
    
                                      leaf unit {
                                        type Qos-unit;
                                        description
                                          "Config unit";
                                      }
                                    }  // container minimum-rate
                                  }  // container config-bandwidth
    
                                  container cbs {
                                    description
                                      "CBS in bytes";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container cbs
    
                                  leaf chunk-id {
                                    type uint32;
                                    description
                                      "Shape Chunk ID";
                                  }
    
                                  leaf profile-id {
                                    type uint16;
                                    description
                                      "Shape profile ID";
                                  }
    
                                  leaf scale-factor {
                                    type uint16;
                                    description
                                      "Scale Factor";
                                  }
                                }  // container cir-shape
    
                                container pir-shape {
                                  description
                                    "PIR shaper params";
                                  container pir {
                                    description
                                      "PIR in kbps";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container pir
    
                                  container pbs {
                                    description
                                      "PBS in bytes";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container pbs
    
                                  leaf chunk-id {
                                    type uint32;
                                    description
                                      "Shape Chunk ID";
                                  }
    
                                  leaf profile-id {
                                    type uint16;
                                    description
                                      "Shape profile ID";
                                  }
    
                                  leaf scale-factor {
                                    type uint16;
                                    description
                                      "Scale Factor";
                                  }
                                }  // container pir-shape
    
                                leaf cir-shape-type {
                                  type Shape-profiletype-v2;
                                  description
                                    "CIR Shaper type";
                                }
    
                                leaf pir-shape-type {
                                  type Shape-profiletype-v2;
                                  description
                                    "PIR Shaper type";
                                }
                              }  // container shape
    
                              container police {
                                description
                                  "Police parameters";
                                container cir {
                                  description
                                    "CIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container cbs {
                                  description
                                    "CBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                container police-config-parameters {
                                  description
                                    "Police config parameters";
                                  container average-rate {
                                    description
                                      "Average rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container average-rate
    
                                  container peak-rate {
                                    description
                                      "Peak rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container peak-rate
    
                                  container conform-burst {
                                    description
                                      "Conform burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container conform-burst
    
                                  container exceed-burst {
                                    description
                                      "Exceed burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container exceed-burst
                                }  // container police-config-parameters
    
                                leaf policer-type {
                                  type Tb-algorithm;
                                  description
                                    "Policer type";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Police profile ID";
                                }
                              }  // container police
    
                              container wfq {
                                description
                                  "WFQ parameters";
                                container parent-bandwidth {
                                  description
                                    "Parent bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container parent-bandwidth
    
                                container bandwidth {
                                  description
                                    "CFG Bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container bandwidth
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "WFQ profile";
                                }
    
                                leaf committed-weight {
                                  type uint32;
                                  description
                                    "Committed weight";
                                }
    
                                leaf excess-weight {
                                  type uint16;
                                  description
                                    "Excess weight";
                                }
    
                                leaf excess-ratio {
                                  type uint16;
                                  description
                                    "Parent Excess ratio";
                                }
    
                                leaf chunk-id {
                                  type uint32;
                                  description
                                    "Chunk ID";
                                }
    
                                leaf level {
                                  type uint8;
                                  description
                                    "Level";
                                }
                              }  // container wfq
    
                              container wred {
                                description
                                  "WRED parameters";
                                leaf type {
                                  type Wred;
                                  description
                                    "WRED type";
                                }
    
                                leaf curve-xr {
                                  type uint16;
                                  description
                                    "Number of curves";
                                }
    
                                list curve {
                                  max-elements
                                    64;
                                  description
                                    "Curve details";
                                  container min-threshold {
                                    description
                                      "Minimum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold
    
                                  container min-threshold-user-config {
                                    description
                                      "Minimum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold-user-config
    
                                  container max-threshold {
                                    description
                                      "Maximum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold
    
                                  container max-threshold-user-config {
                                    description
                                      "Maximum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold-user-config
    
                                  leaf absolute-index {
                                    type uint16;
                                    description
                                      "Absolute Index";
                                  }
    
                                  leaf template-id {
                                    type uint16;
                                    description
                                      "Template ID";
                                  }
    
                                  leaf curve-id {
                                    type uint16;
                                    description
                                      "Curve ID";
                                  }
    
                                  leaf match {
                                    type string;
                                    description
                                      "WRED match if precedence start value equals to
    end value Format: <start-value> , else range
    Format: <start-value> <end-value>";
                                  }
    
                                  leaf exp-match {
                                    type string;
                                    description
                                      "WRED exp match if EXP start value equals to end
    value Format: <start-value> , else range Format:
    <start-value> <end-value>";
                                  }
                                }  // list curve
                              }  // container wred
    
                              container mark {
                                description
                                  "Mark parameters";
                                container child-mark {
                                  description
                                    "Child mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container child-mark
    
                                container police-conform {
                                  description
                                    "Child police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-conform
    
                                container police-exceed {
                                  description
                                    "Child police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-exceed
    
                                container police-violate {
                                  description
                                    "Child police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-violate
    
                                container parent-mark {
                                  description
                                    "Parent mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-mark
    
                                container parent-police-conform {
                                  description
                                    "Parent police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-conform
    
                                container parent-police-exceed {
                                  description
                                    "Parent police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-exceed
    
                                container parent-police-violate {
                                  description
                                    "Parent police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-violate
                              }  // container mark
    
                              leaf class-level {
                                type uint8;
                                description
                                  "Class level";
                              }
    
                              leaf class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Class name";
                              }
    
                              leaf policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Policy name";
                              }
    
                              leaf parent-policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent policy name";
                              }
    
                              leaf parent-class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent class name";
                              }
                            }  // list qos-show-ea-st-v2
                          }  // container policy-typhoon
                        }  // container details
                      }  // list member-interface
                    }  // container member-interfaces
                  }  // container bundle-output
    
                  container bundle-input {
                    description
                      "QoS policy direction output";
                    container member-interfaces {
                      description
                        "QoS list of member interfaces";
                      list member-interface {
                        key "interface-name";
                        description
                          "QoS interface name";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Memeber interface";
                        }
    
                        container details {
                          description
                            "QoS policy direction egress";
                          container header {
                            description
                              "QoS policy header";
                            container interface-parameters {
                              description
                                "Interface config and programmed parameters";
                              container port-config-bandwidth {
                                description
                                  "Bandwidth due to port speed change";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container port-config-bandwidth
    
                              container ancp-config-bandwidth {
                                description
                                  "Bandwidth obtain from IM";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container ancp-config-bandwidth
    
                              container ancp-programmed-bandwidth {
                                description
                                  "ANCP bandwidth that was programmed";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container ancp-programmed-bandwidth
    
                              container port-shaper-rate {
                                description
                                  "Bandwidth that was programmed";
                                leaf value {
                                  type uint32;
                                  description
                                    "Config value";
                                }
    
                                leaf unit {
                                  type Qos-unit;
                                  description
                                    "Config unit";
                                }
                              }  // container port-shaper-rate
                            }  // container interface-parameters
    
                            container programmed-bandwidth {
                              description
                                "Bandwidth that was programmed";
                              leaf value {
                                type uint32;
                                description
                                  "Config value";
                              }
    
                              leaf unit {
                                type Qos-unit;
                                description
                                  "Config unit";
                              }
                            }  // container programmed-bandwidth
    
                            leaf classes {
                              type uint16;
                              description
                                "Number of classes";
                            }
    
                            leaf policy-name {
                              type string {
                                length "0..65";
                              }
                              description
                                "Policy name";
                            }
                          }  // container header
    
                          container policy {
                            description
                              "Trident QoS policy details";
                            list qos-show-ea-st-v1 {
                              description
                                "qos show ea st v1";
                              container queue {
                                description
                                  "Queue parameters";
                                leaf queue-id {
                                  type uint32;
                                  description
                                    "Queue ID";
                                }
    
                                leaf queue-type {
                                  type Queue;
                                  description
                                    "Queue type";
                                }
    
                                leaf class-name {
                                  type string {
                                    length
                                      "0..65";
                                  }
                                  description
                                    "Class name";
                                }
                              }  // container queue
    
                              container queue-limit-parameters {
                                description
                                  "Queue limit parameters";
                                container queue-limit {
                                  description
                                    "Queue limit in kbytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container queue-limit
    
                                container config-queue-limit {
                                  description
                                    "Config queue limit";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container config-queue-limit
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Profile ID";
                                }
    
                                leaf scaling-profile-id {
                                  type uint32;
                                  description
                                    "Scaling profile ID";
                                }
                              }  // container queue-limit-parameters
    
                              container shape {
                                description
                                  "Shape parameters";
                                container cir {
                                  description
                                    "CIR in kbps";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container config-bandwidth {
                                  description
                                    "Config bandwidth";
                                  container minimum-rate {
                                    description
                                      "Minimum bandwidth rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container minimum-rate
                                }  // container config-bandwidth
    
                                container cbs {
                                  description
                                    "CBS in bytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR in kbps";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS in bytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                leaf profile-id {
                                  type uint16;
                                  description
                                    "Shape profile ID";
                                }
                              }  // container shape
    
                              container police {
                                description
                                  "Police parameters";
                                container cir {
                                  description
                                    "CIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container cbs {
                                  description
                                    "CBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                container police-config-parameters {
                                  description
                                    "Police config parameters";
                                  container average-rate {
                                    description
                                      "Average rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container average-rate
    
                                  container peak-rate {
                                    description
                                      "Peak rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container peak-rate
    
                                  container conform-burst {
                                    description
                                      "Conform burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container conform-burst
    
                                  container exceed-burst {
                                    description
                                      "Exceed burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container exceed-burst
                                }  // container police-config-parameters
    
                                leaf policer-type {
                                  type Tb-algorithm;
                                  description
                                    "Policer type";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Police profile ID";
                                }
                              }  // container police
    
                              container wfq {
                                description
                                  "WFQ parameters";
                                container parent-bandwidth {
                                  description
                                    "Parent bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container parent-bandwidth
    
                                container bandwidth {
                                  description
                                    "CFG Bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container bandwidth
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "WFQ profile";
                                }
    
                                leaf committed-weight {
                                  type uint32;
                                  description
                                    "Committed weight";
                                }
    
                                leaf excess-weight {
                                  type uint16;
                                  description
                                    "Excess weight";
                                }
    
                                leaf excess-ratio {
                                  type uint16;
                                  description
                                    "Parent Excess ratio";
                                }
    
                                leaf chunk-id {
                                  type uint32;
                                  description
                                    "Chunk ID";
                                }
    
                                leaf level {
                                  type uint8;
                                  description
                                    "Level";
                                }
                              }  // container wfq
    
                              container wred {
                                description
                                  "WRED parameters";
                                leaf type {
                                  type Wred;
                                  description
                                    "WRED type";
                                }
    
                                leaf curve-xr {
                                  type uint16;
                                  description
                                    "Number of curves";
                                }
    
                                leaf table-id {
                                  type uint8;
                                  description
                                    "Table ID";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Profile ID";
                                }
    
                                leaf scaling-profile-id {
                                  type uint32;
                                  description
                                    "Scaling profile ID";
                                }
    
                                list curve {
                                  max-elements
                                    64;
                                  description
                                    "Curve details";
                                  container min-threshold {
                                    description
                                      "Minimum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold
    
                                  container min-threshold-user-config {
                                    description
                                      "Minimum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold-user-config
    
                                  container max-threshold {
                                    description
                                      "Maximum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold
    
                                  container max-threshold-user-config {
                                    description
                                      "Maximum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold-user-config
    
                                  leaf match {
                                    type string;
                                    description
                                      "WRED precedence match if precedence start value
    equals to end value Format: <start-value> , else
    range Format: <start-value> <end-value>";
                                  }
                                }  // list curve
                              }  // container wred
    
                              container mark {
                                description
                                  "Mark parameters";
                                container child-mark {
                                  description
                                    "Child mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container child-mark
    
                                container police-conform {
                                  description
                                    "Child police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-conform
    
                                container police-exceed {
                                  description
                                    "Child police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-exceed
    
                                container police-violate {
                                  description
                                    "Child police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-violate
    
                                container parent-mark {
                                  description
                                    "Parent mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-mark
    
                                container parent-police-conform {
                                  description
                                    "Parent police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-conform
    
                                container parent-police-exceed {
                                  description
                                    "Parent police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-exceed
    
                                container parent-police-violate {
                                  description
                                    "Parent police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-violate
                              }  // container mark
    
                              leaf class-level {
                                type uint8;
                                description
                                  "Class level";
                              }
    
                              leaf class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Class name";
                              }
    
                              leaf policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Policy name";
                              }
    
                              leaf parent-policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent policy name";
                              }
    
                              leaf parent-class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent class name";
                              }
                            }  // list qos-show-ea-st-v1
                          }  // container policy
    
                          container policy-typhoon {
                            description
                              "Typhoon QoS policy details";
                            list qos-show-ea-st-v2 {
                              description
                                "qos show ea st v2";
                              container queue {
                                description
                                  "Queue parameters";
                                leaf queue-id {
                                  type uint32;
                                  description
                                    "Queue ID";
                                }
    
                                leaf queue-type {
                                  type Queue;
                                  description
                                    "Queue type";
                                }
    
                                leaf class-name {
                                  type string {
                                    length
                                      "0..65";
                                  }
                                  description
                                    "Class name";
                                }
                              }  // container queue
    
                              container queue-limit-parameters {
                                description
                                  "Queue limit parameters";
                                container queue-limit {
                                  description
                                    "Queue limit in kbytes";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container queue-limit
    
                                container config-queue-limit {
                                  description
                                    "Config queue limit";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container config-queue-limit
    
                                leaf absolute-index {
                                  type uint16;
                                  description
                                    "Absolute Index";
                                }
    
                                leaf template-id {
                                  type uint16;
                                  description
                                    "Template ID";
                                }
    
                                leaf curve-id {
                                  type uint16;
                                  description
                                    "Curve ID";
                                }
                              }  // container queue-limit-parameters
    
                              container shape {
                                description
                                  "Shape parameters";
                                container cir-shape {
                                  description
                                    "CIR shaper params";
                                  container cir {
                                    description
                                      "CIR in kbps";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container cir
    
                                  container config-bandwidth {
                                    description
                                      "Config bandwidth";
                                    container minimum-rate {
                                      description
                                        "Minimum bandwidth rate";
                                      leaf value {
                                        type uint32;
                                        description
                                          "Config value";
                                      }
    
                                      leaf unit {
                                        type Qos-unit;
                                        description
                                          "Config unit";
                                      }
                                    }  // container minimum-rate
                                  }  // container config-bandwidth
    
                                  container cbs {
                                    description
                                      "CBS in bytes";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container cbs
    
                                  leaf chunk-id {
                                    type uint32;
                                    description
                                      "Shape Chunk ID";
                                  }
    
                                  leaf profile-id {
                                    type uint16;
                                    description
                                      "Shape profile ID";
                                  }
    
                                  leaf scale-factor {
                                    type uint16;
                                    description
                                      "Scale Factor";
                                  }
                                }  // container cir-shape
    
                                container pir-shape {
                                  description
                                    "PIR shaper params";
                                  container pir {
                                    description
                                      "PIR in kbps";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container pir
    
                                  container pbs {
                                    description
                                      "PBS in bytes";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container pbs
    
                                  leaf chunk-id {
                                    type uint32;
                                    description
                                      "Shape Chunk ID";
                                  }
    
                                  leaf profile-id {
                                    type uint16;
                                    description
                                      "Shape profile ID";
                                  }
    
                                  leaf scale-factor {
                                    type uint16;
                                    description
                                      "Scale Factor";
                                  }
                                }  // container pir-shape
    
                                leaf cir-shape-type {
                                  type Shape-profiletype-v2;
                                  description
                                    "CIR Shaper type";
                                }
    
                                leaf pir-shape-type {
                                  type Shape-profiletype-v2;
                                  description
                                    "PIR Shaper type";
                                }
                              }  // container shape
    
                              container police {
                                description
                                  "Police parameters";
                                container cir {
                                  description
                                    "CIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cir
    
                                container cbs {
                                  description
                                    "CBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container cbs
    
                                container pir {
                                  description
                                    "PIR";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pir
    
                                container pbs {
                                  description
                                    "PBS";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container pbs
    
                                container police-config-parameters {
                                  description
                                    "Police config parameters";
                                  container average-rate {
                                    description
                                      "Average rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container average-rate
    
                                  container peak-rate {
                                    description
                                      "Peak rate";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container peak-rate
    
                                  container conform-burst {
                                    description
                                      "Conform burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container conform-burst
    
                                  container exceed-burst {
                                    description
                                      "Exceed burst";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container exceed-burst
                                }  // container police-config-parameters
    
                                leaf policer-type {
                                  type Tb-algorithm;
                                  description
                                    "Policer type";
                                }
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "Police profile ID";
                                }
                              }  // container police
    
                              container wfq {
                                description
                                  "WFQ parameters";
                                container parent-bandwidth {
                                  description
                                    "Parent bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container parent-bandwidth
    
                                container bandwidth {
                                  description
                                    "CFG Bandwidth";
                                  leaf value {
                                    type uint32;
                                    description
                                      "Config value";
                                  }
    
                                  leaf unit {
                                    type Qos-unit;
                                    description
                                      "Config unit";
                                  }
                                }  // container bandwidth
    
                                leaf profile-id {
                                  type uint32;
                                  description
                                    "WFQ profile";
                                }
    
                                leaf committed-weight {
                                  type uint32;
                                  description
                                    "Committed weight";
                                }
    
                                leaf excess-weight {
                                  type uint16;
                                  description
                                    "Excess weight";
                                }
    
                                leaf excess-ratio {
                                  type uint16;
                                  description
                                    "Parent Excess ratio";
                                }
    
                                leaf chunk-id {
                                  type uint32;
                                  description
                                    "Chunk ID";
                                }
    
                                leaf level {
                                  type uint8;
                                  description
                                    "Level";
                                }
                              }  // container wfq
    
                              container wred {
                                description
                                  "WRED parameters";
                                leaf type {
                                  type Wred;
                                  description
                                    "WRED type";
                                }
    
                                leaf curve-xr {
                                  type uint16;
                                  description
                                    "Number of curves";
                                }
    
                                list curve {
                                  max-elements
                                    64;
                                  description
                                    "Curve details";
                                  container min-threshold {
                                    description
                                      "Minimum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold
    
                                  container min-threshold-user-config {
                                    description
                                      "Minimum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container min-threshold-user-config
    
                                  container max-threshold {
                                    description
                                      "Maximum threshold";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold
    
                                  container max-threshold-user-config {
                                    description
                                      "Maximum threshold WRED context";
                                    leaf value {
                                      type uint32;
                                      description
                                        "Config value";
                                    }
    
                                    leaf unit {
                                      type Qos-unit;
                                      description
                                        "Config unit";
                                    }
                                  }  // container max-threshold-user-config
    
                                  leaf absolute-index {
                                    type uint16;
                                    description
                                      "Absolute Index";
                                  }
    
                                  leaf template-id {
                                    type uint16;
                                    description
                                      "Template ID";
                                  }
    
                                  leaf curve-id {
                                    type uint16;
                                    description
                                      "Curve ID";
                                  }
    
                                  leaf match {
                                    type string;
                                    description
                                      "WRED match if precedence start value equals to
    end value Format: <start-value> , else range
    Format: <start-value> <end-value>";
                                  }
    
                                  leaf exp-match {
                                    type string;
                                    description
                                      "WRED exp match if EXP start value equals to end
    value Format: <start-value> , else range Format:
    <start-value> <end-value>";
                                  }
                                }  // list curve
                              }  // container wred
    
                              container mark {
                                description
                                  "Mark parameters";
                                container child-mark {
                                  description
                                    "Child mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container child-mark
    
                                container police-conform {
                                  description
                                    "Child police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-conform
    
                                container police-exceed {
                                  description
                                    "Child police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-exceed
    
                                container police-violate {
                                  description
                                    "Child police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container police-violate
    
                                container parent-mark {
                                  description
                                    "Parent mark only";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-mark
    
                                container parent-police-conform {
                                  description
                                    "Parent police conform mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-conform
    
                                container parent-police-exceed {
                                  description
                                    "Parent police exceed mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-exceed
    
                                container parent-police-violate {
                                  description
                                    "Parent police violate mark";
                                  leaf action-type {
                                    type Action;
                                    description
                                      "Action type";
                                  }
    
                                  list mark-detail {
                                    max-elements
                                      2;
                                    description
                                      "Mark value";
                                    leaf mark-value {
                                      type uint8;
                                      description
                                        "Mark value";
                                    }
    
                                    leaf action-opcode {
                                      type Action-opcode;
                                      description
                                        "Action opcode";
                                    }
                                  }  // list mark-detail
                                }  // container parent-police-violate
                              }  // container mark
    
                              leaf class-level {
                                type uint8;
                                description
                                  "Class level";
                              }
    
                              leaf class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Class name";
                              }
    
                              leaf policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Policy name";
                              }
    
                              leaf parent-policy-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent policy name";
                              }
    
                              leaf parent-class-name {
                                type string {
                                  length "0..65";
                                }
                                description
                                  "Parent class name";
                              }
                            }  // list qos-show-ea-st-v2
                          }  // container policy-typhoon
                        }  // container details
                      }  // list member-interface
                    }  // container member-interfaces
                  }  // container bundle-input
    
                  leaf interface-name {
                    type xr:Interface-name;
                    description
                      "Bundle interface name";
                  }
                }  // list bundle-interface
              }  // container bundle-interfaces
    
              container performance {
                description
                  "QoS system performance";
                container profile-data {
                  description "Profiling Data";
                  leaf total-time {
                    type uint64;
                    description "Total Time";
                  }
    
                  leaf total-count {
                    type uint64;
                    description "Total count";
                  }
    
                  leaf time-highest {
                    type string {
                      length "0..11";
                    }
                    description "Time Highest";
                  }
    
                  leaf time-lowest {
                    type string {
                      length "0..11";
                    }
                    description "Time Lowest";
                  }
    
                  leaf total-events {
                    type uint64;
                    description "Total Events";
                  }
                }  // container profile-data
              }  // container performance
    
              leaf node-name {
                type xr:Node-id;
                description "Node name";
              }
            }  // list node
          }  // container nodes
        }  // container platform-qos
      }  // module Cisco-IOS-XR-asr9k-qos-oper
    

© 2023 YumaWorks, Inc. All rights reserved.