Cisco-IOS-XE-ethernet

YANG Data Model Tree Structure

View YANG Source on GitHub →

📚 API Documentation & Navigation

📄 Swagger API Spec 📂 Browse Native Config APIs 🌳 All Trees

📋 Module Metadata

Namespace: http://cisco.com/ns/yang/Cisco-IOS-XE-ethernet

Prefix: ethernet

Related Modules:
Cisco-IOS-XE-ethernet-rpc
CISCO-AAL5-MIB
CISCO-ATM-EXT-MIB
Cisco-IOS-XE-aaa
Cisco-IOS-XE-acl

💡 Example Usage

# GET module data
curl -X GET \
  -H "Accept: application/yang-data+json" \
  -u admin:password \
  --insecure \
  https://device-ip/restconf/data/Cisco-IOS-XE-ethernet

📚 External Documentation

💻 YANG Source📖 YANG Catalog🌐 DevNet Guide
module: Cisco-IOS-XE-ethernet

  augment /ios:native:
    o--rw esmc {ios-features:esmc}?
       o--rw process?   empty
  augment /ios:native/ios:ethernet:
    +--rw lmi
    |  +--rw ce?       empty
    |  +--rw global?   empty
    +--rw evc* [name] {ios-features:eth-evc}?
    |  +--rw name    string
    |  +--rw oam
    |  |  +--rw protocol
    |  |     +--rw (protocol-type)?
    |  |        +--:(cfm)
    |  |        |  +--rw cfm
    |  |        |     +--rw domain?   string
    |  |        +--:(ldp)
    |  |           +--rw ldp?   empty
    |  +--rw uni
    |     +--rw count?   uint16
    +--rw cfm
    |  +--rw ais
    |  |  +--rw link-status
    |  |     +--rw global!
    |  |        +--rw cfm-Mode__config-ais-link-cfm
    |  |           +--rw disable?      empty
    |  |           +--rw level?        uint8
    |  |           +--rw ais-period?   enumeration
    |  |           o--rw period
    |  |              o--rw tp-1?    empty
    |  |              o--rw tp-60?   empty
    |  +--rw alarm-config
    |  |  +--rw delay?          uint16
    |  |  +--rw notification?   enumeration
    |  |  +--rw reset?          uint16
    |  |  +--rw packet?         uint16
    |  o--rw alarm
    |  |  o--rw delay?          uint16
    |  |  o--rw notification
    |  |  |  o--rw all?                     empty
    |  |  |  o--rw error-xcon?              empty
    |  |  |  o--rw mac-remote-error-xcon?   empty
    |  |  |  o--rw none?                    empty
    |  |  |  o--rw remote-error-xcon?       empty
    |  |  |  o--rw xcon?                    empty
    |  |  o--rw reset?          uint16
    |  |  o--rw packet?         uint16
    |  +--rw ieee?           empty
    |  +--rw global?         empty
    |  +--rw domain* [name]
    |  |  +--rw name              string
    |  |  +--rw level?            uint8
    |  |  +--rw service* [name]
    |  |  |  +--rw name                     string
    |  |  |  +--rw port?                    empty
    |  |  |  +--rw evc?                     string {ios-features:eth-evc}?
    |  |  |  +--rw vlan?                    uint16
    |  |  |  +--rw direction?               enumeration
    |  |  |  +--rw ais
    |  |  |  |  +--rw expiry-threshold?   uint8
    |  |  |  |  +--rw level?              uint8
    |  |  |  |  +--rw period?             enumeration
    |  |  |  |  +--rw suppress-alarms?    empty
    |  |  |  +--rw cfm-continuity-check?    empty
    |  |  |  +--rw continuity-check-conf
    |  |  |  |  +--rw continuity-check
    |  |  |  |     +--rw interval?         enumeration
    |  |  |  |     +--rw loss-threshold?   uint8
    |  |  |  |     +--rw static
    |  |  |  |        +--rw rmep?   empty
    |  |  |  o--rw continuity-check!
    |  |  |  +--rw efd
    |  |  |  |  +--rw notify
    |  |  |  |  |  +--rw (notify-choice)?
    |  |  |  |  |     +--:(g8032)
    |  |  |  |  |     |  +--rw g8032?   empty
    |  |  |  |  |     +--:(rep)
    |  |  |  |  |        +--rw rep?     empty
    |  |  |  |  +--rw line-protocol?   empty
    |  |  |  +--rw lck
    |  |  |  |  +--rw expiry-threshold?   uint8
    |  |  |  |  +--rw level?              uint8
    |  |  |  |  +--rw period?             enumeration
    |  |  |  +--rw maximum
    |  |  |  |  +--rw meps?   uint16
    |  |  |  +--rw mep
    |  |  |  |  +--rw mpid?   uint16
    |  |  |  +--rw mip
    |  |  |  |  +--rw auto-create!
    |  |  |  |     +--rw (mip-case)?
    |  |  |  |        +--:(lower-mep-case)
    |  |  |  |        |  +--rw lower-mep-only?   empty
    |  |  |  |        +--:(none-case)
    |  |  |  |           +--rw none?             empty
    |  |  |  +--rw offload
    |  |  |  |  +--rw sampling?   uint16
    |  |  |  +--rw sender-id?               enumeration
    |  |  +--rw service-vlan
    |  |  |  +--rw service-vlan* [id]
    |  |  |     +--rw id                       uint16
    |  |  |     +--rw vlan-id?                 empty
    |  |  |     +--rw port?                    empty
    |  |  |     +--rw evc?                     string {ios-features:eth-evc}?
    |  |  |     +--rw vlan?                    uint16
    |  |  |     +--rw direction?               enumeration
    |  |  |     +--rw ais
    |  |  |     |  +--rw expiry-threshold?   uint8
    |  |  |     |  +--rw level?              uint8
    |  |  |     |  +--rw period?             enumeration
    |  |  |     |  +--rw suppress-alarms?    empty
    |  |  |     +--rw cfm-continuity-check?    empty
    |  |  |     +--rw continuity-check-conf
    |  |  |     |  +--rw continuity-check
    |  |  |     |     +--rw interval?         enumeration
    |  |  |     |     +--rw loss-threshold?   uint8
    |  |  |     |     +--rw static
    |  |  |     |        +--rw rmep?   empty
    |  |  |     o--rw continuity-check!
    |  |  |     +--rw efd
    |  |  |     |  +--rw notify
    |  |  |     |  |  +--rw (notify-choice)?
    |  |  |     |  |     +--:(g8032)
    |  |  |     |  |     |  +--rw g8032?   empty
    |  |  |     |  |     +--:(rep)
    |  |  |     |  |        +--rw rep?     empty
    |  |  |     |  +--rw line-protocol?   empty
    |  |  |     +--rw lck
    |  |  |     |  +--rw expiry-threshold?   uint8
    |  |  |     |  +--rw level?              uint8
    |  |  |     |  +--rw period?             enumeration
    |  |  |     +--rw maximum
    |  |  |     |  +--rw meps?   uint16
    |  |  |     +--rw mep
    |  |  |     |  +--rw mpid?   uint16
    |  |  |     +--rw mip
    |  |  |     |  +--rw auto-create!
    |  |  |     |     +--rw (mip-case)?
    |  |  |     |        +--:(lower-mep-case)
    |  |  |     |        |  +--rw lower-mep-only?   empty
    |  |  |     |        +--:(none-case)
    |  |  |     |           +--rw none?             empty
    |  |  |     +--rw offload
    |  |  |     |  +--rw sampling?   uint16
    |  |  |     +--rw sender-id?               enumeration
    |  |  +--rw service-number
    |  |  |  +--rw service-number* [id]
    |  |  |     +--rw id                       uint16
    |  |  |     +--rw number?                  empty
    |  |  |     +--rw port?                    empty
    |  |  |     +--rw evc?                     string {ios-features:eth-evc}?
    |  |  |     +--rw vlan?                    uint16
    |  |  |     +--rw direction?               enumeration
    |  |  |     +--rw ais
    |  |  |     |  +--rw expiry-threshold?   uint8
    |  |  |     |  +--rw level?              uint8
    |  |  |     |  +--rw period?             enumeration
    |  |  |     |  +--rw suppress-alarms?    boolean
    |  |  |     +--rw continuity-check?        empty
    |  |  |     +--rw continuity-check-conf
    |  |  |     |  +--rw continuity-check
    |  |  |     |     +--rw interval?         enumeration
    |  |  |     |     +--rw loss-threshold?   uint8
    |  |  |     |     +--rw static
    |  |  |     |        +--rw rmep?   empty
    |  |  |     +--rw efd
    |  |  |     |  +--rw notify?          enumeration
    |  |  |     |  +--rw line-protocol?   empty
    |  |  |     +--rw lck?                     boolean
    |  |  |     +--rw lck-conf
    |  |  |     |  +--rw lck
    |  |  |     |     +--rw expiry-threshold?   uint8
    |  |  |     |     +--rw level?              uint8
    |  |  |     |     +--rw period?             enumeration
    |  |  |     +--rw maximum
    |  |  |     |  +--rw meps?   uint16
    |  |  |     +--rw mep
    |  |  |     |  +--rw mpid?   uint16
    |  |  |     +--rw mip
    |  |  |     |  +--rw auto-create!
    |  |  |     |     +--rw auto-create-type?   enumeration
    |  |  |     +--rw offload
    |  |  |     |  +--rw sampling?   uint16
    |  |  |     +--rw sender-id?               enumeration
    |  |  +--rw service-vpn
    |  |  |  +--rw service-vpn* [id]
    |  |  |     +--rw id                       uint16
    |  |  |     +--rw vpn-id?                  empty
    |  |  |     +--rw port?                    empty
    |  |  |     +--rw evc?                     string {ios-features:eth-evc}?
    |  |  |     +--rw vlan?                    uint16
    |  |  |     +--rw direction?               enumeration
    |  |  |     +--rw ais
    |  |  |     |  +--rw expiry-threshold?   uint8
    |  |  |     |  +--rw level?              uint8
    |  |  |     |  +--rw period?             enumeration
    |  |  |     |  +--rw suppress-alarms?    empty
    |  |  |     +--rw cfm-continuity-check?    empty
    |  |  |     +--rw continuity-check-conf
    |  |  |     |  +--rw continuity-check
    |  |  |     |     +--rw interval?         enumeration
    |  |  |     |     +--rw loss-threshold?   uint8
    |  |  |     |     +--rw static
    |  |  |     |        +--rw rmep?   empty
    |  |  |     o--rw continuity-check!
    |  |  |     +--rw efd
    |  |  |     |  +--rw notify
    |  |  |     |  |  +--rw (notify-choice)?
    |  |  |     |  |     +--:(g8032)
    |  |  |     |  |     |  +--rw g8032?   empty
    |  |  |     |  |     +--:(rep)
    |  |  |     |  |        +--rw rep?     empty
    |  |  |     |  +--rw line-protocol?   empty
    |  |  |     +--rw lck
    |  |  |     |  +--rw expiry-threshold?   uint8
    |  |  |     |  +--rw level?              uint8
    |  |  |     |  +--rw period?             enumeration
    |  |  |     +--rw maximum
    |  |  |     |  +--rw meps?   uint16
    |  |  |     +--rw mep
    |  |  |     |  +--rw mpid?   uint16
    |  |  |     +--rw mip
    |  |  |     |  +--rw auto-create!
    |  |  |     |     +--rw (mip-case)?
    |  |  |     |        +--:(lower-mep-case)
    |  |  |     |        |  +--rw lower-mep-only?   empty
    |  |  |     |        +--:(none-case)
    |  |  |     |           +--rw none?             empty
    |  |  |     +--rw offload
    |  |  |     |  +--rw sampling?   uint16
    |  |  |     +--rw sender-id?               enumeration
    |  |  +--rw service-icc
    |  |  |  +--rw service-icc* [icc-code megid]
    |  |  |     +--rw icc-code                 string
    |  |  |     +--rw megid                    string
    |  |  |     +--rw icc?                     empty
    |  |  |     +--rw port?                    empty
    |  |  |     +--rw evc?                     string {ios-features:eth-evc}?
    |  |  |     +--rw vlan?                    uint16
    |  |  |     +--rw direction?               enumeration
    |  |  |     +--rw ais
    |  |  |     |  +--rw expiry-threshold?   uint8
    |  |  |     |  +--rw level?              uint8
    |  |  |     |  +--rw period?             enumeration
    |  |  |     |  +--rw suppress-alarms?    empty
    |  |  |     +--rw cfm-continuity-check?    empty
    |  |  |     +--rw continuity-check-conf
    |  |  |     |  +--rw continuity-check
    |  |  |     |     +--rw interval?         enumeration
    |  |  |     |     +--rw loss-threshold?   uint8
    |  |  |     |     +--rw static
    |  |  |     |        +--rw rmep?   empty
    |  |  |     o--rw continuity-check!
    |  |  |     +--rw efd
    |  |  |     |  +--rw notify
    |  |  |     |  |  +--rw (notify-choice)?
    |  |  |     |  |     +--:(g8032)
    |  |  |     |  |     |  +--rw g8032?   empty
    |  |  |     |  |     +--:(rep)
    |  |  |     |  |        +--rw rep?     empty
    |  |  |     |  +--rw line-protocol?   empty
    |  |  |     +--rw lck
    |  |  |     |  +--rw expiry-threshold?   uint8
    |  |  |     |  +--rw level?              uint8
    |  |  |     |  +--rw period?             enumeration
    |  |  |     +--rw maximum
    |  |  |     |  +--rw meps?   uint16
    |  |  |     +--rw mep
    |  |  |     |  +--rw mpid?   uint16
    |  |  |     +--rw mip
    |  |  |     |  +--rw auto-create!
    |  |  |     |     +--rw (mip-case)?
    |  |  |     |        +--:(lower-mep-case)
    |  |  |     |        |  +--rw lower-mep-only?   empty
    |  |  |     |        +--:(none-case)
    |  |  |     |           +--rw none?             empty
    |  |  |     +--rw offload
    |  |  |     |  +--rw sampling?   uint16
    |  |  |     +--rw sender-id?               enumeration
    |  |  +--rw mep
    |  |  |  +--rw archive-hold-time?   uint16
    |  |  |  +--rw ccm-fastage?         enumeration
    |  |  |  +--rw ccm-hold-time?       uint16
    |  |  +--rw id
    |  |  |  +--rw (id-type)?
    |  |  |     +--:(dns)
    |  |  |     |  +--rw dns?      string
    |  |  |     +--:(null)
    |  |  |     |  +--rw null?     empty
    |  |  |     +--:(mac-id)
    |  |  |        +--rw mac-id
    |  |  |           +--rw mac-address?   ios-types:cisco-mac-address-type
    |  |  |           +--rw id?            uint16
    |  |  +--rw mip-config
    |  |  |  +--rw auto-create!
    |  |  |     +--rw lower-mep-only?   empty
    |  |  o--rw mip?              enumeration
    |  |  +--rw sender-id?        enumeration
    |  +--rw logging!
    |  |  +--rw ais?     empty
    |  |  +--rw alarm
    |  |  |  +--rw cisco?   empty
    |  |  |  +--rw ieee?    empty
    |  |  +--rw lck?     empty
    |  +--rw mep
    |  |  +--rw crosscheck
    |  |     +--rw start-delay?   uint16
    |  +--rw mip
    |  |  +--rw auto-create
    |  |  |  +--rw level-config
    |  |  |  |  +--rw mip-vlan* [vlan]
    |  |  |  |  |  +--rw mef-num?          uint8
    |  |  |  |  |  +--rw vlan              uint16
    |  |  |  |  |  +--rw lower-mep-only?   empty
    |  |  |  |  |  +--rw sender-id?        enumeration
    |  |  |  |  +--rw mip-evc* [evc]
    |  |  |  |     +--rw mef-num?          uint8
    |  |  |  |     +--rw evc               string
    |  |  |  |     +--rw lower-mep-only?   empty
    |  |  |  |     +--rw sender-id?        enumeration
    |  |  |  o--rw mip-level
    |  |  |  |  o--rw mip-vlan* [mef-num]
    |  |  |  |  |  o--rw mef-num    uint8
    |  |  |  |  |  o--rw vlan*      uint16
    |  |  |  |  o--rw mip-evc* [mef-num evc]
    |  |  |  |     o--rw mef-num    uint8
    |  |  |  |     o--rw evc        string
    |  |  |  o--rw level
    |  |  |     o--rw mef-num* [mef-num]
    |  |  |        o--rw mef-num    uint8
    |  |  |        o--rw evc?       string
    |  |  |        o--rw vlan?      uint16
    |  |  +--rw filter?        empty
    |  +--rw lck
    |  |  +--rw link-status
    |  |     +--rw global!
    |  |        +--rw disable?   empty
    |  |        +--rw level?     uint8
    |  |        +--rw period?    enumeration
    |  +--rw slm
    |  |  +--rw max
    |  |  |  +--rw value?   uint16
    |  |  +--rw timeout
    |  |     +--rw value?   uint16
    |  +--rw traceroute
    |     +--rw cache!
    |        +--rw hold-time?   uint16
    |        +--rw size?        uint16
    +--rw oam
    |  +--rw mib
    |  |  +--rw log
    |  |     +--rw size?   uint8
    |  +--rw trap
    |     +--rw interval?   uint16
    +--rw mac
       +--rw limit
          +--rw maximum
             +--rw addresses?   uint32
  augment /ios:native/ios:port-channel:
    +--rw auto?                     empty
    +--rw load-balance-hash-algo {ios-features:router-poch-lb}?
    |  +--rw load-balance-hash-algo?   enumeration
    +--rw load-balance
    |  +--rw load-balance?   enumeration
    |  +--rw extended!
    |     +--rw extended*   enumeration
    +--rw mc-lag?                   empty
    +--rw load-balancing
    |  +--rw vlan-manual?   empty
    +--rw swport {ios-features:routing-platform}?
       +--rw auto?           empty
       +--rw load-balance
          +--rw (load-balance-choice)?
             +--:(load-balance)
             |  +--rw load-balance?   enumeration
             +--:(extended)
                +--rw extended*       enumeration
  augment /ios:native/ios:interface/ios:Ethernet:
    +--rw ethernet
       +--rw oam!
       |  +--rw link-monitor
       |  |  +--rw frame
       |  |  |  +--rw threshold
       |  |  |  |  +--rw high-frames
       |  |  |  |  |  +--rw (high-value)?
       |  |  |  |  |     +--:(value)
       |  |  |  |  |     |  +--rw value?   uint16
       |  |  |  |  |     +--:(none)
       |  |  |  |  |        +--rw none?    empty
       |  |  |  |  o--rw high
       |  |  |  |  |  o--rw thresh?   uint16
       |  |  |  |  |  o--rw none?     empty
       |  |  |  |  +--rw low?           uint16
       |  |  |  +--rw window?      uint16
       |  |  +--rw frame-period
       |  |  |  +--rw threshold
       |  |  |  |  +--rw high-frames
       |  |  |  |  |  +--rw (high-value)?
       |  |  |  |  |     +--:(value)
       |  |  |  |  |     |  +--rw value?   uint16
       |  |  |  |  |     +--:(none)
       |  |  |  |  |        +--rw none?    empty
       |  |  |  |  o--rw high
       |  |  |  |  |  o--rw f-thresh?   uint16
       |  |  |  |  |  o--rw none?       empty
       |  |  |  |  +--rw low?           uint16
       |  |  |  +--rw window?      uint16
       |  |  +--rw frame-seconds
       |  |  |  +--rw threshold
       |  |  |  |  +--rw high-frames
       |  |  |  |  |  +--rw (high-value)?
       |  |  |  |  |     +--:(value)
       |  |  |  |  |     |  +--rw value?   uint16
       |  |  |  |  |     +--:(none)
       |  |  |  |  |        +--rw none?    empty
       |  |  |  |  o--rw high
       |  |  |  |  |  o--rw e-thresh?   uint16
       |  |  |  |  |  o--rw none?       empty
       |  |  |  |  +--rw low?           uint16
       |  |  |  +--rw window?      uint16
       |  |  +--rw high-threshold
       |  |  |  +--rw action
       |  |  |     +--rw error-disable-interface?   empty
       |  |  +--rw on?               empty
       |  |  +--rw receive-crc
       |  |  |  +--rw threshold
       |  |  |  |  +--rw high-frames
       |  |  |  |  |  +--rw (high-value)?
       |  |  |  |  |     +--:(value)
       |  |  |  |  |     |  +--rw value?   uint16
       |  |  |  |  |     +--:(none)
       |  |  |  |  |        +--rw none?    empty
       |  |  |  |  o--rw high
       |  |  |  |  |  o--rw crc-thresh?   uint16
       |  |  |  |  |  o--rw none?         empty
       |  |  |  |  +--rw low?           uint16
       |  |  |  +--rw window?      uint16
       |  |  +--rw supported?        empty
       |  |  +--rw symbol-period
       |  |     +--rw threshold
       |  |     |  +--rw high-symbols
       |  |     |  |  +--rw (high-value)?
       |  |     |  |     +--:(value)
       |  |     |  |     |  +--rw value?   uint16
       |  |     |  |     +--:(none)
       |  |     |  |        +--rw none?    empty
       |  |     |  o--rw high
       |  |     |  |  o--rw err-thresh?   uint16
       |  |     |  |  o--rw none?         empty
       |  |     |  +--rw low?            uint16
       |  |     +--rw window?      uint16
       |  +--rw max-rate?          uint8
       |  +--rw min-rate?          uint8
       |  +--rw mode?              enumeration
       |  +--rw dying-gasp
       |  |  +--rw type?   enumeration
       |  +--rw remote-failure
       |  |  +--rw critical-event
       |  |  |  +--rw action
       |  |  |     +--rw error-disable-interface?   empty
       |  |  +--rw dying-gasp
       |  |  |  +--rw action!
       |  |  |     +--rw error-disable-interface?   empty
       |  |  +--rw link-fault
       |  |     +--rw action!
       |  |        +--rw error-disable-interface?   empty
       |  +--rw remote-loopback
       |  |  +--rw supported?   empty
       |  |  +--rw timeout?     uint8
       |  +--rw timeout?           uint8
       +--rw dot1ad
       |  +--rw (dot1ad-choice)?
       |     +--:(nni)
       |     |  +--rw nni?   empty
       |     +--:(uni)
       |        +--rw uni
       |           +--rw (uni-choice)?
       |              +--:(c-port)
       |              |  +--rw c-port?   empty
       |              +--:(s-port)
       |                 +--rw s-port?   empty
       +--rw loopback
       |  +--rw permit
       |     +--rw external?   empty
       |     +--rw internal?   empty
       +--rw cfm
       |  +--rw ais
       |  |  +--rw link-status
       |  |     +--rw level?    uint8
       |  |     +--rw period?   enumeration
       |  +--rw interface?   empty
       |  +--rw mep
       |  |  +--rw domain* [name]
       |  |     +--rw name    string
       |  |     +--rw mpid* [mpid-number]
       |  |        +--rw mpid-number    uint16
       |  |        +--rw service
       |  |        |  +--rw (service-type)?
       |  |        |     +--:(named-service)
       |  |        |     |  +--rw named-service* [service-name]
       |  |        |     |     +--rw service-name        string
       |  |        |     |     +--rw alarm
       |  |        |     |     |  +--rw delay?          uint16
       |  |        |     |     |  +--rw notification?   enumeration
       |  |        |     |     |  +--rw reset?          uint16
       |  |        |     |     +--rw cos?                uint16
       |  |        |     |     +--rw continuity-check
       |  |        |     |     |  +--rw static
       |  |        |     |     |     +--rw rmep?   empty
       |  |        |     |     +--rw rmep* [id]
       |  |        |     |        +--rw id      uint16
       |  |        |     |        +--rw mpid?   empty
       |  |        |     +--:(icc)
       |  |        |     |  +--rw icc* [code]
       |  |        |     |     +--rw code                string
       |  |        |     |     +--rw meg-id?             string
       |  |        |     |     +--rw alarm
       |  |        |     |     |  +--rw delay?          uint16
       |  |        |     |     |  +--rw notification?   enumeration
       |  |        |     |     |  +--rw reset?          uint16
       |  |        |     |     +--rw cos?                uint16
       |  |        |     |     +--rw continuity-check
       |  |        |     |     |  +--rw static
       |  |        |     |     |     +--rw rmep?   empty
       |  |        |     |     +--rw rmep* [id]
       |  |        |     |        +--rw id      uint16
       |  |        |     |        +--rw mpid?   empty
       |  |        |     +--:(number)
       |  |        |     |  +--rw number* [ma-num]
       |  |        |     |     +--rw ma-num              uint16
       |  |        |     |     +--rw alarm
       |  |        |     |     |  +--rw delay?          uint16
       |  |        |     |     |  +--rw notification?   enumeration
       |  |        |     |     |  +--rw reset?          uint16
       |  |        |     |     +--rw cos?                uint16
       |  |        |     |     +--rw continuity-check
       |  |        |     |     |  +--rw static
       |  |        |     |     |     +--rw rmep?   empty
       |  |        |     |     +--rw rmep* [id]
       |  |        |     |        +--rw id      uint16
       |  |        |     |        +--rw mpid?   empty
       |  |        |     +--:(vlan-id)
       |  |        |     |  +--rw vlan-id* [vlan-num]
       |  |        |     |     +--rw vlan-num            uint16
       |  |        |     |     +--rw alarm
       |  |        |     |     |  +--rw delay?          uint16
       |  |        |     |     |  +--rw notification?   enumeration
       |  |        |     |     |  +--rw reset?          uint16
       |  |        |     |     +--rw cos?                uint16
       |  |        |     |     +--rw continuity-check
       |  |        |     |     |  +--rw static
       |  |        |     |     |     +--rw rmep?   empty
       |  |        |     |     +--rw rmep* [id]
       |  |        |     |        +--rw id      uint16
       |  |        |     |        +--rw mpid?   empty
       |  |        |     +--:(vpn-id)
       |  |        |        +--rw vpn-id* [vpn]
       |  |        |           +--rw vpn                 uint16
       |  |        |           +--rw alarm
       |  |        |           |  +--rw delay?          uint16
       |  |        |           |  +--rw notification?   enumeration
       |  |        |           |  +--rw reset?          uint16
       |  |        |           +--rw cos?                uint16
       |  |        |           +--rw continuity-check
       |  |        |           |  +--rw static
       |  |        |           |     +--rw rmep?   empty
       |  |        |           +--rw rmep* [id]
       |  |        |              +--rw id      uint16
       |  |        |              +--rw mpid?   empty
       |  |        +--rw port?          empty
       |  |        +--rw vlan?          uint16
       |  +--rw mip
       |     +--rw level* [level-number]
       |        +--rw level-number    uint8
       |        +--rw vlan?           string
       +--rw uni
          +--rw (uni-choice)?
          |  +--:(bundle)
          |  |  +--rw bundle!
          |  |     +--rw all-to-one?   empty
          |  +--:(multiplex)
          |     +--rw multiplex?   empty
          +--rw id?                string
  augment /ios:native/ios:interface/ios:FastEthernet:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
       +--rw macsec
          +--rw dot1q-in-clear?      enumeration
          o--rw replay-protection
          |  o--rw window-size?   uint32
          o--rw access-control?      enumeration
          +--rw disable-sci-v2?      empty
          o--rw disable-sci?         boolean
  augment /ios:native/ios:interface/ios:GigabitEthernet:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
    |  +--rw macsec
    |     +--rw dot1q-in-clear?      enumeration
    |     o--rw replay-protection
    |     |  o--rw window-size?   uint32
    |     o--rw access-control?      enumeration
    |     +--rw disable-sci-v2?      empty
    |     o--rw disable-sci?         boolean
    +--rw mrp {ios-features:mrp}?
       +--rw ring?   uint8
  augment /ios:native/ios:interface/ios:TwoGigabitEthernet:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
       +--rw macsec
          +--rw dot1q-in-clear?      enumeration
          o--rw replay-protection
          |  o--rw window-size?   uint32
          o--rw access-control?      enumeration
          +--rw disable-sci-v2?      empty
          o--rw disable-sci?         boolean
  augment /ios:native/ios:interface/ios:FiveGigabitEthernet:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
       +--rw macsec
          +--rw dot1q-in-clear?      enumeration
          o--rw replay-protection
          |  o--rw window-size?   uint32
          o--rw access-control?      enumeration
          +--rw disable-sci-v2?      empty
          o--rw disable-sci?         boolean
  augment /ios:native/ios:interface/ios:AppGigabitEthernet:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
       +--rw macsec
          +--rw dot1q-in-clear?      enumeration
          o--rw replay-protection
          |  o--rw window-size?   uint32
          o--rw access-control?      enumeration
          +--rw disable-sci-v2?      empty
          o--rw disable-sci?         boolean
  augment /ios:native/ios:interface/ios:TenGigabitEthernet:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
       +--rw macsec
          +--rw dot1q-in-clear?      enumeration
          o--rw replay-protection
          |  o--rw window-size?   uint32
          o--rw access-control?      enumeration
          +--rw disable-sci-v2?      empty
          o--rw disable-sci?         boolean
  augment /ios:native/ios:interface/ios:TwentyFiveGigE:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
    |  +--rw macsec
    |     +--rw dot1q-in-clear?      enumeration
    |     o--rw replay-protection
    |     |  o--rw window-size?   uint32
    |     o--rw access-control?      enumeration
    |     +--rw disable-sci-v2?      empty
    |     o--rw disable-sci?         boolean
    x--rw fec_check
  augment /ios:native/ios:interface/ios:FortyGigabitEthernet:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
       +--rw macsec
          +--rw dot1q-in-clear?      enumeration
          o--rw replay-protection
          |  o--rw window-size?   uint32
          o--rw access-control?      enumeration
          +--rw disable-sci-v2?      empty
          o--rw disable-sci?         boolean
  augment /ios:native/ios:interface/ios:FiftyGigabitEthernet:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
       +--rw macsec
          +--rw dot1q-in-clear?      enumeration
          o--rw replay-protection
          |  o--rw window-size?   uint32
          o--rw access-control?      enumeration
          +--rw disable-sci-v2?      empty
          o--rw disable-sci?         boolean
  augment /ios:native/ios:interface/ios:HundredGigE:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    +--rw channel-group
    |  +--rw number?       uint16
    |  +--rw mode?         enumeration
    |  +--rw non-silent?   empty
    |  +--rw link?         uint8
    |  +--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw port-priority?   uint32
    |  +--rw rate?            enumeration
    o--rw macsec?             boolean {ios-features:macsec}?
    +--rw macsec-option {ios-features:macsec}?
       +--rw macsec
          +--rw dot1q-in-clear?      enumeration
          o--rw replay-protection
          |  o--rw window-size?   uint32
          o--rw access-control?      enumeration
          +--rw disable-sci-v2?      empty
          o--rw disable-sci?         boolean
  augment /ios:native/ios:interface/ios:Port-channel:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    o--rw channel-group
    |  o--rw number?       uint16
    |  o--rw mode?         enumeration
    |  o--rw non-silent?   empty
    |  o--rw link?         uint8
    |  o--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
    |  +--rw failover?          enumeration
    |  +--rw fast-switchover?   empty
    |  +--rw max-bundle?        uint8
    |  +--rw min-bundle?        uint8
    +--rw mlacp
       +--rw interchassis
          +--rw group?   uint32
  augment /ios:native/ios:interface/ios:Port-channel-subinterface/ios:Port-channel:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    o--rw channel-group
    |  o--rw number?       uint16
    |  o--rw mode?         enumeration
    |  o--rw non-silent?   empty
    |  o--rw link?         uint8
    |  o--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
       +--rw instance* [id]
          +--rw id                    uint32
          +--rw trunk?                empty
          +--rw GigabitEthernet?      empty
          +--rw ethernet?             empty
          +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
          +--rw description?          string
          +--rw evc-name?             string
          +--rw track?                uint16
          +--rw encapsulation
          |  +--rw default?           empty
          |  +--rw dot1ad
          |  |  +--rw id*          union
          |  |  +--rw cos*         uint8
          |  |  +--rw dot1q*       union
          |  |  +--rw cos2
          |  |  |  +--rw cos*   uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?   union
          |  |  o--rw etype*       enumeration
          |  |  +--rw exact?       empty
          |  +--rw dot1q
          |  |  +--rw id*             union
          |  |  +--rw cos*            uint8
          |  |  +--rw second-dot1q*   union
          |  |  +--rw cos2
          |  |  |  +--rw cos*   uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?      union
          |  |  o--rw etype*          enumeration
          |  |  +--rw exact?          empty
          |  |  +--rw vlan-type?      enumeration
          |  +--rw priority-tagged!
          |  |  +--rw cos*         uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?   union
          |  |  o--rw etype*       enumeration
          |  +--rw untagged!
          |     +--rw comma?             enumeration
          |     +--rw priority-tagged!
          |     |  +--rw comma?   enumeration
          |     +--rw dot1ad
          |     |  +--rw id*          union
          |     |  +--rw cos*         uint8
          |     |  +--rw dot1q*       union
          |     |  +--rw cos2
          |     |  |  +--rw cos*   uint8
          |     |  +--rw ext-etype
          |     |  |  +--rw ipv4?              empty
          |     |  |  +--rw ipv6?              empty
          |     |  |  +--rw pppoe-all?         empty
          |     |  |  +--rw pppoe-discovery?   empty
          |     |  |  +--rw pppoe-session?     empty
          |     |  +--rw exact?       empty
          |     +--rw dot1q
          |     |  +--rw id*             union
          |     |  +--rw cos*            uint8
          |     |  +--rw second-dot1q*   union
          |     |  +--rw cos2
          |     |  |  +--rw cos*   uint8
          |     |  +--rw ext-etype
          |     |  |  +--rw ipv4?              empty
          |     |  |  +--rw ipv6?              empty
          |     |  |  +--rw pppoe-all?         empty
          |     |  |  +--rw pppoe-discovery?   empty
          |     |  |  +--rw pppoe-session?     empty
          |     |  +--rw exact?          empty
          |     |  +--rw vlan-type?      enumeration
          |     +--rw ext-etype
          |        +--rw ipv4?              empty
          |        +--rw ipv6?              empty
          |        +--rw pppoe-all?         empty
          |        +--rw pppoe-discovery?   empty
          |        +--rw pppoe-session?     empty
          +--rw ip
          |  +--rw access-group-list* [direction]
          |  |  +--rw direction      enumeration
          |  |  +--rw access-list?   string
          |  o--rw acl
          |  |  o--rw access-group?   ios-types:exp-acl-type
          |  |  o--rw in?             empty
          |  |  o--rw out?            empty
          |  +--rw dhcp
          |  |  +--rw relay
          |  |     +--rw information
          |  |        +--rw option
          |  |           +--rw subscriber-id?   string
          |  +--rw verify
          |     +--rw source?          empty
          |     +--rw vlan?            empty
          |     +--rw dhcp-snooping?   empty
          |     +--rw port-security?   empty
          +--rw eapol
          |  +--rw destination-address
          |  |  +--rw (destination-type)?
          |  |     +--:(mac-address)
          |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
          |  |     +--:(bridge-group-address)
          |  |     |  +--rw bridge-group-address?     empty
          |  |     +--:(broadcast-address)
          |  |     |  +--rw broadcast-address?        empty
          |  |     +--:(lldp-multicast-address)
          |  |        +--rw lldp-multicast-address?   empty
          |  +--rw eth-type
          |     +--rw eth-876F?   empty
          +--rw storm-control
          |  +--rw broadcast
          |  |  +--rw cir?   uint32
          |  +--rw multicast
          |  |  +--rw cir?   uint32
          |  +--rw unicast
          |     +--rw cir?   uint32
          +--rw ipv6
          |  +--rw traffic-filter-list* [direction]
          |  |  +--rw direction      enumeration
          |  |  +--rw access-list?   string
          |  o--rw traffic-filter?        string
          |  o--rw in?                    empty
          |  o--rw out?                   empty
          +--rw rewrite
          |  +--rw ingress
          |     +--rw tag-config
          |     |  +--rw (rewrite-op)?
          |     |     +--:(pop-op)
          |     |     |  +--rw pop-op
          |     |     |     +--rw way?    enumeration
          |     |     |     +--rw mode?   enumeration
          |     |     +--:(push-op)
          |     |     |  +--rw push-op
          |     |     |     +--rw dot1ad?         uint16
          |     |     |     +--rw dot1q?          uint16
          |     |     |     +--rw vlan-type?      enumeration
          |     |     |     +--rw second-dot1q?   uint16
          |     |     |     +--rw mode?           enumeration
          |     |     +--:(translate-op)
          |     |        +--rw translate-op
          |     |           +--rw (translate-operation)?
          |     |              +--:(t1-to-1)
          |     |              |  +--rw t1-to-1
          |     |              |     +--rw dot1ad?      uint16
          |     |              |     +--rw dot1q?       uint16
          |     |              |     +--rw vlan-type?   enumeration
          |     |              |     +--rw mode?        enumeration
          |     |              +--:(t1-to-2)
          |     |              |  +--rw t1-to-2
          |     |              |     +--rw dot1ad?         uint16
          |     |              |     +--rw dot1q?          uint16
          |     |              |     +--rw vlan-type?      enumeration
          |     |              |     +--rw second-dot1q?   uint16
          |     |              |     +--rw mode?           enumeration
          |     |              +--:(t2-to-1)
          |     |              |  +--rw t2-to-1
          |     |              |     +--rw dot1ad?      uint16
          |     |              |     +--rw dot1q?       uint16
          |     |              |     +--rw vlan-type?   enumeration
          |     |              |     +--rw mode?        enumeration
          |     |              +--:(t2-to-2)
          |     |                 +--rw t2-to-2
          |     |                    +--rw dot1ad?         uint16
          |     |                    +--rw dot1q?          uint16
          |     |                    +--rw vlan-type?      enumeration
          |     |                    +--rw second-dot1q?   uint16
          |     |                    +--rw mode?           enumeration
          |     o--rw tag
          |        o--rw pop
          |        |  o--rw way?    enumeration
          |        |  o--rw mode?   enumeration
          |        o--rw push
          |        |  o--rw dot1q?   uint16
          |        |  o--rw mode?    enumeration
          |        o--rw translate
          |           o--rw t1-to-1
          |           |  o--rw dot1q?   uint16
          |           |  o--rw mode?    enumeration
          |           o--rw t1-to-2
          |           |  o--rw dot1q?          uint16
          |           |  o--rw second-dot1q?   uint16
          |           |  o--rw mode?           enumeration
          |           o--rw t2-to-1
          |           |  o--rw dot1q?   uint16
          |           |  o--rw mode?    enumeration
          |           o--rw t2-to-2
          |              o--rw dot1q?          uint16
          |              o--rw second-dot1q?   uint16
          |              o--rw mode?           enumeration
          +--rw group?                uint32
          +--rw errdisable
          |  +--rw recovery
          |     +--rw cause
          |        +--rw mac-security?     uint32
          |        +--rw l2proto-tunnel?   uint32
          |        +--rw storm-control?    uint32
          +--rw ethernet-container
          |  +--rw ethernet
          |     +--rw lmi
          |     |  +--rw ce-vlan
          |     |     +--rw map
          |     |        +--rw (map-choice)?
          |     |           +--:(any)
          |     |           |  +--rw any?          empty
          |     |           +--:(default)
          |     |           |  +--rw default?      empty
          |     |           +--:(untagged)
          |     |           |  +--rw untagged?     empty
          |     |           +--:(vlan-range)
          |     |              +--rw vlan-range?   string
          |     +--rw loopback
          |        +--rw permit
          |           +--rw external?   empty
          |           +--rw internal?   empty
          +--rw snmp
          |  +--rw trap
          |  |  +--rw link-status?   empty
          |  +--rw ifindex-persistence
          |  |  +--rw (persistence)?
          |  |     +--:(persist)
          |  |     |  +--rw persist?   empty
          |  |     +--:(clear)
          |  |        +--rw clear?     empty
          |  o--rw ifindex
          |     o--rw persist?   empty
          +--rw bridge-domain
          |  +--rw bridge-id?                uint16
          |  +--rw split-horizon-presence!
          |  |  +--rw group?   uint8
          |  o--rw split-horizon
          |  |  o--rw group?   uint8
          |  +--rw from-encapsulation?       empty
          +--rw mac
          |  +--rw security!
          |  |  +--rw address
          |  |  |  +--rw deny* [mac]
          |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
          |  |  |  +--rw permit* [mac]
          |  |  |     +--rw mac    ios-types:cisco-mac-address-type
          |  |  +--rw aging
          |  |  |  +--rw static?   empty
          |  |  |  +--rw sticky?   empty
          |  |  |  +--rw time
          |  |  |     +--rw duration?     uint16
          |  |  |     +--rw inactivity?   empty
          |  |  +--rw maximum
          |  |  |  +--rw addresses?   uint16
          |  |  +--rw sticky?      empty
          |  |  +--rw violation?   enumeration
          |  +--rw access-group* [acl-name]
          |     +--rw acl-name    string
          |     +--rw in?         empty
          |     +--rw out?        empty
          +--rw service-policy
          |  +--rw input* [name]
          |  |  +--rw name    string
          |  +--rw output* [name]
          |     +--rw name    string
          +--rw shutdown?             empty
          +--rw cfm
          |  +--rw encapsulation
          |  |  +--rw dot1ad
          |  |  |  +--rw vlan-id?   uint16
          |  |  |  +--rw cos?       uint8
          |  |  |  +--rw dot1q?     uint16
          |  |  |  +--rw cos2
          |  |  |     +--rw cos?   uint8
          |  |  +--rw dot1q
          |  |     +--rw vlan-id?        uint16
          |  |     +--rw cos?            uint8
          |  |     +--rw second-dot1q?   uint16
          |  |     +--rw cos2
          |  |        +--rw cos?   uint8
          |  +--rw mep-list
          |  |  +--rw domain* [name]
          |  |     +--rw name                string
          |  |     +--rw mpid                uint16
          |  |     +--rw unicast?            empty
          |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
          |  |     +--rw alarm
          |  |     |  +--rw delay?          uint16
          |  |     |  +--rw notification?   enumeration
          |  |     |  +--rw reset?          uint16
          |  |     +--rw cos?                uint16
          |  |     +--rw continuity-check
          |  |     |  +--rw static
          |  |     |     +--rw rmep?   empty
          |  |     +--rw rmep
          |  |        +--rw mpid?   uint16
          |  o--rw mep
          |  |  o--rw domain?             string
          |  |  o--rw mpid?               uint16
          |  |  o--rw alarm
          |  |  |  o--rw delay?          uint16
          |  |  |  o--rw notification
          |  |  |  |  o--rw all?                     empty
          |  |  |  |  o--rw error-xcon?              empty
          |  |  |  |  o--rw mac-remote-error-xcon?   empty
          |  |  |  |  o--rw none?                    empty
          |  |  |  |  o--rw remote-error-xcon?       empty
          |  |  |  |  o--rw xcon?                    empty
          |  |  |  o--rw reset?          uint16
          |  |  o--rw cos?                uint16
          |  |  o--rw continuity-check
          |  |  |  +--rw static
          |  |  |     o--rw rmep?   empty
          |  |  o--rw rmep
          |  |     o--rw mpid?   uint16
          |  +--rw mip
          |  |  +--rw level?   uint8
          |  +--rw latching-loopback {ios-features:ecfm-llb}?
          |     +--rw domain?       string
          |     +--rw responder?    empty
          |     +--rw controller
          |        +--rw discover-interval?   uint8
          +--rw l2protocol
          |  +--rw discard!
          |  |  +--rw protocol*   enumeration
          |  +--rw peer!
          |  |  +--rw protocol*   enumeration
          |  +--rw forward!
          |  |  +--rw protocol*   enumeration
          |  +--rw tunnel!
          |     +--rw protocol*   enumeration
          +--rw lldp
             +--rw enable?   empty
  augment /ios:native/ios:interface/ios:VirtualPortGroup:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    o--rw channel-group
    |  o--rw number?       uint16
    |  o--rw mode?         enumeration
    |  o--rw non-silent?   empty
    |  o--rw link?         uint8
    |  o--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
       +--rw port-priority?   uint32
       +--rw rate?            enumeration
  augment /ios:native/ios:interface/ios:Virtual-Template:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    o--rw channel-group
    |  o--rw number?       uint16
    |  o--rw mode?         enumeration
    |  o--rw non-silent?   empty
    |  o--rw link?         uint8
    |  o--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
    |  +--rw instance* [id]
    |     +--rw id                    uint32
    |     +--rw trunk?                empty
    |     +--rw GigabitEthernet?      empty
    |     +--rw ethernet?             empty
    |     +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
    |     +--rw description?          string
    |     +--rw evc-name?             string
    |     +--rw track?                uint16
    |     +--rw encapsulation
    |     |  +--rw default?           empty
    |     |  +--rw dot1ad
    |     |  |  +--rw id*          union
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw dot1q*       union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  |  +--rw exact?       empty
    |     |  +--rw dot1q
    |     |  |  +--rw id*             union
    |     |  |  +--rw cos*            uint8
    |     |  |  +--rw second-dot1q*   union
    |     |  |  +--rw cos2
    |     |  |  |  +--rw cos*   uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?      union
    |     |  |  o--rw etype*          enumeration
    |     |  |  +--rw exact?          empty
    |     |  |  +--rw vlan-type?      enumeration
    |     |  +--rw priority-tagged!
    |     |  |  +--rw cos*         uint8
    |     |  |  +--rw ext-etype
    |     |  |  |  +--rw ipv4?              empty
    |     |  |  |  +--rw ipv6?              empty
    |     |  |  |  +--rw pppoe-all?         empty
    |     |  |  |  +--rw pppoe-discovery?   empty
    |     |  |  |  +--rw pppoe-session?     empty
    |     |  |  +--rw ethertype?   union
    |     |  |  o--rw etype*       enumeration
    |     |  +--rw untagged!
    |     |     +--rw comma?             enumeration
    |     |     +--rw priority-tagged!
    |     |     |  +--rw comma?   enumeration
    |     |     +--rw dot1ad
    |     |     |  +--rw id*          union
    |     |     |  +--rw cos*         uint8
    |     |     |  +--rw dot1q*       union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?       empty
    |     |     +--rw dot1q
    |     |     |  +--rw id*             union
    |     |     |  +--rw cos*            uint8
    |     |     |  +--rw second-dot1q*   union
    |     |     |  +--rw cos2
    |     |     |  |  +--rw cos*   uint8
    |     |     |  +--rw ext-etype
    |     |     |  |  +--rw ipv4?              empty
    |     |     |  |  +--rw ipv6?              empty
    |     |     |  |  +--rw pppoe-all?         empty
    |     |     |  |  +--rw pppoe-discovery?   empty
    |     |     |  |  +--rw pppoe-session?     empty
    |     |     |  +--rw exact?          empty
    |     |     |  +--rw vlan-type?      enumeration
    |     |     +--rw ext-etype
    |     |        +--rw ipv4?              empty
    |     |        +--rw ipv6?              empty
    |     |        +--rw pppoe-all?         empty
    |     |        +--rw pppoe-discovery?   empty
    |     |        +--rw pppoe-session?     empty
    |     +--rw ip
    |     |  +--rw access-group-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw acl
    |     |  |  o--rw access-group?   ios-types:exp-acl-type
    |     |  |  o--rw in?             empty
    |     |  |  o--rw out?            empty
    |     |  +--rw dhcp
    |     |  |  +--rw relay
    |     |  |     +--rw information
    |     |  |        +--rw option
    |     |  |           +--rw subscriber-id?   string
    |     |  +--rw verify
    |     |     +--rw source?          empty
    |     |     +--rw vlan?            empty
    |     |     +--rw dhcp-snooping?   empty
    |     |     +--rw port-security?   empty
    |     +--rw eapol
    |     |  +--rw destination-address
    |     |  |  +--rw (destination-type)?
    |     |  |     +--:(mac-address)
    |     |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |     |  |     +--:(bridge-group-address)
    |     |  |     |  +--rw bridge-group-address?     empty
    |     |  |     +--:(broadcast-address)
    |     |  |     |  +--rw broadcast-address?        empty
    |     |  |     +--:(lldp-multicast-address)
    |     |  |        +--rw lldp-multicast-address?   empty
    |     |  +--rw eth-type
    |     |     +--rw eth-876F?   empty
    |     +--rw storm-control
    |     |  +--rw broadcast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw multicast
    |     |  |  +--rw cir?   uint32
    |     |  +--rw unicast
    |     |     +--rw cir?   uint32
    |     +--rw ipv6
    |     |  +--rw traffic-filter-list* [direction]
    |     |  |  +--rw direction      enumeration
    |     |  |  +--rw access-list?   string
    |     |  o--rw traffic-filter?        string
    |     |  o--rw in?                    empty
    |     |  o--rw out?                   empty
    |     +--rw rewrite
    |     |  +--rw ingress
    |     |     +--rw tag-config
    |     |     |  +--rw (rewrite-op)?
    |     |     |     +--:(pop-op)
    |     |     |     |  +--rw pop-op
    |     |     |     |     +--rw way?    enumeration
    |     |     |     |     +--rw mode?   enumeration
    |     |     |     +--:(push-op)
    |     |     |     |  +--rw push-op
    |     |     |     |     +--rw dot1ad?         uint16
    |     |     |     |     +--rw dot1q?          uint16
    |     |     |     |     +--rw vlan-type?      enumeration
    |     |     |     |     +--rw second-dot1q?   uint16
    |     |     |     |     +--rw mode?           enumeration
    |     |     |     +--:(translate-op)
    |     |     |        +--rw translate-op
    |     |     |           +--rw (translate-operation)?
    |     |     |              +--:(t1-to-1)
    |     |     |              |  +--rw t1-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t1-to-2)
    |     |     |              |  +--rw t1-to-2
    |     |     |              |     +--rw dot1ad?         uint16
    |     |     |              |     +--rw dot1q?          uint16
    |     |     |              |     +--rw vlan-type?      enumeration
    |     |     |              |     +--rw second-dot1q?   uint16
    |     |     |              |     +--rw mode?           enumeration
    |     |     |              +--:(t2-to-1)
    |     |     |              |  +--rw t2-to-1
    |     |     |              |     +--rw dot1ad?      uint16
    |     |     |              |     +--rw dot1q?       uint16
    |     |     |              |     +--rw vlan-type?   enumeration
    |     |     |              |     +--rw mode?        enumeration
    |     |     |              +--:(t2-to-2)
    |     |     |                 +--rw t2-to-2
    |     |     |                    +--rw dot1ad?         uint16
    |     |     |                    +--rw dot1q?          uint16
    |     |     |                    +--rw vlan-type?      enumeration
    |     |     |                    +--rw second-dot1q?   uint16
    |     |     |                    +--rw mode?           enumeration
    |     |     o--rw tag
    |     |        o--rw pop
    |     |        |  o--rw way?    enumeration
    |     |        |  o--rw mode?   enumeration
    |     |        o--rw push
    |     |        |  o--rw dot1q?   uint16
    |     |        |  o--rw mode?    enumeration
    |     |        o--rw translate
    |     |           o--rw t1-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t1-to-2
    |     |           |  o--rw dot1q?          uint16
    |     |           |  o--rw second-dot1q?   uint16
    |     |           |  o--rw mode?           enumeration
    |     |           o--rw t2-to-1
    |     |           |  o--rw dot1q?   uint16
    |     |           |  o--rw mode?    enumeration
    |     |           o--rw t2-to-2
    |     |              o--rw dot1q?          uint16
    |     |              o--rw second-dot1q?   uint16
    |     |              o--rw mode?           enumeration
    |     +--rw group?                uint32
    |     +--rw errdisable
    |     |  +--rw recovery
    |     |     +--rw cause
    |     |        +--rw mac-security?     uint32
    |     |        +--rw l2proto-tunnel?   uint32
    |     |        +--rw storm-control?    uint32
    |     +--rw ethernet-container
    |     |  +--rw ethernet
    |     |     +--rw lmi
    |     |     |  +--rw ce-vlan
    |     |     |     +--rw map
    |     |     |        +--rw (map-choice)?
    |     |     |           +--:(any)
    |     |     |           |  +--rw any?          empty
    |     |     |           +--:(default)
    |     |     |           |  +--rw default?      empty
    |     |     |           +--:(untagged)
    |     |     |           |  +--rw untagged?     empty
    |     |     |           +--:(vlan-range)
    |     |     |              +--rw vlan-range?   string
    |     |     +--rw loopback
    |     |        +--rw permit
    |     |           +--rw external?   empty
    |     |           +--rw internal?   empty
    |     +--rw snmp
    |     |  +--rw trap
    |     |  |  +--rw link-status?   empty
    |     |  +--rw ifindex-persistence
    |     |  |  +--rw (persistence)?
    |     |  |     +--:(persist)
    |     |  |     |  +--rw persist?   empty
    |     |  |     +--:(clear)
    |     |  |        +--rw clear?     empty
    |     |  o--rw ifindex
    |     |     o--rw persist?   empty
    |     +--rw bridge-domain
    |     |  +--rw bridge-id?                uint16
    |     |  +--rw split-horizon-presence!
    |     |  |  +--rw group?   uint8
    |     |  o--rw split-horizon
    |     |  |  o--rw group?   uint8
    |     |  +--rw from-encapsulation?       empty
    |     +--rw mac
    |     |  +--rw security!
    |     |  |  +--rw address
    |     |  |  |  +--rw deny* [mac]
    |     |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  |  +--rw permit* [mac]
    |     |  |  |     +--rw mac    ios-types:cisco-mac-address-type
    |     |  |  +--rw aging
    |     |  |  |  +--rw static?   empty
    |     |  |  |  +--rw sticky?   empty
    |     |  |  |  +--rw time
    |     |  |  |     +--rw duration?     uint16
    |     |  |  |     +--rw inactivity?   empty
    |     |  |  +--rw maximum
    |     |  |  |  +--rw addresses?   uint16
    |     |  |  +--rw sticky?      empty
    |     |  |  +--rw violation?   enumeration
    |     |  +--rw access-group* [acl-name]
    |     |     +--rw acl-name    string
    |     |     +--rw in?         empty
    |     |     +--rw out?        empty
    |     +--rw service-policy
    |     |  +--rw input* [name]
    |     |  |  +--rw name    string
    |     |  +--rw output* [name]
    |     |     +--rw name    string
    |     +--rw shutdown?             empty
    |     +--rw cfm
    |     |  +--rw encapsulation
    |     |  |  +--rw dot1ad
    |     |  |  |  +--rw vlan-id?   uint16
    |     |  |  |  +--rw cos?       uint8
    |     |  |  |  +--rw dot1q?     uint16
    |     |  |  |  +--rw cos2
    |     |  |  |     +--rw cos?   uint8
    |     |  |  +--rw dot1q
    |     |  |     +--rw vlan-id?        uint16
    |     |  |     +--rw cos?            uint8
    |     |  |     +--rw second-dot1q?   uint16
    |     |  |     +--rw cos2
    |     |  |        +--rw cos?   uint8
    |     |  +--rw mep-list
    |     |  |  +--rw domain* [name]
    |     |  |     +--rw name                string
    |     |  |     +--rw mpid                uint16
    |     |  |     +--rw unicast?            empty
    |     |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
    |     |  |     +--rw alarm
    |     |  |     |  +--rw delay?          uint16
    |     |  |     |  +--rw notification?   enumeration
    |     |  |     |  +--rw reset?          uint16
    |     |  |     +--rw cos?                uint16
    |     |  |     +--rw continuity-check
    |     |  |     |  +--rw static
    |     |  |     |     +--rw rmep?   empty
    |     |  |     +--rw rmep
    |     |  |        +--rw mpid?   uint16
    |     |  o--rw mep
    |     |  |  o--rw domain?             string
    |     |  |  o--rw mpid?               uint16
    |     |  |  o--rw alarm
    |     |  |  |  o--rw delay?          uint16
    |     |  |  |  o--rw notification
    |     |  |  |  |  o--rw all?                     empty
    |     |  |  |  |  o--rw error-xcon?              empty
    |     |  |  |  |  o--rw mac-remote-error-xcon?   empty
    |     |  |  |  |  o--rw none?                    empty
    |     |  |  |  |  o--rw remote-error-xcon?       empty
    |     |  |  |  |  o--rw xcon?                    empty
    |     |  |  |  o--rw reset?          uint16
    |     |  |  o--rw cos?                uint16
    |     |  |  o--rw continuity-check
    |     |  |  |  +--rw static
    |     |  |  |     o--rw rmep?   empty
    |     |  |  o--rw rmep
    |     |  |     o--rw mpid?   uint16
    |     |  +--rw mip
    |     |  |  +--rw level?   uint8
    |     |  +--rw latching-loopback {ios-features:ecfm-llb}?
    |     |     +--rw domain?       string
    |     |     +--rw responder?    empty
    |     |     +--rw controller
    |     |        +--rw discover-interval?   uint8
    |     +--rw l2protocol
    |     |  +--rw discard!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw peer!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw forward!
    |     |  |  +--rw protocol*   enumeration
    |     |  +--rw tunnel!
    |     |     +--rw protocol*   enumeration
    |     +--rw lldp
    |        +--rw enable?   empty
    +--rw lacp
       +--rw port-priority?   uint32
       +--rw rate?            enumeration
  augment /ios:native/ios:interface/ios:BDI:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    o--rw channel-group
    |  o--rw number?       uint16
    |  o--rw mode?         enumeration
    |  o--rw non-silent?   empty
    |  o--rw link?         uint8
    |  o--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
       +--rw instance* [id]
          +--rw id                    uint32
          +--rw trunk?                empty
          +--rw GigabitEthernet?      empty
          +--rw ethernet?             empty
          +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
          +--rw description?          string
          +--rw evc-name?             string
          +--rw track?                uint16
          +--rw encapsulation
          |  +--rw default?           empty
          |  +--rw dot1ad
          |  |  +--rw id*          union
          |  |  +--rw cos*         uint8
          |  |  +--rw dot1q*       union
          |  |  +--rw cos2
          |  |  |  +--rw cos*   uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?   union
          |  |  o--rw etype*       enumeration
          |  |  +--rw exact?       empty
          |  +--rw dot1q
          |  |  +--rw id*             union
          |  |  +--rw cos*            uint8
          |  |  +--rw second-dot1q*   union
          |  |  +--rw cos2
          |  |  |  +--rw cos*   uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?      union
          |  |  o--rw etype*          enumeration
          |  |  +--rw exact?          empty
          |  |  +--rw vlan-type?      enumeration
          |  +--rw priority-tagged!
          |  |  +--rw cos*         uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?   union
          |  |  o--rw etype*       enumeration
          |  +--rw untagged!
          |     +--rw comma?             enumeration
          |     +--rw priority-tagged!
          |     |  +--rw comma?   enumeration
          |     +--rw dot1ad
          |     |  +--rw id*          union
          |     |  +--rw cos*         uint8
          |     |  +--rw dot1q*       union
          |     |  +--rw cos2
          |     |  |  +--rw cos*   uint8
          |     |  +--rw ext-etype
          |     |  |  +--rw ipv4?              empty
          |     |  |  +--rw ipv6?              empty
          |     |  |  +--rw pppoe-all?         empty
          |     |  |  +--rw pppoe-discovery?   empty
          |     |  |  +--rw pppoe-session?     empty
          |     |  +--rw exact?       empty
          |     +--rw dot1q
          |     |  +--rw id*             union
          |     |  +--rw cos*            uint8
          |     |  +--rw second-dot1q*   union
          |     |  +--rw cos2
          |     |  |  +--rw cos*   uint8
          |     |  +--rw ext-etype
          |     |  |  +--rw ipv4?              empty
          |     |  |  +--rw ipv6?              empty
          |     |  |  +--rw pppoe-all?         empty
          |     |  |  +--rw pppoe-discovery?   empty
          |     |  |  +--rw pppoe-session?     empty
          |     |  +--rw exact?          empty
          |     |  +--rw vlan-type?      enumeration
          |     +--rw ext-etype
          |        +--rw ipv4?              empty
          |        +--rw ipv6?              empty
          |        +--rw pppoe-all?         empty
          |        +--rw pppoe-discovery?   empty
          |        +--rw pppoe-session?     empty
          +--rw ip
          |  +--rw access-group-list* [direction]
          |  |  +--rw direction      enumeration
          |  |  +--rw access-list?   string
          |  o--rw acl
          |  |  o--rw access-group?   ios-types:exp-acl-type
          |  |  o--rw in?             empty
          |  |  o--rw out?            empty
          |  +--rw dhcp
          |  |  +--rw relay
          |  |     +--rw information
          |  |        +--rw option
          |  |           +--rw subscriber-id?   string
          |  +--rw verify
          |     +--rw source?          empty
          |     +--rw vlan?            empty
          |     +--rw dhcp-snooping?   empty
          |     +--rw port-security?   empty
          +--rw eapol
          |  +--rw destination-address
          |  |  +--rw (destination-type)?
          |  |     +--:(mac-address)
          |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
          |  |     +--:(bridge-group-address)
          |  |     |  +--rw bridge-group-address?     empty
          |  |     +--:(broadcast-address)
          |  |     |  +--rw broadcast-address?        empty
          |  |     +--:(lldp-multicast-address)
          |  |        +--rw lldp-multicast-address?   empty
          |  +--rw eth-type
          |     +--rw eth-876F?   empty
          +--rw storm-control
          |  +--rw broadcast
          |  |  +--rw cir?   uint32
          |  +--rw multicast
          |  |  +--rw cir?   uint32
          |  +--rw unicast
          |     +--rw cir?   uint32
          +--rw ipv6
          |  +--rw traffic-filter-list* [direction]
          |  |  +--rw direction      enumeration
          |  |  +--rw access-list?   string
          |  o--rw traffic-filter?        string
          |  o--rw in?                    empty
          |  o--rw out?                   empty
          +--rw rewrite
          |  +--rw ingress
          |     +--rw tag-config
          |     |  +--rw (rewrite-op)?
          |     |     +--:(pop-op)
          |     |     |  +--rw pop-op
          |     |     |     +--rw way?    enumeration
          |     |     |     +--rw mode?   enumeration
          |     |     +--:(push-op)
          |     |     |  +--rw push-op
          |     |     |     +--rw dot1ad?         uint16
          |     |     |     +--rw dot1q?          uint16
          |     |     |     +--rw vlan-type?      enumeration
          |     |     |     +--rw second-dot1q?   uint16
          |     |     |     +--rw mode?           enumeration
          |     |     +--:(translate-op)
          |     |        +--rw translate-op
          |     |           +--rw (translate-operation)?
          |     |              +--:(t1-to-1)
          |     |              |  +--rw t1-to-1
          |     |              |     +--rw dot1ad?      uint16
          |     |              |     +--rw dot1q?       uint16
          |     |              |     +--rw vlan-type?   enumeration
          |     |              |     +--rw mode?        enumeration
          |     |              +--:(t1-to-2)
          |     |              |  +--rw t1-to-2
          |     |              |     +--rw dot1ad?         uint16
          |     |              |     +--rw dot1q?          uint16
          |     |              |     +--rw vlan-type?      enumeration
          |     |              |     +--rw second-dot1q?   uint16
          |     |              |     +--rw mode?           enumeration
          |     |              +--:(t2-to-1)
          |     |              |  +--rw t2-to-1
          |     |              |     +--rw dot1ad?      uint16
          |     |              |     +--rw dot1q?       uint16
          |     |              |     +--rw vlan-type?   enumeration
          |     |              |     +--rw mode?        enumeration
          |     |              +--:(t2-to-2)
          |     |                 +--rw t2-to-2
          |     |                    +--rw dot1ad?         uint16
          |     |                    +--rw dot1q?          uint16
          |     |                    +--rw vlan-type?      enumeration
          |     |                    +--rw second-dot1q?   uint16
          |     |                    +--rw mode?           enumeration
          |     o--rw tag
          |        o--rw pop
          |        |  o--rw way?    enumeration
          |        |  o--rw mode?   enumeration
          |        o--rw push
          |        |  o--rw dot1q?   uint16
          |        |  o--rw mode?    enumeration
          |        o--rw translate
          |           o--rw t1-to-1
          |           |  o--rw dot1q?   uint16
          |           |  o--rw mode?    enumeration
          |           o--rw t1-to-2
          |           |  o--rw dot1q?          uint16
          |           |  o--rw second-dot1q?   uint16
          |           |  o--rw mode?           enumeration
          |           o--rw t2-to-1
          |           |  o--rw dot1q?   uint16
          |           |  o--rw mode?    enumeration
          |           o--rw t2-to-2
          |              o--rw dot1q?          uint16
          |              o--rw second-dot1q?   uint16
          |              o--rw mode?           enumeration
          +--rw group?                uint32
          +--rw errdisable
          |  +--rw recovery
          |     +--rw cause
          |        +--rw mac-security?     uint32
          |        +--rw l2proto-tunnel?   uint32
          |        +--rw storm-control?    uint32
          +--rw ethernet-container
          |  +--rw ethernet
          |     +--rw lmi
          |     |  +--rw ce-vlan
          |     |     +--rw map
          |     |        +--rw (map-choice)?
          |     |           +--:(any)
          |     |           |  +--rw any?          empty
          |     |           +--:(default)
          |     |           |  +--rw default?      empty
          |     |           +--:(untagged)
          |     |           |  +--rw untagged?     empty
          |     |           +--:(vlan-range)
          |     |              +--rw vlan-range?   string
          |     +--rw loopback
          |        +--rw permit
          |           +--rw external?   empty
          |           +--rw internal?   empty
          +--rw snmp
          |  +--rw trap
          |  |  +--rw link-status?   empty
          |  +--rw ifindex-persistence
          |  |  +--rw (persistence)?
          |  |     +--:(persist)
          |  |     |  +--rw persist?   empty
          |  |     +--:(clear)
          |  |        +--rw clear?     empty
          |  o--rw ifindex
          |     o--rw persist?   empty
          +--rw bridge-domain
          |  +--rw bridge-id?                uint16
          |  +--rw split-horizon-presence!
          |  |  +--rw group?   uint8
          |  o--rw split-horizon
          |  |  o--rw group?   uint8
          |  +--rw from-encapsulation?       empty
          +--rw mac
          |  +--rw security!
          |  |  +--rw address
          |  |  |  +--rw deny* [mac]
          |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
          |  |  |  +--rw permit* [mac]
          |  |  |     +--rw mac    ios-types:cisco-mac-address-type
          |  |  +--rw aging
          |  |  |  +--rw static?   empty
          |  |  |  +--rw sticky?   empty
          |  |  |  +--rw time
          |  |  |     +--rw duration?     uint16
          |  |  |     +--rw inactivity?   empty
          |  |  +--rw maximum
          |  |  |  +--rw addresses?   uint16
          |  |  +--rw sticky?      empty
          |  |  +--rw violation?   enumeration
          |  +--rw access-group* [acl-name]
          |     +--rw acl-name    string
          |     +--rw in?         empty
          |     +--rw out?        empty
          +--rw service-policy
          |  +--rw input* [name]
          |  |  +--rw name    string
          |  +--rw output* [name]
          |     +--rw name    string
          +--rw shutdown?             empty
          +--rw cfm
          |  +--rw encapsulation
          |  |  +--rw dot1ad
          |  |  |  +--rw vlan-id?   uint16
          |  |  |  +--rw cos?       uint8
          |  |  |  +--rw dot1q?     uint16
          |  |  |  +--rw cos2
          |  |  |     +--rw cos?   uint8
          |  |  +--rw dot1q
          |  |     +--rw vlan-id?        uint16
          |  |     +--rw cos?            uint8
          |  |     +--rw second-dot1q?   uint16
          |  |     +--rw cos2
          |  |        +--rw cos?   uint8
          |  +--rw mep-list
          |  |  +--rw domain* [name]
          |  |     +--rw name                string
          |  |     +--rw mpid                uint16
          |  |     +--rw unicast?            empty
          |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
          |  |     +--rw alarm
          |  |     |  +--rw delay?          uint16
          |  |     |  +--rw notification?   enumeration
          |  |     |  +--rw reset?          uint16
          |  |     +--rw cos?                uint16
          |  |     +--rw continuity-check
          |  |     |  +--rw static
          |  |     |     +--rw rmep?   empty
          |  |     +--rw rmep
          |  |        +--rw mpid?   uint16
          |  o--rw mep
          |  |  o--rw domain?             string
          |  |  o--rw mpid?               uint16
          |  |  o--rw alarm
          |  |  |  o--rw delay?          uint16
          |  |  |  o--rw notification
          |  |  |  |  o--rw all?                     empty
          |  |  |  |  o--rw error-xcon?              empty
          |  |  |  |  o--rw mac-remote-error-xcon?   empty
          |  |  |  |  o--rw none?                    empty
          |  |  |  |  o--rw remote-error-xcon?       empty
          |  |  |  |  o--rw xcon?                    empty
          |  |  |  o--rw reset?          uint16
          |  |  o--rw cos?                uint16
          |  |  o--rw continuity-check
          |  |  |  +--rw static
          |  |  |     o--rw rmep?   empty
          |  |  o--rw rmep
          |  |     o--rw mpid?   uint16
          |  +--rw mip
          |  |  +--rw level?   uint8
          |  +--rw latching-loopback {ios-features:ecfm-llb}?
          |     +--rw domain?       string
          |     +--rw responder?    empty
          |     +--rw controller
          |        +--rw discover-interval?   uint8
          +--rw l2protocol
          |  +--rw discard!
          |  |  +--rw protocol*   enumeration
          |  +--rw peer!
          |  |  +--rw protocol*   enumeration
          |  +--rw forward!
          |  |  +--rw protocol*   enumeration
          |  +--rw tunnel!
          |     +--rw protocol*   enumeration
          +--rw lldp
             +--rw enable?   empty
  augment /ios:native/ios:interface/ios:Vlan:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    o--rw channel-group
    |  o--rw number?       uint16
    |  o--rw mode?         enumeration
    |  o--rw non-silent?   empty
    |  o--rw link?         uint8
    |  o--rw auto?         empty
    +--rw ethernet
    |  +--rw oam!
    |  |  +--rw link-monitor
    |  |  |  +--rw frame
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw thresh?   uint16
    |  |  |  |  |  |  o--rw none?     empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-period
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw f-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw frame-seconds
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw e-thresh?   uint16
    |  |  |  |  |  |  o--rw none?       empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw high-threshold
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw on?               empty
    |  |  |  +--rw receive-crc
    |  |  |  |  +--rw threshold
    |  |  |  |  |  +--rw high-frames
    |  |  |  |  |  |  +--rw (high-value)?
    |  |  |  |  |  |     +--:(value)
    |  |  |  |  |  |     |  +--rw value?   uint16
    |  |  |  |  |  |     +--:(none)
    |  |  |  |  |  |        +--rw none?    empty
    |  |  |  |  |  o--rw high
    |  |  |  |  |  |  o--rw crc-thresh?   uint16
    |  |  |  |  |  |  o--rw none?         empty
    |  |  |  |  |  +--rw low?           uint16
    |  |  |  |  +--rw window?      uint16
    |  |  |  +--rw supported?        empty
    |  |  |  +--rw symbol-period
    |  |  |     +--rw threshold
    |  |  |     |  +--rw high-symbols
    |  |  |     |  |  +--rw (high-value)?
    |  |  |     |  |     +--:(value)
    |  |  |     |  |     |  +--rw value?   uint16
    |  |  |     |  |     +--:(none)
    |  |  |     |  |        +--rw none?    empty
    |  |  |     |  o--rw high
    |  |  |     |  |  o--rw err-thresh?   uint16
    |  |  |     |  |  o--rw none?         empty
    |  |  |     |  +--rw low?            uint16
    |  |  |     +--rw window?      uint16
    |  |  +--rw max-rate?          uint8
    |  |  +--rw min-rate?          uint8
    |  |  +--rw mode?              enumeration
    |  |  +--rw dying-gasp
    |  |  |  +--rw type?   enumeration
    |  |  +--rw remote-failure
    |  |  |  +--rw critical-event
    |  |  |  |  +--rw action
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw dying-gasp
    |  |  |  |  +--rw action!
    |  |  |  |     +--rw error-disable-interface?   empty
    |  |  |  +--rw link-fault
    |  |  |     +--rw action!
    |  |  |        +--rw error-disable-interface?   empty
    |  |  +--rw remote-loopback
    |  |  |  +--rw supported?   empty
    |  |  |  +--rw timeout?     uint8
    |  |  +--rw timeout?           uint8
    |  +--rw dot1ad
    |  |  +--rw (dot1ad-choice)?
    |  |     +--:(nni)
    |  |     |  +--rw nni?   empty
    |  |     +--:(uni)
    |  |        +--rw uni
    |  |           +--rw (uni-choice)?
    |  |              +--:(c-port)
    |  |              |  +--rw c-port?   empty
    |  |              +--:(s-port)
    |  |                 +--rw s-port?   empty
    |  +--rw loopback
    |  |  +--rw permit
    |  |     +--rw external?   empty
    |  |     +--rw internal?   empty
    |  +--rw cfm
    |  |  +--rw ais
    |  |  |  +--rw link-status
    |  |  |     +--rw level?    uint8
    |  |  |     +--rw period?   enumeration
    |  |  +--rw interface?   empty
    |  |  +--rw mep
    |  |  |  +--rw domain* [name]
    |  |  |     +--rw name    string
    |  |  |     +--rw mpid* [mpid-number]
    |  |  |        +--rw mpid-number    uint16
    |  |  |        +--rw service
    |  |  |        |  +--rw (service-type)?
    |  |  |        |     +--:(named-service)
    |  |  |        |     |  +--rw named-service* [service-name]
    |  |  |        |     |     +--rw service-name        string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(icc)
    |  |  |        |     |  +--rw icc* [code]
    |  |  |        |     |     +--rw code                string
    |  |  |        |     |     +--rw meg-id?             string
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(number)
    |  |  |        |     |  +--rw number* [ma-num]
    |  |  |        |     |     +--rw ma-num              uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vlan-id)
    |  |  |        |     |  +--rw vlan-id* [vlan-num]
    |  |  |        |     |     +--rw vlan-num            uint16
    |  |  |        |     |     +--rw alarm
    |  |  |        |     |     |  +--rw delay?          uint16
    |  |  |        |     |     |  +--rw notification?   enumeration
    |  |  |        |     |     |  +--rw reset?          uint16
    |  |  |        |     |     +--rw cos?                uint16
    |  |  |        |     |     +--rw continuity-check
    |  |  |        |     |     |  +--rw static
    |  |  |        |     |     |     +--rw rmep?   empty
    |  |  |        |     |     +--rw rmep* [id]
    |  |  |        |     |        +--rw id      uint16
    |  |  |        |     |        +--rw mpid?   empty
    |  |  |        |     +--:(vpn-id)
    |  |  |        |        +--rw vpn-id* [vpn]
    |  |  |        |           +--rw vpn                 uint16
    |  |  |        |           +--rw alarm
    |  |  |        |           |  +--rw delay?          uint16
    |  |  |        |           |  +--rw notification?   enumeration
    |  |  |        |           |  +--rw reset?          uint16
    |  |  |        |           +--rw cos?                uint16
    |  |  |        |           +--rw continuity-check
    |  |  |        |           |  +--rw static
    |  |  |        |           |     +--rw rmep?   empty
    |  |  |        |           +--rw rmep* [id]
    |  |  |        |              +--rw id      uint16
    |  |  |        |              +--rw mpid?   empty
    |  |  |        +--rw port?          empty
    |  |  |        +--rw vlan?          uint16
    |  |  +--rw mip
    |  |     +--rw level* [level-number]
    |  |        +--rw level-number    uint8
    |  |        +--rw vlan?           string
    |  +--rw uni
    |     +--rw (uni-choice)?
    |     |  +--:(bundle)
    |     |  |  +--rw bundle!
    |     |  |     +--rw all-to-one?   empty
    |     |  +--:(multiplex)
    |     |     +--rw multiplex?   empty
    |     +--rw id?                string
    +--rw service
       +--rw instance* [id]
          +--rw id                    uint32
          +--rw trunk?                empty
          +--rw GigabitEthernet?      empty
          +--rw ethernet?             empty
          +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
          +--rw description?          string
          +--rw evc-name?             string
          +--rw track?                uint16
          +--rw encapsulation
          |  +--rw default?           empty
          |  +--rw dot1ad
          |  |  +--rw id*          union
          |  |  +--rw cos*         uint8
          |  |  +--rw dot1q*       union
          |  |  +--rw cos2
          |  |  |  +--rw cos*   uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?   union
          |  |  o--rw etype*       enumeration
          |  |  +--rw exact?       empty
          |  +--rw dot1q
          |  |  +--rw id*             union
          |  |  +--rw cos*            uint8
          |  |  +--rw second-dot1q*   union
          |  |  +--rw cos2
          |  |  |  +--rw cos*   uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?      union
          |  |  o--rw etype*          enumeration
          |  |  +--rw exact?          empty
          |  |  +--rw vlan-type?      enumeration
          |  +--rw priority-tagged!
          |  |  +--rw cos*         uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?   union
          |  |  o--rw etype*       enumeration
          |  +--rw untagged!
          |     +--rw comma?             enumeration
          |     +--rw priority-tagged!
          |     |  +--rw comma?   enumeration
          |     +--rw dot1ad
          |     |  +--rw id*          union
          |     |  +--rw cos*         uint8
          |     |  +--rw dot1q*       union
          |     |  +--rw cos2
          |     |  |  +--rw cos*   uint8
          |     |  +--rw ext-etype
          |     |  |  +--rw ipv4?              empty
          |     |  |  +--rw ipv6?              empty
          |     |  |  +--rw pppoe-all?         empty
          |     |  |  +--rw pppoe-discovery?   empty
          |     |  |  +--rw pppoe-session?     empty
          |     |  +--rw exact?       empty
          |     +--rw dot1q
          |     |  +--rw id*             union
          |     |  +--rw cos*            uint8
          |     |  +--rw second-dot1q*   union
          |     |  +--rw cos2
          |     |  |  +--rw cos*   uint8
          |     |  +--rw ext-etype
          |     |  |  +--rw ipv4?              empty
          |     |  |  +--rw ipv6?              empty
          |     |  |  +--rw pppoe-all?         empty
          |     |  |  +--rw pppoe-discovery?   empty
          |     |  |  +--rw pppoe-session?     empty
          |     |  +--rw exact?          empty
          |     |  +--rw vlan-type?      enumeration
          |     +--rw ext-etype
          |        +--rw ipv4?              empty
          |        +--rw ipv6?              empty
          |        +--rw pppoe-all?         empty
          |        +--rw pppoe-discovery?   empty
          |        +--rw pppoe-session?     empty
          +--rw ip
          |  +--rw access-group-list* [direction]
          |  |  +--rw direction      enumeration
          |  |  +--rw access-list?   string
          |  o--rw acl
          |  |  o--rw access-group?   ios-types:exp-acl-type
          |  |  o--rw in?             empty
          |  |  o--rw out?            empty
          |  +--rw dhcp
          |  |  +--rw relay
          |  |     +--rw information
          |  |        +--rw option
          |  |           +--rw subscriber-id?   string
          |  +--rw verify
          |     +--rw source?          empty
          |     +--rw vlan?            empty
          |     +--rw dhcp-snooping?   empty
          |     +--rw port-security?   empty
          +--rw eapol
          |  +--rw destination-address
          |  |  +--rw (destination-type)?
          |  |     +--:(mac-address)
          |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
          |  |     +--:(bridge-group-address)
          |  |     |  +--rw bridge-group-address?     empty
          |  |     +--:(broadcast-address)
          |  |     |  +--rw broadcast-address?        empty
          |  |     +--:(lldp-multicast-address)
          |  |        +--rw lldp-multicast-address?   empty
          |  +--rw eth-type
          |     +--rw eth-876F?   empty
          +--rw storm-control
          |  +--rw broadcast
          |  |  +--rw cir?   uint32
          |  +--rw multicast
          |  |  +--rw cir?   uint32
          |  +--rw unicast
          |     +--rw cir?   uint32
          +--rw ipv6
          |  +--rw traffic-filter-list* [direction]
          |  |  +--rw direction      enumeration
          |  |  +--rw access-list?   string
          |  o--rw traffic-filter?        string
          |  o--rw in?                    empty
          |  o--rw out?                   empty
          +--rw rewrite
          |  +--rw ingress
          |     +--rw tag-config
          |     |  +--rw (rewrite-op)?
          |     |     +--:(pop-op)
          |     |     |  +--rw pop-op
          |     |     |     +--rw way?    enumeration
          |     |     |     +--rw mode?   enumeration
          |     |     +--:(push-op)
          |     |     |  +--rw push-op
          |     |     |     +--rw dot1ad?         uint16
          |     |     |     +--rw dot1q?          uint16
          |     |     |     +--rw vlan-type?      enumeration
          |     |     |     +--rw second-dot1q?   uint16
          |     |     |     +--rw mode?           enumeration
          |     |     +--:(translate-op)
          |     |        +--rw translate-op
          |     |           +--rw (translate-operation)?
          |     |              +--:(t1-to-1)
          |     |              |  +--rw t1-to-1
          |     |              |     +--rw dot1ad?      uint16
          |     |              |     +--rw dot1q?       uint16
          |     |              |     +--rw vlan-type?   enumeration
          |     |              |     +--rw mode?        enumeration
          |     |              +--:(t1-to-2)
          |     |              |  +--rw t1-to-2
          |     |              |     +--rw dot1ad?         uint16
          |     |              |     +--rw dot1q?          uint16
          |     |              |     +--rw vlan-type?      enumeration
          |     |              |     +--rw second-dot1q?   uint16
          |     |              |     +--rw mode?           enumeration
          |     |              +--:(t2-to-1)
          |     |              |  +--rw t2-to-1
          |     |              |     +--rw dot1ad?      uint16
          |     |              |     +--rw dot1q?       uint16
          |     |              |     +--rw vlan-type?   enumeration
          |     |              |     +--rw mode?        enumeration
          |     |              +--:(t2-to-2)
          |     |                 +--rw t2-to-2
          |     |                    +--rw dot1ad?         uint16
          |     |                    +--rw dot1q?          uint16
          |     |                    +--rw vlan-type?      enumeration
          |     |                    +--rw second-dot1q?   uint16
          |     |                    +--rw mode?           enumeration
          |     o--rw tag
          |        o--rw pop
          |        |  o--rw way?    enumeration
          |        |  o--rw mode?   enumeration
          |        o--rw push
          |        |  o--rw dot1q?   uint16
          |        |  o--rw mode?    enumeration
          |        o--rw translate
          |           o--rw t1-to-1
          |           |  o--rw dot1q?   uint16
          |           |  o--rw mode?    enumeration
          |           o--rw t1-to-2
          |           |  o--rw dot1q?          uint16
          |           |  o--rw second-dot1q?   uint16
          |           |  o--rw mode?           enumeration
          |           o--rw t2-to-1
          |           |  o--rw dot1q?   uint16
          |           |  o--rw mode?    enumeration
          |           o--rw t2-to-2
          |              o--rw dot1q?          uint16
          |              o--rw second-dot1q?   uint16
          |              o--rw mode?           enumeration
          +--rw group?                uint32
          +--rw errdisable
          |  +--rw recovery
          |     +--rw cause
          |        +--rw mac-security?     uint32
          |        +--rw l2proto-tunnel?   uint32
          |        +--rw storm-control?    uint32
          +--rw ethernet-container
          |  +--rw ethernet
          |     +--rw lmi
          |     |  +--rw ce-vlan
          |     |     +--rw map
          |     |        +--rw (map-choice)?
          |     |           +--:(any)
          |     |           |  +--rw any?          empty
          |     |           +--:(default)
          |     |           |  +--rw default?      empty
          |     |           +--:(untagged)
          |     |           |  +--rw untagged?     empty
          |     |           +--:(vlan-range)
          |     |              +--rw vlan-range?   string
          |     +--rw loopback
          |        +--rw permit
          |           +--rw external?   empty
          |           +--rw internal?   empty
          +--rw snmp
          |  +--rw trap
          |  |  +--rw link-status?   empty
          |  +--rw ifindex-persistence
          |  |  +--rw (persistence)?
          |  |     +--:(persist)
          |  |     |  +--rw persist?   empty
          |  |     +--:(clear)
          |  |        +--rw clear?     empty
          |  o--rw ifindex
          |     o--rw persist?   empty
          +--rw bridge-domain
          |  +--rw bridge-id?                uint16
          |  +--rw split-horizon-presence!
          |  |  +--rw group?   uint8
          |  o--rw split-horizon
          |  |  o--rw group?   uint8
          |  +--rw from-encapsulation?       empty
          +--rw mac
          |  +--rw security!
          |  |  +--rw address
          |  |  |  +--rw deny* [mac]
          |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
          |  |  |  +--rw permit* [mac]
          |  |  |     +--rw mac    ios-types:cisco-mac-address-type
          |  |  +--rw aging
          |  |  |  +--rw static?   empty
          |  |  |  +--rw sticky?   empty
          |  |  |  +--rw time
          |  |  |     +--rw duration?     uint16
          |  |  |     +--rw inactivity?   empty
          |  |  +--rw maximum
          |  |  |  +--rw addresses?   uint16
          |  |  +--rw sticky?      empty
          |  |  +--rw violation?   enumeration
          |  +--rw access-group* [acl-name]
          |     +--rw acl-name    string
          |     +--rw in?         empty
          |     +--rw out?        empty
          +--rw service-policy
          |  +--rw input* [name]
          |  |  +--rw name    string
          |  +--rw output* [name]
          |     +--rw name    string
          +--rw shutdown?             empty
          +--rw cfm
          |  +--rw encapsulation
          |  |  +--rw dot1ad
          |  |  |  +--rw vlan-id?   uint16
          |  |  |  +--rw cos?       uint8
          |  |  |  +--rw dot1q?     uint16
          |  |  |  +--rw cos2
          |  |  |     +--rw cos?   uint8
          |  |  +--rw dot1q
          |  |     +--rw vlan-id?        uint16
          |  |     +--rw cos?            uint8
          |  |     +--rw second-dot1q?   uint16
          |  |     +--rw cos2
          |  |        +--rw cos?   uint8
          |  +--rw mep-list
          |  |  +--rw domain* [name]
          |  |     +--rw name                string
          |  |     +--rw mpid                uint16
          |  |     +--rw unicast?            empty
          |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
          |  |     +--rw alarm
          |  |     |  +--rw delay?          uint16
          |  |     |  +--rw notification?   enumeration
          |  |     |  +--rw reset?          uint16
          |  |     +--rw cos?                uint16
          |  |     +--rw continuity-check
          |  |     |  +--rw static
          |  |     |     +--rw rmep?   empty
          |  |     +--rw rmep
          |  |        +--rw mpid?   uint16
          |  o--rw mep
          |  |  o--rw domain?             string
          |  |  o--rw mpid?               uint16
          |  |  o--rw alarm
          |  |  |  o--rw delay?          uint16
          |  |  |  o--rw notification
          |  |  |  |  o--rw all?                     empty
          |  |  |  |  o--rw error-xcon?              empty
          |  |  |  |  o--rw mac-remote-error-xcon?   empty
          |  |  |  |  o--rw none?                    empty
          |  |  |  |  o--rw remote-error-xcon?       empty
          |  |  |  |  o--rw xcon?                    empty
          |  |  |  o--rw reset?          uint16
          |  |  o--rw cos?                uint16
          |  |  o--rw continuity-check
          |  |  |  +--rw static
          |  |  |     o--rw rmep?   empty
          |  |  o--rw rmep
          |  |     o--rw mpid?   uint16
          |  +--rw mip
          |  |  +--rw level?   uint8
          |  +--rw latching-loopback {ios-features:ecfm-llb}?
          |     +--rw domain?       string
          |     +--rw responder?    empty
          |     +--rw controller
          |        +--rw discover-interval?   uint8
          +--rw l2protocol
          |  +--rw discard!
          |  |  +--rw protocol*   enumeration
          |  +--rw peer!
          |  |  +--rw protocol*   enumeration
          |  +--rw forward!
          |  |  +--rw protocol*   enumeration
          |  +--rw tunnel!
          |     +--rw protocol*   enumeration
          +--rw lldp
             +--rw enable?   empty
  augment /ios:native/ios:interface/ios:Loopback:
    +--rw dhcp-border-relay?   empty {ios-features:dhcp-border-relay}?
  augment /ios:native/ios:interface/ios:BD-VIF:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    o--rw channel-group
       o--rw number?       uint16
       o--rw mode?         enumeration
       o--rw non-silent?   empty
       o--rw link?         uint8
       o--rw auto?         empty
  augment /ios:native/ios:interface/ios:ucse:
    +--rw carrier-delay
    |  +--rw (delay-choice)?
    |  |  +--:(seconds)
    |  |  |  +--rw seconds?   uint8
    |  |  +--:(msec)
    |  |     +--rw msec?      uint16
    |  +--rw down
    |  |  +--rw (delay-choice)?
    |  |     +--:(seconds)
    |  |     |  +--rw seconds?   uint8
    |  |     +--:(msec)
    |  |        +--rw msec?      uint16
    |  +--rw up
    |     +--rw (delay-choice)?
    |        +--:(seconds)
    |        |  +--rw seconds?   uint8
    |        +--:(msec)
    |           +--rw msec?      uint16
    +--rw channel-protocol?   enumeration
    +--rw eapol
    |  +--rw announcement?          empty
    |  +--rw destination-address
    |  |  +--rw (address-option)?
    |  |  |  +--:(mac-address)
    |  |  |  |  +--rw mac-address?              ios-types:cisco-mac-address-type
    |  |  |  +--:(bridge-group-address)
    |  |  |  |  +--rw bridge-group-address?     empty
    |  |  |  +--:(broadcast-addr)
    |  |  |  |  +--rw broadcast-addr?           empty
    |  |  |  +--:(lldp-multicast-address)
    |  |  |     +--rw lldp-multicast-address?   empty
    |  |  x--rw broadcast-address?              empty
    |  +--rw eth-type?              enumeration
    o--rw synchronous
    |  o--rw mode?   empty
    +--rw port-settings {ios-features:port-settings}?
    |  +--rw speed
    |  |  +--rw (speed-choice)?
    |  |     +--:(speed-value)
    |  |     |  +--rw speed-value?   enumeration
    |  |     +--:(auto-list)
    |  |        +--rw auto-list*     enumeration
    |  +--rw duplex?             enumeration
    |  +--rw auto-negotiation?   enumeration
    x--rw speed
    |  +--rw (speed-choice)?
    |     +--:(auto)
    |     |  +--rw auto?           empty
    |     +--:(value-10)
    |     |  +--rw value-10?       empty
    |     +--:(value-100)
    |     |  +--rw value-100?      empty
    |     +--:(value-1000)
    |     |  +--rw value-1000?     empty
    |     +--:(value-2500)
    |     |  +--rw value-2500?     empty
    |     +--:(value-5000)
    |     |  +--rw value-5000?     empty
    |     +--:(value-10000)
    |     |  +--rw value-10000?    empty
    |     +--:(value-25000)
    |     |  +--rw value-25000?    empty
    |     +--:(value-40000)
    |     |  +--rw value-40000?    empty
    |     +--:(value-100000)
    |     |  +--rw value-100000?   empty
    |     +--:(nonegotiate)
    |        +--rw nonegotiate?    empty
    x--rw duplex?             enumeration
    +--rw loopback
    |  +--rw (loopback-mode)?
    |     +--:(external)
    |     |  +--rw external?   empty
    |     +--:(mac)
    |     |  +--rw mac?        empty
    |     +--:(phy)
    |     |  +--rw phy
    |     |     +--rw (phy-mode)?
    |     |        +--:(external)
    |     |        |  +--rw external?   enumeration
    |     |        +--:(internal)
    |     |           +--rw internal?   enumeration
    |     +--:(xpt)
    |        +--rw xpt?        enumeration
    x--rw negotiation
    |  x--rw auto?   boolean
    +--rw plim
    |  +--rw ethernet
    |  |  +--rw vlan
    |  |     +--rw filter
    |  |        +--rw disable?   empty
    |  +--rw qos
    |     +--rw input
    |        +--rw queue_new
    |        |  +--rw zero
    |        |  |  +--rw pause
    |        |  |     +--rw enable?      boolean
    |        |  |     +--rw threshold?   uint8
    |        |  +--rw strict-priority
    |        |     +--rw pause
    |        |        +--rw enable?      boolean
    |        |        +--rw threshold?   uint8
    |        o--rw queue
    |        |  +--rw (priority)?
    |        |     +--:(low)
    |        |     |  o--rw zero
    |        |     |     o--rw pause
    |        |     |        o--rw enable?      boolean
    |        |     |        o--rw threshold?   uint8
    |        |     +--:(high)
    |        |        o--rw strict-priority
    |        |           o--rw pause
    |        |              o--rw enable?      boolean
    |        |              o--rw threshold?   uint8
    |        +--rw map
    |        |  +--rw cos
    |        |  |  +--rw enable?      empty
    |        |  |  +--rw cos-range
    |        |  |  |  +--rw start-range-val?   ios-types:cos-type
    |        |  |  |  +--rw range-val?         enumeration
    |        |  |  |  +--rw end-range-val?     ios-types:cos-type
    |        |  |  |  +--rw queue?             enumeration
    |        |  |  +--rw cos-list
    |        |  |     +--rw cos-value1?   ios-types:cos-type
    |        |  |     +--rw cos-value2?   ios-types:cos-type
    |        |  |     +--rw cos-value3?   ios-types:cos-type
    |        |  |     +--rw cos-value4?   ios-types:cos-type
    |        |  |     +--rw cos-value5?   ios-types:cos-type
    |        |  |     +--rw cos-value6?   ios-types:cos-type
    |        |  |     +--rw cos-value7?   ios-types:cos-type
    |        |  |     +--rw cos-value8?   ios-types:cos-type
    |        |  |     +--rw queue?        enumeration
    |        |  +--rw ip
    |        |  |  +--rw all
    |        |  |  |  +--rw queue?   enumeration
    |        |  |  +--rw dscp-based?         empty
    |        |  |  +--rw dscp
    |        |  |  |  +--rw (dscp-value)?
    |        |  |  |  |  +--:(value-case)
    |        |  |  |  |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |  |  |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |  |  +--rw queue?               enumeration
    |        |  |  +--rw precedence-based?   empty
    |        |  |  +--rw precedence
    |        |  |     +--rw (precedence-value)?
    |        |  |     |  +--:(precedence-value)
    |        |  |     |     +--rw precedence-value1?   uint8
    |        |  |     |     +--rw precedence-value2?   uint8
    |        |  |     |     +--rw precedence-value3?   uint8
    |        |  |     |     +--rw precedence-value4?   uint8
    |        |  |     |     +--rw precedence-value5?   uint8
    |        |  |     |     +--rw precedence-value6?   uint8
    |        |  |     |     +--rw precedence-value7?   uint8
    |        |  |     |     +--rw precedence-value8?   uint8
    |        |  |     +--rw queue?                     enumeration
    |        |  +--rw ipv6
    |        |  |  +--rw all
    |        |  |     +--rw queue?   enumeration
    |        |  +--rw ipv4v6
    |        |  |  +--rw qos-value-based?   empty
    |        |  |  +--rw qos-value
    |        |  |     +--rw (qos-value)?
    |        |  |     |  +--:(value-case)
    |        |  |     |     +--rw dscp-value1?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value2?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value3?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value4?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value5?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value6?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value7?   ios-types:dscp-type
    |        |  |     |     +--rw dscp-value8?   ios-types:dscp-type
    |        |  |     +--rw queue?               enumeration
    |        |  +--rw mpls
    |        |     +--rw all
    |        |     |  +--rw queue?   enumeration
    |        |     +--rw exp
    |        |        +--rw (exp-value)?
    |        |        |  +--:(exp-case)
    |        |        |     +--rw exp?   ios-types:exp-type
    |        |        +--rw queue?       enumeration
    |        +--rw policer
    |        |  +--rw bandwidth
    |        |     +--rw bandwidth-value?   uint32
    |        |     +--rw strict-priority?   empty
    |        +--rw weight?      uint16
    +--rw pppoe
    |  +--rw enable-default-config!
    |  |  +--rw group?   union
    |  x--rw enable-config
    |  |  x--rw pppoe-enable?   empty
    |  |  x--rw group-name?     union
    |  x--rw enable!
    |  |  x--rw group?   union
    |  +--rw max-sessons?             uint32
    +--rw pppoe-client
    |  +--rw dial-pool-number-list* [number]
    |  |  +--rw number          uint32
    |  |  +--rw service-name?   string
    |  x--rw dial-pool-number?        uint32
    |  +--rw ppp-max-payload?         uint32
    +--rw pppoe-session
    |  +--rw threshold
    |     +--rw loss-threshold?   uint32
    |     +--rw percent
    |        +--rw percantage?   uint32
    |        +--rw interval?     uint32
    o--rw channel-group
    |  o--rw number?       uint16
    |  o--rw mode?         enumeration
    |  o--rw non-silent?   empty
    |  o--rw link?         uint8
    |  o--rw auto?         empty
    +--rw service
       +--rw instance* [id]
          +--rw id                    uint32
          +--rw trunk?                empty
          +--rw GigabitEthernet?      empty
          +--rw ethernet?             empty
          +--rw ethernet-evc-name?    string {ios-features:eth-evc}?
          +--rw description?          string
          +--rw evc-name?             string
          +--rw track?                uint16
          +--rw encapsulation
          |  +--rw default?           empty
          |  +--rw dot1ad
          |  |  +--rw id*          union
          |  |  +--rw cos*         uint8
          |  |  +--rw dot1q*       union
          |  |  +--rw cos2
          |  |  |  +--rw cos*   uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?   union
          |  |  o--rw etype*       enumeration
          |  |  +--rw exact?       empty
          |  +--rw dot1q
          |  |  +--rw id*             union
          |  |  +--rw cos*            uint8
          |  |  +--rw second-dot1q*   union
          |  |  +--rw cos2
          |  |  |  +--rw cos*   uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?      union
          |  |  o--rw etype*          enumeration
          |  |  +--rw exact?          empty
          |  |  +--rw vlan-type?      enumeration
          |  +--rw priority-tagged!
          |  |  +--rw cos*         uint8
          |  |  +--rw ext-etype
          |  |  |  +--rw ipv4?              empty
          |  |  |  +--rw ipv6?              empty
          |  |  |  +--rw pppoe-all?         empty
          |  |  |  +--rw pppoe-discovery?   empty
          |  |  |  +--rw pppoe-session?     empty
          |  |  +--rw ethertype?   union
          |  |  o--rw etype*       enumeration
          |  +--rw untagged!
          |     +--rw comma?             enumeration
          |     +--rw priority-tagged!
          |     |  +--rw comma?   enumeration
          |     +--rw dot1ad
          |     |  +--rw id*          union
          |     |  +--rw cos*         uint8
          |     |  +--rw dot1q*       union
          |     |  +--rw cos2
          |     |  |  +--rw cos*   uint8
          |     |  +--rw ext-etype
          |     |  |  +--rw ipv4?              empty
          |     |  |  +--rw ipv6?              empty
          |     |  |  +--rw pppoe-all?         empty
          |     |  |  +--rw pppoe-discovery?   empty
          |     |  |  +--rw pppoe-session?     empty
          |     |  +--rw exact?       empty
          |     +--rw dot1q
          |     |  +--rw id*             union
          |     |  +--rw cos*            uint8
          |     |  +--rw second-dot1q*   union
          |     |  +--rw cos2
          |     |  |  +--rw cos*   uint8
          |     |  +--rw ext-etype
          |     |  |  +--rw ipv4?              empty
          |     |  |  +--rw ipv6?              empty
          |     |  |  +--rw pppoe-all?         empty
          |     |  |  +--rw pppoe-discovery?   empty
          |     |  |  +--rw pppoe-session?     empty
          |     |  +--rw exact?          empty
          |     |  +--rw vlan-type?      enumeration
          |     +--rw ext-etype
          |        +--rw ipv4?              empty
          |        +--rw ipv6?              empty
          |        +--rw pppoe-all?         empty
          |        +--rw pppoe-discovery?   empty
          |        +--rw pppoe-session?     empty
          +--rw ip
          |  +--rw access-group-list* [direction]
          |  |  +--rw direction      enumeration
          |  |  +--rw access-list?   string
          |  o--rw acl
          |  |  o--rw access-group?   ios-types:exp-acl-type
          |  |  o--rw in?             empty
          |  |  o--rw out?            empty
          |  +--rw dhcp
          |  |  +--rw relay
          |  |     +--rw information
          |  |        +--rw option
          |  |           +--rw subscriber-id?   string
          |  +--rw verify
          |     +--rw source?          empty
          |     +--rw vlan?            empty
          |     +--rw dhcp-snooping?   empty
          |     +--rw port-security?   empty
          +--rw eapol
          |  +--rw destination-address
          |  |  +--rw (destination-type)?
          |  |     +--:(mac-address)
          |  |     |  +--rw mac-address?              ios-types:cisco-mac-address-type
          |  |     +--:(bridge-group-address)
          |  |     |  +--rw bridge-group-address?     empty
          |  |     +--:(broadcast-address)
          |  |     |  +--rw broadcast-address?        empty
          |  |     +--:(lldp-multicast-address)
          |  |        +--rw lldp-multicast-address?   empty
          |  +--rw eth-type
          |     +--rw eth-876F?   empty
          +--rw storm-control
          |  +--rw broadcast
          |  |  +--rw cir?   uint32
          |  +--rw multicast
          |  |  +--rw cir?   uint32
          |  +--rw unicast
          |     +--rw cir?   uint32
          +--rw ipv6
          |  +--rw traffic-filter-list* [direction]
          |  |  +--rw direction      enumeration
          |  |  +--rw access-list?   string
          |  o--rw traffic-filter?        string
          |  o--rw in?                    empty
          |  o--rw out?                   empty
          +--rw rewrite
          |  +--rw ingress
          |     +--rw tag-config
          |     |  +--rw (rewrite-op)?
          |     |     +--:(pop-op)
          |     |     |  +--rw pop-op
          |     |     |     +--rw way?    enumeration
          |     |     |     +--rw mode?   enumeration
          |     |     +--:(push-op)
          |     |     |  +--rw push-op
          |     |     |     +--rw dot1ad?         uint16
          |     |     |     +--rw dot1q?          uint16
          |     |     |     +--rw vlan-type?      enumeration
          |     |     |     +--rw second-dot1q?   uint16
          |     |     |     +--rw mode?           enumeration
          |     |     +--:(translate-op)
          |     |        +--rw translate-op
          |     |           +--rw (translate-operation)?
          |     |              +--:(t1-to-1)
          |     |              |  +--rw t1-to-1
          |     |              |     +--rw dot1ad?      uint16
          |     |              |     +--rw dot1q?       uint16
          |     |              |     +--rw vlan-type?   enumeration
          |     |              |     +--rw mode?        enumeration
          |     |              +--:(t1-to-2)
          |     |              |  +--rw t1-to-2
          |     |              |     +--rw dot1ad?         uint16
          |     |              |     +--rw dot1q?          uint16
          |     |              |     +--rw vlan-type?      enumeration
          |     |              |     +--rw second-dot1q?   uint16
          |     |              |     +--rw mode?           enumeration
          |     |              +--:(t2-to-1)
          |     |              |  +--rw t2-to-1
          |     |              |     +--rw dot1ad?      uint16
          |     |              |     +--rw dot1q?       uint16
          |     |              |     +--rw vlan-type?   enumeration
          |     |              |     +--rw mode?        enumeration
          |     |              +--:(t2-to-2)
          |     |                 +--rw t2-to-2
          |     |                    +--rw dot1ad?         uint16
          |     |                    +--rw dot1q?          uint16
          |     |                    +--rw vlan-type?      enumeration
          |     |                    +--rw second-dot1q?   uint16
          |     |                    +--rw mode?           enumeration
          |     o--rw tag
          |        o--rw pop
          |        |  o--rw way?    enumeration
          |        |  o--rw mode?   enumeration
          |        o--rw push
          |        |  o--rw dot1q?   uint16
          |        |  o--rw mode?    enumeration
          |        o--rw translate
          |           o--rw t1-to-1
          |           |  o--rw dot1q?   uint16
          |           |  o--rw mode?    enumeration
          |           o--rw t1-to-2
          |           |  o--rw dot1q?          uint16
          |           |  o--rw second-dot1q?   uint16
          |           |  o--rw mode?           enumeration
          |           o--rw t2-to-1
          |           |  o--rw dot1q?   uint16
          |           |  o--rw mode?    enumeration
          |           o--rw t2-to-2
          |              o--rw dot1q?          uint16
          |              o--rw second-dot1q?   uint16
          |              o--rw mode?           enumeration
          +--rw group?                uint32
          +--rw errdisable
          |  +--rw recovery
          |     +--rw cause
          |        +--rw mac-security?     uint32
          |        +--rw l2proto-tunnel?   uint32
          |        +--rw storm-control?    uint32
          +--rw ethernet-container
          |  +--rw ethernet
          |     +--rw lmi
          |     |  +--rw ce-vlan
          |     |     +--rw map
          |     |        +--rw (map-choice)?
          |     |           +--:(any)
          |     |           |  +--rw any?          empty
          |     |           +--:(default)
          |     |           |  +--rw default?      empty
          |     |           +--:(untagged)
          |     |           |  +--rw untagged?     empty
          |     |           +--:(vlan-range)
          |     |              +--rw vlan-range?   string
          |     +--rw loopback
          |        +--rw permit
          |           +--rw external?   empty
          |           +--rw internal?   empty
          +--rw snmp
          |  +--rw trap
          |  |  +--rw link-status?   empty
          |  +--rw ifindex-persistence
          |  |  +--rw (persistence)?
          |  |     +--:(persist)
          |  |     |  +--rw persist?   empty
          |  |     +--:(clear)
          |  |        +--rw clear?     empty
          |  o--rw ifindex
          |     o--rw persist?   empty
          +--rw bridge-domain
          |  +--rw bridge-id?                uint16
          |  +--rw split-horizon-presence!
          |  |  +--rw group?   uint8
          |  o--rw split-horizon
          |  |  o--rw group?   uint8
          |  +--rw from-encapsulation?       empty
          +--rw mac
          |  +--rw security!
          |  |  +--rw address
          |  |  |  +--rw deny* [mac]
          |  |  |  |  +--rw mac    ios-types:cisco-mac-address-type
          |  |  |  +--rw permit* [mac]
          |  |  |     +--rw mac    ios-types:cisco-mac-address-type
          |  |  +--rw aging
          |  |  |  +--rw static?   empty
          |  |  |  +--rw sticky?   empty
          |  |  |  +--rw time
          |  |  |     +--rw duration?     uint16
          |  |  |     +--rw inactivity?   empty
          |  |  +--rw maximum
          |  |  |  +--rw addresses?   uint16
          |  |  +--rw sticky?      empty
          |  |  +--rw violation?   enumeration
          |  +--rw access-group* [acl-name]
          |     +--rw acl-name    string
          |     +--rw in?         empty
          |     +--rw out?        empty
          +--rw service-policy
          |  +--rw input* [name]
          |  |  +--rw name    string
          |  +--rw output* [name]
          |     +--rw name    string
          +--rw shutdown?             empty
          +--rw cfm
          |  +--rw encapsulation
          |  |  +--rw dot1ad
          |  |  |  +--rw vlan-id?   uint16
          |  |  |  +--rw cos?       uint8
          |  |  |  +--rw dot1q?     uint16
          |  |  |  +--rw cos2
          |  |  |     +--rw cos?   uint8
          |  |  +--rw dot1q
          |  |     +--rw vlan-id?        uint16
          |  |     +--rw cos?            uint8
          |  |     +--rw second-dot1q?   uint16
          |  |     +--rw cos2
          |  |        +--rw cos?   uint8
          |  +--rw mep-list
          |  |  +--rw domain* [name]
          |  |     +--rw name                string
          |  |     +--rw mpid                uint16
          |  |     +--rw unicast?            empty
          |  |     +--rw mac-address?        ios-types:cisco-mac-address-type
          |  |     +--rw alarm
          |  |     |  +--rw delay?          uint16
          |  |     |  +--rw notification?   enumeration
          |  |     |  +--rw reset?          uint16
          |  |     +--rw cos?                uint16
          |  |     +--rw continuity-check
          |  |     |  +--rw static
          |  |     |     +--rw rmep?   empty
          |  |     +--rw rmep
          |  |        +--rw mpid?   uint16
          |  o--rw mep
          |  |  o--rw domain?             string
          |  |  o--rw mpid?               uint16
          |  |  o--rw alarm
          |  |  |  o--rw delay?          uint16
          |  |  |  o--rw notification
          |  |  |  |  o--rw all?                     empty
          |  |  |  |  o--rw error-xcon?              empty
          |  |  |  |  o--rw mac-remote-error-xcon?   empty
          |  |  |  |  o--rw none?                    empty
          |  |  |  |  o--rw remote-error-xcon?       empty
          |  |  |  |  o--rw xcon?                    empty
          |  |  |  o--rw reset?          uint16
          |  |  o--rw cos?                uint16
          |  |  o--rw continuity-check
          |  |  |  +--rw static
          |  |  |     o--rw rmep?   empty
          |  |  o--rw rmep
          |  |     o--rw mpid?   uint16
          |  +--rw mip
          |  |  +--rw level?   uint8
          |  +--rw latching-loopback {ios-features:ecfm-llb}?
          |     +--rw domain?       string
          |     +--rw responder?    empty
          |     +--rw controller
          |        +--rw discover-interval?   uint8
          +--rw l2protocol
          |  +--rw discard!
          |  |  +--rw protocol*   enumeration
          |  +--rw peer!
          |  |  +--rw protocol*   enumeration
          |  +--rw forward!
          |  |  +--rw protocol*   enumeration
          |  +--rw tunnel!
          |     +--rw protocol*   enumeration
          +--rw lldp
             +--rw enable?   empty
  augment /ios:native/ios:interface/ios:Port-channel-subinterface/ios:Port-channel/ios:encapsulation/ios:encap-choice/ios:dot1Q/ios:dot1Q:
    +--rw primary?     string {ios-features:router-poch-lb}?
    +--rw secondary?   string {ios-features:router-poch-lb}?