PYANG Tree
 
 
module: ipi-aaa
  +--rw aaa
     +--rw vrfs
     |  +--rw vrf* [vrf-name]
     |     +--rw vrf-name         -> ../config/vrf-name
     |     +--rw config
     |     |  +--rw vrf-name?                     -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--rw authentication-method-rule?   cml-data-types:cml_line_t
     |     |  +--rw accounting-method-rule?       cml-data-types:cml_line_t
     |     |  +--rw authorization-method-rule?    cml-data-types:cml_line_t
     |     |  +--rw enable-fallback?              empty
     |     |  +--rw non-existent?                 boolean
     |     |  +--rw error-enable?                 empty
     |     +--ro state
     |     |  +--ro vrf-name?                     -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--ro authentication-method-rule?   cml-data-types:cml_line_t
     |     |  +--ro accounting-method-rule?       cml-data-types:cml_line_t
     |     |  +--ro authorization-method-rule?    cml-data-types:cml_line_t
     |     |  +--ro enable-fallback?              empty
     |     |  +--ro non-existent?                 boolean
     |     |  +--ro error-enable?                 empty
     |     +--rw server-groups
     |        +--rw server-group* [group-type group-name]
     |           +--rw group-type          -> ../config/group-type
     |           +--rw group-name          -> ../config/group-name
     |           +--rw config
     |           |  +--rw group-type?   ipi-aaa-types:aaa_server_grp_type_t
     |           |  +--rw group-name?   string
     |           +--ro state
     |           |  +--ro group-type?   ipi-aaa-types:aaa_server_grp_type_t
     |           |  +--ro group-name?   string
     |           +--rw server-addresses
     |              +--rw server-address* [host-address]
     |                 +--rw host-address    -> ../config/host-address
     |                 +--rw config
     |                 |  +--rw host-address?   cml-data-types:cml_hostname_t
     |                 +--ro state
     |                    +--ro host-address?   cml-data-types:cml_hostname_t
     +--rw aaa-authentication-console
     |  +--rw config
     |  |  +--rw authentication-method-rule?   cml-data-types:cml_line_t
     |  |  +--rw enable-fallback?              boolean
     |  |  +--rw authorization-method-rule?    cml-data-types:cml_line_t
     |  |  +--rw accounting-method-rule?       cml-data-types:cml_line_t
     |  |  +--rw user-non-existent?            boolean
     |  +--ro state
     |     +--ro authentication-method-rule?   cml-data-types:cml_line_t
     |     +--ro enable-fallback?              boolean
     |     +--ro authorization-method-rule?    cml-data-types:cml_line_t
     |     +--ro accounting-method-rule?       cml-data-types:cml_line_t
     |     +--ro user-non-existent?            boolean
     +--rw aaa-user
     |  +--rw config
     |  |  +--rw authentication-max-failure-attempts?   uint8
     |  |  +--rw local-user-unlock-timeout?             uint16
     |  +--ro state
     |  |  +--ro authentication-max-failure-attempts?   uint8
     |  |  +--ro local-user-unlock-timeout?             uint16
     |  +--rw password-policy
     |     +--rw config
     |     |  +--rw enable?              empty
     |     |  +--rw numeric-count?       uint8
     |     |  +--rw uppercase-count?     uint8
     |     |  +--rw lowercase-count?     uint8
     |     |  +--rw special-count?       uint8
     |     |  +--rw history?             uint16
     |     |  +--rw maxsequence?         uint8
     |     |  +--rw disable-usercheck?   empty
     |     |  +--rw maxrepeat?           uint8
     |     |  +--rw min-length?          uint8
     |     +--ro state
     |     |  +--ro enable?              empty
     |     |  +--ro numeric-count?       uint8
     |     |  +--ro uppercase-count?     uint8
     |     |  +--ro lowercase-count?     uint8
     |     |  +--ro special-count?       uint8
     |     |  +--ro history?             uint16
     |     |  +--ro maxsequence?         uint8
     |     |  +--ro disable-usercheck?   empty
     |     |  +--ro maxrepeat?           uint8
     |     |  +--ro min-length?          uint8
     |     +--rw role-expdays
     |     |  +--rw role-expday* [role]
     |     |     +--rw role      -> ../config/role
     |     |     +--rw config
     |     |     |  +--rw expire?   uint16
     |     |     |  +--rw role?     ipi-user-management-types:user_mgmt_role_types_t
     |     |     |  +--rw user?     string
     |     |     +--ro state
     |     |        +--ro expire?   uint16
     |     |        +--ro role?     ipi-user-management-types:user_mgmt_role_types_t
     |     |        +--ro user?     string
     |     +--rw user-expdays
     |        +--rw user-expday* [user]
     |           +--rw user      -> ../config/user
     |           +--rw config
     |           |  +--rw expire?   uint16
     |           |  +--rw role?     ipi-user-management-types:user_mgmt_role_types_t
     |           |  +--rw user?     string
     |           +--ro state
     |              +--ro expire?   uint16
     |              +--ro role?     ipi-user-management-types:user_mgmt_role_types_t
     |              +--ro user?     string
     +--rw debug
        +--rw config
        |  +--rw enable?   empty
        +--ro state
           +--ro enable?                  empty
           +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
 
  rpcs:
    +---x aaa-terminal-debug-on {feature-list:HAVE_HOSTPD,feature-list:HAVE_AAA}?
    +---x aaa-terminal-debug-off {feature-list:HAVE_HOSTPD,feature-list:HAVE_AAA}?
    +---x aaa-clear-local-user-lockout {feature-list:HAVE_AAA}?
       +---w input
          +---w username    string
 
 
 
 
 
 
 
module: ipi-acl
  +--rw acl
     +--rw acl-sets
     |  +--rw acl-set* [name type]
     |     +--rw name               -> ../config/name
     |     +--rw type               -> ../config/type
     |     +--rw config
     |     |  +--rw name?                               string
     |     |  +--rw type?                               ipi-acl-types:acl_types_t
     |     |  +--rw description?                        cml-data-types:cml_line_t
     |     |  +--rw ipv6-disable-default-icmpv6-rule?   empty
     |     +--ro state
     |     |  +--ro name?                               string
     |     |  +--ro type?                               ipi-acl-types:acl_types_t
     |     |  +--ro description?                        cml-data-types:cml_line_t
     |     |  +--ro ipv6-disable-default-icmpv6-rule?   empty
     |     +--rw default-actions
     |     |  +--rw config
     |     |  |  +--rw forwarding-action-default?   ipi-acl-types:acl_default_forwarding_action_t
     |     |  +--ro state
     |     |     +--ro counters
     |     |     |  +--ro matched-packets?   yang:counter64
     |     |     +--ro forwarding-action-default?   ipi-acl-types:acl_default_forwarding_action_t
     |     +--rw acl-entries
     |     |  +--rw acl-entry* [sequence-id]
     |     |     +--rw sequence-id    -> ../config/sequence-id
     |     |     +--rw config
     |     |     |  +--rw sequence-id?   uint32
     |     |     +--ro state
     |     |     |  +--ro sequence-id?   uint32
     |     |     +--rw ipv4
     |     |     |  +--rw config
     |     |     |  |  +--rw forwarding-action?                 ipi-acl-types:acl_forwarding_action_t
     |     |     |  |  +--rw vlan-id?                           uint16
     |     |     |  |  +--rw source-address?                    ipi-acl-types:acl_any_ipv4_src_addr_t
     |     |     |  |  +--rw destination-address?               ipi-acl-types:acl_any_ipv4_dest_addr_t
     |     |     |  |  +--rw dscp?                              ipi-acl-types:acl_dscp_t
     |     |     |  |  +--rw precedence?                        ipi-acl-types:acl_precedence_t
     |     |     |  |  +--rw inner-vlan-id?                     uint16
     |     |     |  |  +--rw (protocol)?
     |     |     |  |  |  +--:(tcp)
     |     |     |  |  |  |  +--rw protocol-tcp?                empty
     |     |     |  |  |  |  +--rw tcp-source-port?             ipi-acl-types:acl_tcp_src_port_t
     |     |     |  |  |  |  +--rw tcp-destination-port?        ipi-acl-types:acl_tcp_dest_port_t
     |     |     |  |  |  |  +--rw tcp-flags?                   ipi-acl-types:acl_tcp_flags_t
     |     |     |  |  |  +--:(udp)
     |     |     |  |  |  |  +--rw protocol-udp?                empty
     |     |     |  |  |  |  +--rw udp-source-port?             ipi-acl-types:acl_udp_src_port_t
     |     |     |  |  |  |  +--rw udp-destination-port?        ipi-acl-types:acl_udp_dest_port_t
     |     |     |  |  |  +--:(icmp)
     |     |     |  |  |  |  +--rw protocol-icmp?               empty
     |     |     |  |  |  +--:(other-protocols)
     |     |     |  |  |     +--rw protocol-name?               ipi-acl-types:acl_ip_protocols_t
     |     |     |  |  +--rw source-port-operator?              ipi-acl-types:acl_src_port_operations_t
     |     |     |  |  +--rw lower-source-port-in-range?        uint16
     |     |     |  |  +--rw upper-source-port-in-range?        uint16
     |     |     |  |  +--rw destination-port-operator?         ipi-acl-types:acl_dest_port_operations_t
     |     |     |  |  +--rw lower-destination-port-in-range?   uint16
     |     |     |  |  +--rw upper-destination-port-in-range?   uint16
     |     |     |  +--ro state
     |     |     |     +--ro counters
     |     |     |     |  +--ro matched-packets?   yang:counter64
     |     |     |     +--ro forwarding-action?                 ipi-acl-types:acl_forwarding_action_t
     |     |     |     +--ro vlan-id?                           uint16
     |     |     |     +--ro source-address?                    ipi-acl-types:acl_any_ipv4_src_addr_t
     |     |     |     +--ro destination-address?               ipi-acl-types:acl_any_ipv4_dest_addr_t
     |     |     |     +--ro dscp?                              ipi-acl-types:acl_dscp_t
     |     |     |     +--ro precedence?                        ipi-acl-types:acl_precedence_t
     |     |     |     +--ro inner-vlan-id?                     uint16
     |     |     |     +--ro (protocol)?
     |     |     |     |  +--:(tcp)
     |     |     |     |  |  +--ro protocol-tcp?                empty
     |     |     |     |  |  +--ro tcp-source-port?             ipi-acl-types:acl_tcp_src_port_t
     |     |     |     |  |  +--ro tcp-destination-port?        ipi-acl-types:acl_tcp_dest_port_t
     |     |     |     |  |  +--ro tcp-flags?                   ipi-acl-types:acl_tcp_flags_t
     |     |     |     |  +--:(udp)
     |     |     |     |  |  +--ro protocol-udp?                empty
     |     |     |     |  |  +--ro udp-source-port?             ipi-acl-types:acl_udp_src_port_t
     |     |     |     |  |  +--ro udp-destination-port?        ipi-acl-types:acl_udp_dest_port_t
     |     |     |     |  +--:(icmp)
     |     |     |     |  |  +--ro protocol-icmp?               empty
     |     |     |     |  +--:(other-protocols)
     |     |     |     |     +--ro protocol-name?               ipi-acl-types:acl_ip_protocols_t
     |     |     |     +--ro source-port-operator?              ipi-acl-types:acl_src_port_operations_t
     |     |     |     +--ro lower-source-port-in-range?        uint16
     |     |     |     +--ro upper-source-port-in-range?        uint16
     |     |     |     +--ro destination-port-operator?         ipi-acl-types:acl_dest_port_operations_t
     |     |     |     +--ro lower-destination-port-in-range?   uint16
     |     |     |     +--ro upper-destination-port-in-range?   uint16
     |     |     +--rw ipv6 {feature-list:HAVE_IPV6}?
     |     |     |  +--rw config
     |     |     |  |  +--rw forwarding-action?                 ipi-acl-types:acl_forwarding_action_t
     |     |     |  |  +--rw vlan-id?                           uint16
     |     |     |  |  +--rw source-address?                    ipi-acl-types:acl_any_ipv6_src_addr_t
     |     |     |  |  +--rw destination-address?               ipi-acl-types:acl_any_ipv6_dest_addr_t
     |     |     |  |  +--rw dscp?                              ipi-acl-types:acl_dscp_t
     |     |     |  |  +--rw (protocol)?
     |     |     |  |  |  +--:(tcp)
     |     |     |  |  |  |  +--rw protocol-tcp?                empty
     |     |     |  |  |  |  +--rw tcp-source-port?             ipi-acl-types:acl_tcp_src_port_t
     |     |     |  |  |  |  +--rw tcp-destination-port?        ipi-acl-types:acl_tcp_dest_port_t
     |     |     |  |  |  +--:(udp)
     |     |     |  |  |  |  +--rw protocol-udp?                empty
     |     |     |  |  |  |  +--rw udp-source-port?             ipi-acl-types:acl_udp_src_port_t
     |     |     |  |  |  |  +--rw udp-destination-port?        ipi-acl-types:acl_udp_dest_port_t
     |     |     |  |  |  +--:(icmp)
     |     |     |  |  |  |  +--rw protocol-icmp?               empty
     |     |     |  |  |  +--:(sctp)
     |     |     |  |  |  |  +--rw protocol-sctp?               empty
     |     |     |  |  |  |  +--rw sctp-source-port?            uint16
     |     |     |  |  |  |  +--rw sctp-destination-port?       uint16
     |     |     |  |  |  +--:(other-protocols)
     |     |     |  |  |     +--rw protocol-name?               ipi-acl-types:acl_ipv6_protocols_t
     |     |     |  |  +--rw source-port-operator?              ipi-acl-types:acl_src_port_operations_t
     |     |     |  |  +--rw lower-source-port-in-range?        uint16
     |     |     |  |  +--rw upper-source-port-in-range?        uint16
     |     |     |  |  +--rw destination-port-operator?         ipi-acl-types:acl_dest_port_operations_t
     |     |     |  |  +--rw lower-destination-port-in-range?   uint16
     |     |     |  |  +--rw upper-destination-port-in-range?   uint16
     |     |     |  +--ro state
     |     |     |     +--ro counters
     |     |     |     |  +--ro matched-packets?   yang:counter64
     |     |     |     +--ro forwarding-action?                 ipi-acl-types:acl_forwarding_action_t
     |     |     |     +--ro vlan-id?                           uint16
     |     |     |     +--ro source-address?                    ipi-acl-types:acl_any_ipv6_src_addr_t
     |     |     |     +--ro destination-address?               ipi-acl-types:acl_any_ipv6_dest_addr_t
     |     |     |     +--ro dscp?                              ipi-acl-types:acl_dscp_t
     |     |     |     +--ro (protocol)?
     |     |     |     |  +--:(tcp)
     |     |     |     |  |  +--ro protocol-tcp?                empty
     |     |     |     |  |  +--ro tcp-source-port?             ipi-acl-types:acl_tcp_src_port_t
     |     |     |     |  |  +--ro tcp-destination-port?        ipi-acl-types:acl_tcp_dest_port_t
     |     |     |     |  +--:(udp)
     |     |     |     |  |  +--ro protocol-udp?                empty
     |     |     |     |  |  +--ro udp-source-port?             ipi-acl-types:acl_udp_src_port_t
     |     |     |     |  |  +--ro udp-destination-port?        ipi-acl-types:acl_udp_dest_port_t
     |     |     |     |  +--:(icmp)
     |     |     |     |  |  +--ro protocol-icmp?               empty
     |     |     |     |  +--:(sctp)
     |     |     |     |  |  +--ro protocol-sctp?               empty
     |     |     |     |  |  +--ro sctp-source-port?            uint16
     |     |     |     |  |  +--ro sctp-destination-port?       uint16
     |     |     |     |  +--:(other-protocols)
     |     |     |     |     +--ro protocol-name?               ipi-acl-types:acl_ipv6_protocols_t
     |     |     |     +--ro source-port-operator?              ipi-acl-types:acl_src_port_operations_t
     |     |     |     +--ro lower-source-port-in-range?        uint16
     |     |     |     +--ro upper-source-port-in-range?        uint16
     |     |     |     +--ro destination-port-operator?         ipi-acl-types:acl_dest_port_operations_t
     |     |     |     +--ro lower-destination-port-in-range?   uint16
     |     |     |     +--ro upper-destination-port-in-range?   uint16
     |     |     +--rw arp
     |     |     |  +--rw config
     |     |     |  |  +--rw forwarding-action?               ipi-acl-types:acl_forwarding_action_t
     |     |     |  |  +--rw vlan-id?                         uint16
     |     |     |  |  +--rw inner-vlan-id?                   uint16
     |     |     |  |  +--rw (source-mac-options)?
     |     |     |  |  |  +--:(any-mac)
     |     |     |  |  |  |  +--rw source-mac-any?            empty
     |     |     |  |  |  +--:(host-mac)
     |     |     |  |  |  |  +--rw source-mac-host?           ipi-acl-types:acl_mac_addr_t
     |     |     |  |  |  +--:(mac-with-mask)
     |     |     |  |  |     +--rw source-mac-address?        ipi-acl-types:acl_mac_addr_t
     |     |     |  |  |     +--rw source-mac-mask?           ipi-acl-types:acl_mac_addr_t
     |     |     |  |  +--rw arp-packet-type?                 ipi-acl-types:acl_arp_type_t
     |     |     |  |  +--rw source-ip-address?               ipi-acl-types:acl_any_ipv4_src_addr_t
     |     |     |  |  +--rw destination-ip-address?          ipi-acl-types:acl_any_ipv4_dest_addr_t
     |     |     |  |  +--rw (destination-mac-options)?
     |     |     |  |     +--:(any-mac)
     |     |     |  |     |  +--rw destination-mac-any?       empty
     |     |     |  |     +--:(host-mac)
     |     |     |  |     |  +--rw destination-mac-host?      ipi-acl-types:acl_mac_addr_t
     |     |     |  |     +--:(mac-with-mask)
     |     |     |  |        +--rw destination-mac-address?   ipi-acl-types:acl_mac_addr_t
     |     |     |  |        +--rw destination-mac-mask?      ipi-acl-types:acl_mac_addr_t
     |     |     |  +--ro state
     |     |     |     +--ro counters
     |     |     |     |  +--ro matched-packets?   yang:counter64
     |     |     |     +--ro forwarding-action?               ipi-acl-types:acl_forwarding_action_t
     |     |     |     +--ro vlan-id?                         uint16
     |     |     |     +--ro inner-vlan-id?                   uint16
     |     |     |     +--ro (source-mac-options)?
     |     |     |     |  +--:(any-mac)
     |     |     |     |  |  +--ro source-mac-any?            empty
     |     |     |     |  +--:(host-mac)
     |     |     |     |  |  +--ro source-mac-host?           ipi-acl-types:acl_mac_addr_t
     |     |     |     |  +--:(mac-with-mask)
     |     |     |     |     +--ro source-mac-address?        ipi-acl-types:acl_mac_addr_t
     |     |     |     |     +--ro source-mac-mask?           ipi-acl-types:acl_mac_addr_t
     |     |     |     +--ro arp-packet-type?                 ipi-acl-types:acl_arp_type_t
     |     |     |     +--ro source-ip-address?               ipi-acl-types:acl_any_ipv4_src_addr_t
     |     |     |     +--ro destination-ip-address?          ipi-acl-types:acl_any_ipv4_dest_addr_t
     |     |     |     +--ro (destination-mac-options)?
     |     |     |        +--:(any-mac)
     |     |     |        |  +--ro destination-mac-any?       empty
     |     |     |        +--:(host-mac)
     |     |     |        |  +--ro destination-mac-host?      ipi-acl-types:acl_mac_addr_t
     |     |     |        +--:(mac-with-mask)
     |     |     |           +--ro destination-mac-address?   ipi-acl-types:acl_mac_addr_t
     |     |     |           +--ro destination-mac-mask?      ipi-acl-types:acl_mac_addr_t
     |     |     +--rw mac
     |     |        +--rw config
     |     |        |  +--rw forwarding-action?               ipi-acl-types:acl_forwarding_action_t
     |     |        |  +--rw vlan-id?                         uint16
     |     |        |  +--rw inner-vlan-id?                   uint16
     |     |        |  +--rw (source-mac-options)?
     |     |        |  |  +--:(any-mac)
     |     |        |  |  |  +--rw source-mac-any?            empty
     |     |        |  |  +--:(host-mac)
     |     |        |  |  |  +--rw source-mac-host?           ipi-acl-types:acl_mac_addr_t
     |     |        |  |  +--:(mac-with-mask)
     |     |        |  |     +--rw source-mac-address?        ipi-acl-types:acl_mac_addr_t
     |     |        |  |     +--rw source-mac-mask?           ipi-acl-types:acl_mac_addr_t
     |     |        |  +--rw ethertype?                       ipi-acl-types:acl_ether_type_t
     |     |        |  +--rw arp-packet-type?                 ipi-acl-types:acl_arp_packet_type_t
     |     |        |  +--rw cos-value?                       uint8
     |     |        |  +--rw (destination-mac-options)?
     |     |        |     +--:(any-mac)
     |     |        |     |  +--rw destination-mac-any?       empty
     |     |        |     +--:(host-mac)
     |     |        |     |  +--rw destination-mac-host?      ipi-acl-types:acl_mac_addr_t
     |     |        |     +--:(mac-with-mask)
     |     |        |        +--rw destination-mac-address?   ipi-acl-types:acl_mac_addr_t
     |     |        |        +--rw destination-mac-mask?      ipi-acl-types:acl_mac_addr_t
     |     |        +--ro state
     |     |           +--ro counters
     |     |           |  +--ro matched-packets?   yang:counter64
     |     |           +--ro forwarding-action?               ipi-acl-types:acl_forwarding_action_t
     |     |           +--ro vlan-id?                         uint16
     |     |           +--ro inner-vlan-id?                   uint16
     |     |           +--ro (source-mac-options)?
     |     |           |  +--:(any-mac)
     |     |           |  |  +--ro source-mac-any?            empty
     |     |           |  +--:(host-mac)
     |     |           |  |  +--ro source-mac-host?           ipi-acl-types:acl_mac_addr_t
     |     |           |  +--:(mac-with-mask)
     |     |           |     +--ro source-mac-address?        ipi-acl-types:acl_mac_addr_t
     |     |           |     +--ro source-mac-mask?           ipi-acl-types:acl_mac_addr_t
     |     |           +--ro ethertype?                       ipi-acl-types:acl_ether_type_t
     |     |           +--ro arp-packet-type?                 ipi-acl-types:acl_arp_packet_type_t
     |     |           +--ro cos-value?                       uint8
     |     |           +--ro (destination-mac-options)?
     |     |              +--:(any-mac)
     |     |              |  +--ro destination-mac-any?       empty
     |     |              +--:(host-mac)
     |     |              |  +--ro destination-mac-host?      ipi-acl-types:acl_mac_addr_t
     |     |              +--:(mac-with-mask)
     |     |                 +--ro destination-mac-address?   ipi-acl-types:acl_mac_addr_t
     |     |                 +--ro destination-mac-mask?      ipi-acl-types:acl_mac_addr_t
     |     +--ro summary-info
     |        +--ro state
     |        |  +--ro counters
     |        |  |  +--ro total-acl-entries?   yang:counter32
     |        |  +--ro statistics-enabled?   empty
     |        +--ro interfaces
     |        |  +--ro interface* [interface-name]
     |        |     +--ro interface-name    -> ../state/interface-name
     |        |     +--ro state
     |        |        +--ro interface-name?     -> /ipi-interface:interfaces/interface/name
     |        |        +--ro filter-direction?   ipi-acl-types:acl_filter_direction_t
     |        |        +--ro interface-type?     ipi-acl-types:acl_interface_type_t
     |        |        +--ro interface-status?   ipi-acl-types:acl_interface_status_t
     |        +--ro vty-line
     |           +--ro state
     |              +--ro filter-direction?   ipi-acl-types:acl_filter_direction_t
     +--rw standard-acl-sets
     |  +--rw standard-acl-set* [name type]
     |     +--rw name                -> ../config/name
     |     +--rw type                -> ../config/type
     |     +--rw config
     |     |  +--rw name?   string
     |     |  +--rw type?   ipi-acl-types:acl_standard_types_t
     |     +--ro state
     |     |  +--ro name?   string
     |     |  +--ro type?   ipi-acl-types:acl_standard_types_t
     |     +--rw ipv4-acl-entries
     |     |  +--rw ipv4-acl-entry* [source-address]
     |     |     +--rw source-address    -> ../config/source-address
     |     |     +--rw config
     |     |     |  +--rw source-address?      ipi-acl-types:acl_any_ipv4_src_addr_t
     |     |     |  +--rw forwarding-action    ipi-acl-types:acl_forwarding_action_t
     |     |     +--ro state
     |     |        +--ro source-address?      ipi-acl-types:acl_any_ipv4_src_addr_t
     |     |        +--ro forwarding-action    ipi-acl-types:acl_forwarding_action_t
     |     +--rw ipv6-acl-entries {feature-list:HAVE_IPV6}?
     |        +--rw ipv6-acl-entry* [source-address]
     |           +--rw source-address    -> ../config/source-address
     |           +--rw config
     |           |  +--rw source-address?      ipi-acl-types:acl_any_ipv6_src_addr_t
     |           |  +--rw forwarding-action    ipi-acl-types:acl_forwarding_action_t
     |           +--ro state
     |              +--ro source-address?      ipi-acl-types:acl_any_ipv6_src_addr_t
     |              +--ro forwarding-action    ipi-acl-types:acl_forwarding_action_t
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name                -> ../config/name
     |     +--rw config
     |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
     |     +--ro state
     |     |  +--ro name?   -> /ipi-interface:interfaces/interface/name
     |     +--rw ingress-acl-sets
     |     |  +--rw ingress-acl-set* [acl-type]
     |     |     +--rw acl-type         -> ../config/acl-type
     |     |     +--rw config
     |     |     |  +--rw acl-type?   ipi-acl-types:acl_types_t
     |     |     +--ro state
     |     |     |  +--ro acl-type?   ipi-acl-types:acl_types_t
     |     |     +--rw access-groups
     |     |        +--rw access-group* [acl-name]
     |     |           +--rw acl-name    -> ../config/acl-name
     |     |           +--rw config
     |     |           |  +--rw acl-name?     string
     |     |           |  +--rw time-range?   string
     |     |           +--ro state
     |     |              +--ro acl-name?     string
     |     |              +--ro time-range?   string
     |     +--rw egress-acl-sets
     |        +--rw egress-acl-set* [acl-type]
     |           +--rw acl-type         -> ../config/acl-type
     |           +--rw config
     |           |  +--rw acl-type?   ipi-acl-types:acl_types_t
     |           +--ro state
     |           |  +--ro acl-type?   ipi-acl-types:acl_types_t
     |           +--rw access-groups
     |              +--rw access-group* [acl-name]
     |                 +--rw acl-name    -> ../config/acl-name
     |                 +--rw config
     |                 |  +--rw acl-name?     string
     |                 |  +--rw time-range?   string
     |                 +--ro state
     |                    +--ro acl-name?     string
     |                    +--ro time-range?   string
     +--rw vty-line
        +--rw ingress-acl-sets
        |  +--rw ingress-acl-set* [acl-type]
        |     +--rw acl-type    -> ../config/acl-type
        |     +--rw config
        |     |  +--rw acl-type?   ipi-acl-types:acl_vty_types_t
        |     |  +--rw acl-name?   string
        |     +--ro state
        |        +--ro acl-type?   ipi-acl-types:acl_vty_types_t
        |        +--ro acl-name?   string
        +--rw egress-acl-sets
           +--rw egress-acl-set* [acl-type]
              +--rw acl-type    -> ../config/acl-type
              +--rw config
              |  +--rw acl-type?   ipi-acl-types:acl_vty_types_t
              |  +--rw acl-name?   string
              +--ro state
                 +--ro acl-type?   ipi-acl-types:acl_vty_types_t
                 +--ro acl-name?   string
 
  rpcs:
    +---x clear-access-list-counters-all {feature-list:HAVE_ACL}?
    +---x clear-access-list-counters {feature-list:HAVE_ACL}?
    |  +---w input
    |     +---w name    string
    +---x clear-ip-access-list-counters-all {feature-list:HAVE_ACL}?
    +---x clear-ip-access-list-counters {feature-list:HAVE_ACL}?
    |  +---w input
    |     +---w name    string
    +---x clear-ipv6-access-list-counters-all {feature-list:HAVE_IPV6}?
    +---x clear-ipv6-access-list-counters {feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w name    string
    +---x clear-mac-access-list-counters-all {feature-list:HAVE_ACL}?
    +---x clear-mac-access-list-counters {feature-list:HAVE_ACL}?
    |  +---w input
    |     +---w name    string
    +---x clear-arp-access-list-counters-all {feature-list:HAVE_ACL}?
    +---x clear-arp-access-list-counters {feature-list:HAVE_ACL}?
       +---w input
          +---w name    string
 
 
module: ipi-alarms
  +--rw alarms
     +--ro alarm* [id]
        +--ro id       -> ../state/id
        +--ro state
           +--ro id?                         string
           +--ro resource?                   string
           +--ro text?                       string
           +--ro time-created?               uint64
           +--ro alarm-reported-timestamp?   ipi-alarms-types:alarm_date_time_t
           +--ro alarm-severity?             ipi-alarms-types:alarm_severity_t
           +--ro type-id?                    ipi-alarms-types:alarm_type_id_t
 
  augment /ipi-platform:components/ipi-platform:component/ipi-platform:state:
    +--ro component-alarm {feature-list:HAVE_CMMD}?
       +--ro equipment-failure?   boolean
 
  notifications:
    +---n alarm
       +--ro severity?                   cml-data-types:cml_notif_severity_t
       +--ro eventClass?                 cml-data-types:cml_notif_class_t
       +--ro id?                         string
       +--ro resource?                   string
       +--ro text?                       string
       +--ro time-created?               uint64
       +--ro alarm-reported-timestamp?   ipi-alarms-types:alarm_date_time_t
       +--ro alarm-severity?             ipi-alarms-types:alarm_severity_t
       +--ro type-id?                    ipi-alarms-types:alarm_type_id_t
       +--ro is-clear?                   boolean
 
 
module: ipi-arp
  +--rw arp
     +--rw entries
     |  +--rw entry* [vrf-name ip-address]
     |     +--rw vrf-name      -> ../config/vrf-name
     |     +--rw ip-address    -> ../config/ip-address
     |     +--rw config
     |     |  +--rw vrf-name?                 -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--rw ip-address?               inet:ipv4-address
     |     |  +--rw mac-address               cml-data-types:cml_mac_addr_t
     |     |  +--rw respond-to-arp-request?   empty
     |     +--ro state
     |        +--ro vrf-name?                  -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |        +--ro ip-address?                inet:ipv4-address
     |        +--ro mac-address                cml-data-types:cml_mac_addr_t
     |        +--ro respond-to-arp-request?    empty
     |        +--ro arp-age?                   string
     |        +--ro interface-name?            string
     |        +--ro physical-interface-name?   string
     |        +--ro arp-state?                 ipi-arp-types:ndd_arp_state_t
     |        +--ro interface-state?           ipi-arp-types:ndd_arp_if_type_t
     +--rw global {feature-list:HAVE_CUSTOM2_NDD}?
     |  +--rw config {feature-list:HAVE_CUSTOM2_NDD}?
     |  |  +--rw icmp-redirect?   empty
     |  +--ro state {feature-list:HAVE_CUSTOM2_NDD}?
     |     +--ro icmp-redirect?   empty
     +--rw debug
     |  +--rw config
     |  |  +--rw enable?   empty
     |  +--ro state
     |     +--ro enable?                  empty
     |     +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name      -> ../config/name
     |     +--rw config
     |     |  +--rw name?                     -> /ipi-interface:interfaces/interface/name
     |     |  +--rw enable-proxy-arp?         empty
     |     |  +--rw enable-local-proxy-arp?   empty
     |     |  +--rw enable-ip-redirects?      empty
     |     |  +--rw arp-ageing-timeout?       uint16
     |     |  +--rw arp-reachable-time?       uint16
     |     +--ro state
     |        +--ro name?                     -> /ipi-interface:interfaces/interface/name
     |        +--ro enable-proxy-arp?         empty
     |        +--ro enable-local-proxy-arp?   empty
     |        +--ro enable-ip-redirects?      empty
     |        +--ro arp-ageing-timeout?       uint16
     |        +--ro arp-reachable-time?       uint16
     +--ro dynamic-arp* [vrf-name]
        +--ro vrf-name             string
        +--ro entry* [ipv4-address]
        |  +--ro ipv4-address               inet:ipv4-address
        |  +--ro mac-address?               cml-data-types:cml_mac_addr_t
        |  +--ro arp-age?                   string
        |  +--ro interface-name?            string
        |  +--ro physical-interface-name?   string
        |  +--ro arp-state?                 ipi-arp-types:ndd_arp_state_t
        |  +--ro interface-state?           ipi-arp-types:ndd_arp_if_type_t
        +--ro adjacency-summary
           +--ro resolved-arp?     uint32
           +--ro incomplete-arp?   uint32
           +--ro unknown-arp?      uint32
           +--ro total-arp?        uint32
 
  rpcs:
    +---x arp-terminal-debug-on {feature-list:HAVE_L3,feature-list:HAVE_NDD}?
    +---x arp-terminal-debug-off {feature-list:HAVE_L3,feature-list:HAVE_NDD}?
    +---x clear-arp-entry {feature-list:HAVE_L3,feature-list:HAVE_NDD}?
    |  +---w input
    |     +---w ip-address?   inet:ipv4-address
    |     +---w vrf-name?     string
    +---x clear-arp-entry-per-interface {feature-list:HAVE_L3,feature-list:HAVE_NDD}?
       +---w input
          +---w if-name     string
          +---w vrf-name?   string
 
 
 
module: ipi-authentication-radius
  +--rw authentication-radius {feature-list:HAVE_ENCRYPT_CLEARTEXT}?
     +--rw global
     |  +--rw config
     |  |  +--rw source-address?           inet:ipv4-address
     |  |  +--rw port?                     uint16
     |  |  +--rw timeout?                  uint8
     |  |  +--rw retransmit-max-retries?   uint8
     |  |  +--rw (key-type)?
     |  |     +--:(key-string)
     |  |     |  +--rw key-string?         string
     |  |     +--:(encrypted)
     |  |        +--rw encryption-key?     string
     |  +--ro state
     |     +--ro source-address?           inet:ipv4-address
     |     +--ro port?                     uint16
     |     +--ro timeout?                  uint8
     |     +--ro retransmit-max-retries?   uint8
     |     +--ro (key-type)?
     |        +--:(key-string)
     |        |  +--ro key-string?         string
     |        +--:(encrypted)
     |           +--ro encryption-key?     string
     +--rw hosts
        +--rw host* [host-address]
           +--rw host-address    -> ../config/host-address
           +--rw config
           |  +--rw host-address?                  inet:ipv4-address
           |  +--rw host-port?                     uint16
           |  +--rw host-timeout?                  uint8
           |  +--rw host-retransmit-max-retries?   uint8
           |  +--rw (host-key-type)?
           |     +--:(key-string)
           |     |  +--rw key-string?              string
           |     +--:(encrypted)
           |        +--rw encryption-key?          string
           +--ro state
              +--ro host-address?                              inet:ipv4-address
              +--ro host-port?                                 uint16
              +--ro host-timeout?                              uint8
              +--ro host-retransmit-max-retries?               uint8
              +--ro (host-key-type)?
              |  +--:(key-string)
              |  |  +--ro key-string?                          string
              |  +--:(encrypted)
              |     +--ro encryption-key?                      string
              +--ro next-radius-message-id?                    uint8
              +--ro encryption-key-operational?                string
              +--ro host-port-operational?                     uint16
              +--ro host-timeout-operational?                  uint8
              +--ro host-retransmit-max-retries-operational?   uint8
 
 
module: ipi-authentication
  +--rw authentication {feature-list:HAVE_AUTHD}?
     +--rw global
     |  +--rw config
     |  |  +--rw mac-authentication?     empty {feature-list:HAVE_MAC_AUTH}?
     |  |  +--rw dot1x-authentication?   empty
     |  +--ro state
     |     +--ro mac-authentication?     empty {feature-list:HAVE_MAC_AUTH}?
     |     +--ro dot1x-authentication?   empty
     +--rw dot1x-interfaces
     |  +--rw dot1x-interface* [name]
     |     +--rw name                                       -> ../config/name
     |     +--rw config
     |     |  +--rw name?               -> /ipi-interface:interfaces/interface/name
     |     |  +--rw dot1x-control       ipi-authentication-types:auth_dot1x_control_t
     |     |  +--rw protocol-version?   ipi-authentication-types:auth_dot1x_eapol_version_t
     |     +--ro state
     |     |  +--ro name?               -> /ipi-interface:interfaces/interface/name
     |     |  +--ro dot1x-control       ipi-authentication-types:auth_dot1x_control_t
     |     |  +--ro protocol-version?   ipi-authentication-types:auth_dot1x_eapol_version_t
     |     +--ro auth-dot1x-interface-operational
     |     |  +--ro state
     |     |     +--ro dot1x-control-operational?   ipi-authentication-types:auth_dot1x_control_t
     |     |     +--ro supplicant-name?             string
     |     |     +--ro supplicant-mac-address?      ipi-authentication-types:auth_dot1x_mac_address_t
     |     |     +--ro port-enabled?                boolean
     |     |     +--ro authentication-abort?        boolean
     |     |     +--ro authentication-fail?         boolean
     |     |     +--ro authentication-start?        boolean
     |     |     +--ro authentication-timeout?      boolean
     |     |     +--ro authentication-success?      boolean
     |     |     +--ro key-available?               boolean
     |     |     +--ro key-tx-enabled?              boolean
     |     +--ro authentication-control-dir-operational
     |     |  +--ro state
     |     |     +--ro admin-controlled-directions?   ipi-authentication-types:auth_dot1x_control_dir_t
     |     |     +--ro oper-controlled-directions?    ipi-authentication-types:auth_dot1x_control_dir_t
     |     |     +--ro bridge-detected?               boolean
     |     +--ro authentication-key-received-operational
     |     |  +--ro state
     |     |     +--ro rx-key?   boolean
     |     +--rw authenticator-pae
     |     |  +--rw config
     |     |  |  +--rw quiet-period?       uint16
     |     |  |  +--rw max-reauth-value?   uint8
     |     |  |  +--rw interval-period?    uint16
     |     |  +--ro state
     |     |     +--ro quiet-period?       uint16
     |     |     +--ro max-reauth-value?   uint8
     |     |     +--ro interval-period?    uint16
     |     +--ro auth-authenticator-pae-operational
     |     |  +--ro state
     |     |     +--ro quiet-period-operational?       uint16
     |     |     +--ro max-reauth-value-operational?   uint8
     |     |     +--ro interval-period-operational?    uint16
     |     |     +--ro port-status?                    ipi-authentication-types:auth_dot1x_port_status_t
     |     |     +--ro pae-state?                      ipi-authentication-types:auth_dot1x_pae_state_t
     |     |     +--ro port-mode?                      ipi-authentication-types:auth_dot1x_port_ctrl_t
     |     |     +--ro reauth-count?                   uint32
     |     |     +--ro rx-response-id?                 uint32
     |     +--rw reauthentication-timer
     |     |  +--rw config
     |     |  |  +--rw reauthentication-period?   uint32
     |     |  |  +--rw enable-reauthentication?   empty
     |     |  |  +--rw enable-mac-auth-bypass?    ipi-authentication-types:auth_dot1x_mac_auth_bypass_t {feature-list:HAVE_MAC_AUTH}?
     |     |  +--ro state
     |     |     +--ro reauthentication-period?   uint32
     |     |     +--ro enable-reauthentication?   empty
     |     |     +--ro enable-mac-auth-bypass?    ipi-authentication-types:auth_dot1x_mac_auth_bypass_t {feature-list:HAVE_MAC_AUTH}?
     |     +--ro reauthentication-timer-operational
     |     |  +--ro state
     |     |     +--ro reauthentication-period-operational?   uint32
     |     |     +--ro enable-reauthentication-operational?   empty
     |     |     +--ro dot1x-timer?                           ipi-authentication-types:auth_mac_dot1x_timer_status_t {feature-list:HAVE_MAC_AUTH}?
     |     |     +--ro mac-status?                            ipi-authentication-types:auth_mac_status_t {feature-list:HAVE_MAC_AUTH}?
     |     |     +--ro last-rejected-mac?                     ipi-authentication-types:auth_dot1x_mac_address_t {feature-list:HAVE_MAC_AUTH}?
     |     +--rw authenticator-be
     |     |  +--rw config
     |     |  |  +--rw supplicant-timeout?   uint16
     |     |  |  +--rw server-timeout?       uint16
     |     |  +--ro state
     |     |     +--ro supplicant-timeout?   uint16
     |     |     +--ro server-timeout?       uint16
     |     +--ro authenticator-be-operational
     |        +--ro state
     |           +--ro supplicant-timeout-operational?   uint16
     |           +--ro server-timeout-operational?       uint16
     |           +--ro current-id?                       uint8
     |           +--ro be-state?                         ipi-authentication-types:auth_be_state_t
     |           +--ro req-count?                        uint8
     |           +--ro id-from-server?                   uint8
     +--rw mac-interfaces {feature-list:HAVE_MAC_AUTH}?
     |  +--rw mac-interface* [name]
     |     +--rw name      -> ../config/name
     |     +--rw config
     |     |  +--rw name?                    -> /ipi-interface:interfaces/interface/name
     |     |  +--rw mac-control              empty
     |     |  +--rw mac-mode?                ipi-authentication-types:auth_mac_mode_t
     |     |  +--rw dynamic-vlan-creation?   empty
     |     |  +--rw mac-address-aging?       empty
     |     +--ro state
     |        +--ro name?                    -> /ipi-interface:interfaces/interface/name
     |        +--ro mac-control              empty
     |        +--ro mac-mode?                ipi-authentication-types:auth_mac_mode_t
     |        +--ro dynamic-vlan-creation?   empty
     |        +--ro mac-address-aging?       empty
     +--rw debug
        +--rw config
        |  +--rw options?   ipi-authentication-types:auth_dot1x_debug_t
        +--ro state
           +--ro options?                 ipi-authentication-types:auth_dot1x_debug_t
           +--ro terminal-debug-status?   ipi-authentication-types:auth_dot1x_debug_t
 
  rpcs:
    +---x dot1x-authentication-initialize-interface {feature-list:HAVE_MAC_AUTH}?
    |  +---w input
    |     +---w name    string
    +---x dot1x-authentication-snmp-restart {feature-list:HAVE_SNMP}?
    +---x dot1x-authentication-terminal-debug-on {feature-list:HAVE_AUTHD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-authentication-types:auth_dot1x_debug_t
    +---x dot1x-authentication-terminal-debug-off {feature-list:HAVE_AUTHD}?
       +---w input
          +---w terminal-debug-options    ipi-authentication-types:auth_dot1x_debug_t
 
 
 
 
 
module: ipi-bfd
  +--rw bfd
     +--rw global
     |  +--rw config
     |  |  +--rw notification-enabled?   boolean {feature-list:HAVE_BFD_MONO}?
     |  |  +--rw echo-mode-enabled?      empty {feature-list:HAVE_BFD_MONO}?
     |  |  +--rw slow-tx-interval?       uint32 {feature-list:HAVE_BFD_MONO}?
     |  +--ro state
     |  |  +--ro notification-enabled?         boolean {feature-list:HAVE_BFD_MONO}?
     |  |  +--ro echo-mode-enabled?            empty {feature-list:HAVE_BFD_MONO}?
     |  |  +--ro slow-tx-interval?             uint32 {feature-list:HAVE_BFD_MONO}?
     |  |  +--ro start-time?                   yang:timeticks {feature-list:HAVE_BFD_MONO}?
     |  |  +--ro administrative-state?         ipi-bfd-types:oambfd_admin_state_t {feature-list:HAVE_BFD_MONO}?
     |  |  +--ro image-type?                   ipi-bfd-types:oambfd_image_type_t {feature-list:HAVE_BFD_MONO}?
     |  |  +--ro next-session-discriminator?   string {feature-list:HAVE_BFD_MONO}?
     |  |  +--ro counters
     |  |     +--ro total-sessions?   yang:counter32
     |  +--rw intervals
     |     +--rw interval* [desired-minimum-tx-interval required-minimum-rx-interval detection-multiplier] {feature-list:HAVE_BFD_MONO}?
     |        +--rw desired-minimum-tx-interval     -> ../config/desired-minimum-tx-interval
     |        +--rw required-minimum-rx-interval    -> ../config/required-minimum-rx-interval
     |        +--rw detection-multiplier            -> ../config/detection-multiplier
     |        +--rw config
     |        |  +--rw desired-minimum-tx-interval?    uint32
     |        |  +--rw required-minimum-rx-interval?   uint32
     |        |  +--rw detection-multiplier?           uint8
     |        +--ro state
     |           +--ro desired-minimum-tx-interval?    uint32
     |           +--ro required-minimum-rx-interval?   uint32
     |           +--ro detection-multiplier?           uint8
     +--rw peers
     |  +--rw peer* [remote-address]
     |     +--rw remote-address    -> ../config/remote-address
     |     +--rw config
     |     |  +--rw remote-address?   inet:ip-address
     |     +--ro state
     |     |  +--ro remote-address?   inet:ip-address
     |     +--rw intervals
     |     |  +--rw interval* [desired-minimum-tx-interval required-minimum-rx-interval detection-multiplier] {feature-list:HAVE_BFD_MONO}?
     |     |     +--rw desired-minimum-tx-interval     -> ../config/desired-minimum-tx-interval
     |     |     +--rw required-minimum-rx-interval    -> ../config/required-minimum-rx-interval
     |     |     +--rw detection-multiplier            -> ../config/detection-multiplier
     |     |     +--rw config
     |     |     |  +--rw desired-minimum-tx-interval?    uint32
     |     |     |  +--rw required-minimum-rx-interval?   uint32
     |     |     |  +--rw detection-multiplier?           uint8
     |     |     +--ro state
     |     |        +--ro desired-minimum-tx-interval?    uint32
     |     |        +--ro required-minimum-rx-interval?   uint32
     |     |        +--ro detection-multiplier?           uint8
     |     +--rw authentication
     |        +--rw config
     |        |  +--rw key-type?              ipi-bfd-types:bfd_multihop_auth_type_t
     |        |  +--rw (key-option)?
     |        |     +--:(key-id)
     |        |     |  +--rw key-id?          uint32
     |        |     |  +--rw key-encrypted?   ipi-bfd-types:oambfd_encrypt_key_t
     |        |     |  +--rw key-string?      string
     |        |     +--:(key-chain)
     |        +--ro state
     |           +--ro key-type?              ipi-bfd-types:bfd_multihop_auth_type_t
     |           +--ro (key-option)?
     |              +--:(key-id)
     |              |  +--ro key-id?          uint32
     |              |  +--ro key-encrypted?   ipi-bfd-types:oambfd_encrypt_key_t
     |              |  +--ro key-string?      string
     |              +--:(key-chain)
     +--rw debug
     |  +--rw config
     |  |  +--rw options?           ipi-bfd-types:bfd_debug_t
     |  |  +--rw enable-oam-srv6?   empty {feature-list:HAVE_SRV6}?
     |  +--ro state
     |     +--ro options?                 ipi-bfd-types:bfd_debug_t
     |     +--ro enable-oam-srv6?         empty {feature-list:HAVE_SRV6}?
     |     +--ro terminal-debug-status?   ipi-bfd-types:bfd_debug_t
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name              -> ../config/name
     |     +--rw config
     |     |  +--rw name?               -> /ipi-interface:interfaces/interface/name
     |     |  +--rw bfd-disabled?       empty
     |     |  +--rw bfd-session-type?   ipi-bfd-types:oambfd_session_type_t {feature-list:HAVE_BFD_HW_OFFLOAD}?
     |     +--ro state
     |     |  +--ro name?               -> /ipi-interface:interfaces/interface/name
     |     |  +--ro bfd-disabled?       empty
     |     |  +--ro bfd-session-type?   ipi-bfd-types:oambfd_session_type_t {feature-list:HAVE_BFD_HW_OFFLOAD}?
     |     |  +--ro interface-index?    uint32
     |     |  +--ro interface-state?    ipi-bfd-types:oambfd_if_state_t
     |     +--rw intervals
     |     |  +--rw interval* [desired-minimum-tx-interval required-minimum-rx-interval detection-multiplier] {feature-list:HAVE_BFD_MONO}?
     |     |     +--rw desired-minimum-tx-interval     -> ../config/desired-minimum-tx-interval
     |     |     +--rw required-minimum-rx-interval    -> ../config/required-minimum-rx-interval
     |     |     +--rw detection-multiplier            -> ../config/detection-multiplier
     |     |     +--rw config
     |     |     |  +--rw desired-minimum-tx-interval?    uint32
     |     |     |  +--rw required-minimum-rx-interval?   uint32
     |     |     |  +--rw detection-multiplier?           uint8
     |     |     +--ro state
     |     |        +--ro desired-minimum-tx-interval?    uint32
     |     |        +--ro required-minimum-rx-interval?   uint32
     |     |        +--ro detection-multiplier?           uint8
     |     +--rw echo
     |     |  +--rw config
     |     |  |  +--rw ipv4-source?                    inet:ipv4-address
     |     |  |  +--rw required-minimum-tx-interval?   uint32
     |     |  +--ro state
     |     |     +--ro ipv4-source?                    inet:ipv4-address
     |     |     +--ro required-minimum-tx-interval?   uint32
     |     +--rw authentication
     |     |  +--rw config
     |     |  |  +--rw key-type?              ipi-bfd-types:bfd_multihop_auth_type_t
     |     |  |  +--rw (key-option)?
     |     |  |     +--:(key-id)
     |     |  |     |  +--rw key-id?          uint32
     |     |  |     |  +--rw key-encrypted?   ipi-bfd-types:oambfd_encrypt_key_t
     |     |  |     |  +--rw key-string?      string
     |     |  |     +--:(key-chain)
     |     |  +--ro state
     |     |     +--ro key-type?              ipi-bfd-types:bfd_multihop_auth_type_t
     |     |     +--ro (key-option)?
     |     |        +--:(key-id)
     |     |        |  +--ro key-id?          uint32
     |     |        |  +--ro key-encrypted?   ipi-bfd-types:oambfd_encrypt_key_t
     |     |        |  +--ro key-string?      string
     |     |        +--:(key-chain)
     |     +--rw sessions
     |        +--rw session* [local-address remote-address session-type]
     |           +--rw local-address     -> ../config/local-address
     |           +--rw remote-address    -> ../config/remote-address
     |           +--rw session-type      -> ../config/session-type
     |           +--rw config
     |           |  +--rw local-address?         inet:ip-address
     |           |  +--rw remote-address?        inet:ip-address
     |           |  +--rw session-type?          ipi-bfd-types:bfd_session_type_t
     |           |  +--rw administrative-down?   empty
     |           |  +--rw non-persistent?        empty
     |           +--ro state
     |              +--ro local-address?         inet:ip-address
     |              +--ro remote-address?        inet:ip-address
     |              +--ro session-type?          ipi-bfd-types:bfd_session_type_t
     |              +--ro administrative-down?   empty
     |              +--ro non-persistent?        empty
     +--ro sessions
        +--ro session* [local-discriminator vrf-name]
        |  +--ro local-discriminator    -> ../state/local-discriminator
        |  +--ro vrf-name               -> ../state/vrf-name
        |  +--ro state
        |  |  +--ro counters
        |  |  |  +--ro packets
        |  |  |  |  +--ro ipv4
        |  |  |  |  |  +--ro received?           yang:counter64
        |  |  |  |  |  +--ro transmitted?        yang:counter64
        |  |  |  |  |  +--ro echo-transmitted?   yang:counter64
        |  |  |  |  +--ro ipv6 {feature-list:HAVE_IPV6}?
        |  |  |  |     +--ro received?           yang:counter64
        |  |  |  |     +--ro transmitted?        yang:counter64
        |  |  |  |     +--ro echo-transmitted?   yang:counter64
        |  |  |  +--ro up-transitions?   yang:counter32
        |  |  +--ro lower-layer-type?                  ipi-bfd-types:oambfd_sess_lower_layer_t
        |  |  +--ro uptime?                            yang:timeticks
        |  |  +--ro version?                           uint32
        |  |  +--ro local-port?                        inet:port-number
        |  |  +--ro remote-port?                       inet:port-number
        |  |  +--ro negotiated-detection-multiplier?   uint8
        |  |  +--ro forward-hello-timer-hits?          uint32
        |  |  +--ro remote-heard?                      empty
        |  |  +--ro fate-shared?                       empty
        |  |  +--ro remote-administrative-down?        empty
        |  |  +--ro remote-demand-mode-enabled?        empty
        |  |  +--ro remote-echo-enabled?               empty
        |  |  +--ro poll-bit?                          empty
        |  |  +--ro storage-type?                      ipi-bfd-types:bfd_storage_type_t
        |  |  +--ro downtime?                          yang:timeticks
        |  |  +--ro discontinuity-time?                yang:timeticks
        |  |  +--ro authentication-key-id?             uint32
        |  |  +--ro last-up-time?                      yang:timeticks
        |  |  +--ro hold-down-timer?                   uint32
        |  |  +--ro hold-down-timer-hits?              uint32
        |  |  +--ro session-type-status?               ipi-bfd-types:oambfd_session_type_status_t
        |  |  +--ro remote-address?                    inet:ip-address
        |  |  +--ro local-address?                     inet:ip-address
        |  |  +--ro vrf-name?                          string
        |  |  +--ro interface-index?                   uint32
        |  |  +--ro interface-name?                    string
        |  |  +--ro remote-discriminator?              string
        |  |  +--ro local-discriminator?               string
        |  |  +--ro session-state?                     ipi-bfd-types:oambfd_session_state_t
        |  |  +--ro session-type?                      ipi-bfd-types:bfd_session_type_state_t
        |  |  +--ro session-diagnostics?               ipi-bfd-types:oambfd_perform_diag_t
        |  |  +--ro negotiated-tx-interval?            uint32
        |  |  +--ro negotiated-rx-interval?            uint32
        |  +--ro micro-bfd-sessions {feature-list:HAVE_BFD_HW_OFFLOAD}?
        |  |  +--ro interface* [member-interface] {feature-list:HAVE_BFD_HW_OFFLOAD}?
        |  |     +--ro member-interface    -> ../state/member-interface
        |  |     +--ro state
        |  |        +--ro member-interface?             -> /ipi-interface:interfaces/interface/name
        |  |        +--ro remote-session-state?         ipi-bfd-types:oambfd_session_state_t
        |  |        +--ro remote-session-diagnostics?   ipi-bfd-types:oambfd_perform_diag_t
        |  |        +--ro interface-index?              uint32
        |  |        +--ro interface-name?               string
        |  |        +--ro remote-discriminator?         string
        |  |        +--ro local-discriminator?          string
        |  |        +--ro session-state?                ipi-bfd-types:oambfd_session_state_t
        |  |        +--ro session-type?                 ipi-bfd-types:bfd_session_type_state_t
        |  |        +--ro session-diagnostics?          ipi-bfd-types:oambfd_perform_diag_t
        |  |        +--ro negotiated-tx-interval?       uint32
        |  |        +--ro negotiated-rx-interval?       uint32
        |  +--ro echo
        |  |  +--ro state
        |  |     +--ro local-echo-port?                     inet:port-number
        |  |     +--ro echo-desired-minimum-tx-interval?    uint32
        |  |     +--ro echo-required-minimum-rx-interval?   uint32
        |  |     +--ro negotiated-interval?                 uint32
        |  +--ro mpls {feature-list:HAVE_CUSTOM1_MPLS_BFD}?
        |  |  +--ro state {feature-list:HAVE_MPLS_OAM}?
        |  |  |  +--ro fec-address?            inet:ipv4-address
        |  |  |  +--ro lsp-type?               ipi-bfd-types:oambfd_mpls_lsp_type_t
        |  |  |  +--ro tunnel-name?            string
        |  |  |  +--ro tunnel-label?           uint32
        |  |  |  +--ro ftn-index?              uint32
        |  |  |  +--ro lsp-ping-interval?      uint32
        |  |  |  +--ro minimum-tx?             uint32
        |  |  |  +--ro minimum-rx?             uint32
        |  |  |  +--ro detection-multiplier?   uint8
        |  |  +--ro virtual-circuit-connectivity-verification
        |  |  |  +--ro state {feature-list:HAVE_VCCV}?
        |  |  |     +--ro vc-identifier?                    uint32
        |  |  |     +--ro incoming-vc-label?                uint32
        |  |  |     +--ro outgoing-vc-label?                uint32
        |  |  |     +--ro control-channel-type?             ipi-bfd-types:oambfd_mpls_cc_type_t
        |  |  |     +--ro connectivity-verification-type?   ipi-bfd-types:oambfd_mpls_cv_type_t
        |  |  |     +--ro attachment-circuit-index?         uint32
        |  |  |     +--ro tunnel-label?                     uint32
        |  |  |     +--ro peer-address?                     inet:ipv4-address
        |  |  +--ro transport-profile
        |  +--ro packet
        |  +--ro clients
        |     +--ro client* [index]
        |        +--ro index    -> ../state/index
        |        +--ro state
        |           +--ro index?   uint32
        |           +--ro flags?   ipi-bfd-types:oambfd_client_flags_t
        +--ro mpls-lsp
        |  +--ro summary
        |  |  +--ro state
        |  |     +--ro number-of-sessions?              uint32
        |  |     +--ro number-of-sessions-up?           uint32
        |  |     +--ro number-of-sessions-down?         uint32
        |  |     +--ro number-of-sessions-admin-down?   uint32
        |  +--ro egress-sessions
        |  |  +--ro egress-session* [local-discriminator]
        |  |     +--ro local-discriminator    -> ../state/local-discriminator
        |  |     +--ro state
        |  |        +--ro local-multiplier?       uint32
        |  |        +--ro fec-address?            cml-data-types:cml_ipv4_addr_prefix_t
        |  |        +--ro local-discriminator?    string
        |  |        +--ro remote-discriminator?   string
        |  |        +--ro source-port?            inet:port-number
        |  |        +--ro destination-port?       inet:port-number
        |  +--ro session-groups
        |     +--ro session-group* [lsp-type fec-address]
        |        +--ro lsp-type       -> ../state/lsp-type
        |        +--ro fec-address    -> ../state/fec-address
        |        +--ro state
        |        |  +--ro lsp-type?      ipi-bfd-types:mpls_bfd_lsp_type_t
        |        |  +--ro fec-address?   cml-data-types:cml_ipv4_addr_prefix_t
        |        +--ro sessions
        |           +--ro session* [lsp-type]
        |              +--ro lsp-type      -> ../state/lsp-type
        |              +--ro state
        |              |  +--ro lsp-type?                 ipi-bfd-types:mpls_bfd_all_lsp_type_t
        |              |  +--ro ip-encapsulation?         empty
        |              |  +--ro remote-multiplier?        uint32
        |              |  +--ro fec-address?              cml-data-types:cml_ipv4_addr_prefix_t
        |              |  +--ro local-discriminator?      string
        |              |  +--ro remote-discriminator?     string
        |              |  +--ro source-port?              inet:port-number
        |              |  +--ro destination-port?         inet:port-number
        |              |  +--ro session-index?            uint32
        |              |  +--ro local-state?              ipi-bfd-types:mpls_bfd_session_state_t
        |              |  +--ro remote-state?             ipi-bfd-types:mpls_bfd_session_state_t
        |              |  +--ro local-diagnostic?         ipi-bfd-types:mpls_bfd_diag_info_t
        |              |  +--ro remote-diagnostic?        ipi-bfd-types:mpls_bfd_diag_info_t
        |              |  +--ro negotiated-tx-interval?   uint32
        |              |  +--ro negotiated-rx-interval?   uint32
        |              +--ro statistics
        |                 +--ro state
        |                    +--ro create-time?            yang:timeticks
        |                    +--ro last-down-time?         yang:timeticks
        |                    +--ro last-up-time?           yang:timeticks
        |                    +--ro down-count?             yang:counter32
        |                    +--ro admin-down-count?       yang:counter32
        |                    +--ro receive-packet-count?   yang:counter64
        |                    +--ro send-packet-count?      yang:counter64
        +--ro mpls-te
           +--ro summary
           |  +--ro state
           |     +--ro number-of-sessions?              uint32
           |     +--ro number-of-sessions-up?           uint32
           |     +--ro number-of-sessions-down?         uint32
           |     +--ro number-of-sessions-admin-down?   uint32
           +--ro egress-sessions
           |  +--ro egress-session* [fec-address]
           |     +--ro fec-address    -> ../state/fec-address
           |     +--ro state
           |        +--ro local-multiplier?       uint32
           |        +--ro fec-address?            cml-data-types:cml_ipv4_addr_prefix_t
           |        +--ro local-discriminator?    string
           |        +--ro remote-discriminator?   string
           |        +--ro source-port?            inet:port-number
           |        +--ro destination-port?       inet:port-number
           +--ro mpls-tunnels
              +--ro mpls-tunnel* [lsp-type tunnel-name]
                 +--ro lsp-type       -> ../state/lsp-type
                 +--ro tunnel-name    -> ../state/tunnel-name
                 +--ro state
                 |  +--ro lsp-type?      ipi-bfd-types:mpls_bfd_te_type_t
                 |  +--ro tunnel-name?   string
                 +--ro sessions
                    +--ro session* [lsp-type]
                       +--ro lsp-type      -> ../state/lsp-type
                       +--ro state
                       |  +--ro lsp-type?                 ipi-bfd-types:mpls_bfd_all_lsp_type_t
                       |  +--ro ip-encapsulation?         empty
                       |  +--ro remote-multiplier?        uint32
                       |  +--ro fec-address?              cml-data-types:cml_ipv4_addr_prefix_t
                       |  +--ro local-discriminator?      string
                       |  +--ro remote-discriminator?     string
                       |  +--ro source-port?              inet:port-number
                       |  +--ro destination-port?         inet:port-number
                       |  +--ro session-index?            uint32
                       |  +--ro local-state?              ipi-bfd-types:mpls_bfd_session_state_t
                       |  +--ro remote-state?             ipi-bfd-types:mpls_bfd_session_state_t
                       |  +--ro local-diagnostic?         ipi-bfd-types:mpls_bfd_diag_info_t
                       |  +--ro remote-diagnostic?        ipi-bfd-types:mpls_bfd_diag_info_t
                       |  +--ro negotiated-tx-interval?   uint32
                       |  +--ro negotiated-rx-interval?   uint32
                       +--ro statistics
                          +--ro state
                             +--ro create-time?            yang:timeticks
                             +--ro last-down-time?         yang:timeticks
                             +--ro last-up-time?           yang:timeticks
                             +--ro down-count?             yang:counter32
                             +--ro admin-down-count?       yang:counter32
                             +--ro receive-packet-count?   yang:counter64
                             +--ro send-packet-count?      yang:counter64
 
  rpcs:
    +---x bfd-snmp-restart {feature-list:HAVE_SNMP}?
    +---x bfd-terminal-debug-on {feature-list:HAVE_BFD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-bfd-types:bfd_debug_t
    +---x bfd-terminal-debug-off {feature-list:HAVE_BFD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-bfd-types:bfd_debug_t
    +---x debug-oam-srv6-on {feature-list:HAVE_SRV6}?
    +---x debug-oam-srv6-off {feature-list:HAVE_SRV6}?
 
  notifications:
    +---n bfd-session-state-change
       +--ro severity?              cml-data-types:cml_notif_severity_t
       +--ro eventClass?            cml-data-types:cml_notif_class_t
       +--ro local-discriminator?   string
       +--ro vrf-name?              string
       +--ro session-state?         ipi-bfd-types:oambfd_session_state_t
       +--ro session-diagnostics?   ipi-bfd-types:oambfd_perform_diag_t
 
 
 
 
 
 
 
 
 
 
 
 
 
module: ipi-bgp-vrf
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-vrf:vrf:
    +--rw bgp-vrf
       +--rw config
       |  +--rw import-map?   string
       |  +--rw export-map?   string
       |  +--rw rd-string?    string
       +--ro state
       |  +--ro counters
       |  |  +--ro neighbor-rx-tx-stat
       |  |  |  +--ro messages-sent?            uint32
       |  |  |  +--ro messages-received?        uint32
       |  |  |  +--ro bytes-sent?               uint32
       |  |  |  +--ro bytes-received?           uint32
       |  |  |  +--ro opens-sent?               uint32
       |  |  |  +--ro opens-received?           uint32
       |  |  |  +--ro updates-sent?             uint32
       |  |  |  +--ro updates-received?         uint32
       |  |  |  +--ro keepalive-sent?           uint32
       |  |  |  +--ro keepalive-received?       uint32
       |  |  |  +--ro notification-sent?        uint32
       |  |  |  +--ro notification-received?    uint32
       |  |  |  +--ro route-refresh-sent?       uint32
       |  |  |  +--ro route-refresh-received?   uint32
       |  |  |  +--ro capabilities-sent?        uint32
       |  |  |  +--ro capabilities-received?    uint32
       |  |  +--ro local-input-output
       |  |  |  +--ro active-open?                        uint16
       |  |  |  +--ro passive-open?                       uint16
       |  |  |  +--ro open-loops?                         uint16
       |  |  |  +--ro open-calls?                         uint16
       |  |  |  +--ro open-received-calls?                uint16
       |  |  |  +--ro send-calls?                         uint16
       |  |  |  +--ro received-calls?                     uint16
       |  |  |  +--ro write-calls?                        uint16
       |  |  |  +--ro write-loops?                        uint16
       |  |  |  +--ro write-loops-yield?                  uint16
       |  |  |  +--ro read-calls?                         uint16
       |  |  |  +--ro read-loops?                         uint16
       |  |  |  +--ro read-loop-yield?                    uint16
       |  |  |  +--ro process-nlri-yields?                uint16
       |  |  |  +--ro process-withdraw-yields?            uint16
       |  |  |  +--ro read-time-exceed?                   uint16
       |  |  |  +--ro update-send-pending?                uint16
       |  |  |  +--ro update-buffer-not-available?        uint16
       |  |  |  +--ro update-walk-suspend?                uint16
       |  |  |  +--ro yield-in-update?                    uint16
       |  |  |  +--ro yield-in-pack?                      uint16
       |  |  |  +--ro no-send-buffer-peer?                uint16
       |  |  |  +--ro no-withdraw-buffer-peer?            uint16
       |  |  |  +--ro yields-in-update-peer-loop?         uint16
       |  |  |  +--ro no-updates-pending-or-no-buffers?   uint16
       |  |  |  +--ro no-data-to-write?                   uint16
       |  |  |  +--ro message-queue-received-error?       uint16
       |  |  +--ro sockets
       |  |     +--ro created?            uint32
       |  |     +--ro accepted?           uint32
       |  |     +--ro closed?             uint32
       |  |     +--ro create-retries?     uint32
       |  |     +--ro create-failures?    uint32
       |  |     +--ro fd-close-session?   uint32
       |  +--ro import-map?   string
       |  +--ro export-map?   string
       |  +--ro rd-string?    string
       +--ro next-hop-tracking
       |  +--ro state
       |     +--ro bgp-as?                   uint32
       |     +--ro router-id?                inet:ipv4-address
       |     +--ro configured?               boolean
       |     +--ro delay-time?               uint32
       |     +--ro received-message-count?   cml-data-types:cml_line_t
       |     +--ro ipv4-count?               int32
       |     +--ro ipv6-count?               int32
       |     +--ro delay-time-remaining?     int32
       +--rw route-targets
       |  +--rw route-target* [rt-rd-string]
       |     +--rw rt-rd-string    -> ../config/rt-rd-string
       |     +--rw config
       |     |  +--rw rt-rd-string?   ipi-bgp-types:bgp_route_target_type_t
       |     |  +--rw direction       ipi-bgp-types:bgp_target_route_type_t
       |     +--ro state
       |        +--ro rt-rd-string?   ipi-bgp-types:bgp_route_target_type_t
       |        +--ro direction       ipi-bgp-types:bgp_target_route_type_t
       +--ro bgp-rd
          +--ro bgp-rd-as
          |  +--ro state
          |     +--ro brd-as?          int32
          |     +--ro brd-as-number?   int32
          +--ro bgp-rd-as4
          |  +--ro state
          |     +--ro brd-as4?       int32
          |     +--ro brd-as-num4?   int32
          +--ro bgp-rd-ip
             +--ro state
                +--ro brd-ip?          int32
                +--ro brd-ip-number?   int32
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-vrf:vrf:
    +--rw evpn-service-type {feature-list:HAVE_MPLS,feature-list:HAVE_BGP_EVPN}?
       +--rw config
       |  +--rw service-type?   cml-data-types:cml_evpn_service_type_t
       +--ro state
          +--ro service-type?   cml-data-types:cml_evpn_service_type_t
 
module: ipi-bgp
  +--rw bgp
     +--rw global
     |  +--rw config
     |  |  +--rw enable-aggregate-nexthop?         empty
     |  |  +--rw enable-path-select?               empty
     |  |  +--rw disable-adj-out?                  empty
     |  |  +--rw disable-rfc7606-error-handling?   empty
     |  |  +--rw enable-bogon-filtering?           empty
     |  |  +--rw enable-extended-asn-capability?   empty {feature-list:HAVE_EXT_CAP_ASN}?
     |  |  +--rw enable-nexthop-tracking?          empty
     |  |  +--rw nexthop-tracking-delay?           uint8
     |  |  +--rw enable-rfc-1771-strict-origin?    empty
     |  +--ro state
     |  |  +--ro enable-aggregate-nexthop?         empty
     |  |  +--ro enable-path-select?               empty
     |  |  +--ro disable-adj-out?                  empty
     |  |  +--ro disable-rfc7606-error-handling?   empty
     |  |  +--ro enable-bogon-filtering?           empty
     |  |  +--ro enable-extended-asn-capability?   empty {feature-list:HAVE_EXT_CAP_ASN}?
     |  |  +--ro enable-nexthop-tracking?          empty
     |  |  +--ro nexthop-tracking-delay?           uint8
     |  |  +--ro enable-rfc-1771-strict-origin?    empty
     |  +--rw community-lists
     |  |  +--rw numbered-lists
     |  |  |  +--rw numbered-list* [standard-number]
     |  |  |     +--rw standard-number       -> ../config/standard-number
     |  |  |     +--rw config
     |  |  |     |  +--rw standard-number?   uint32
     |  |  |     +--ro state
     |  |  |     |  +--ro standard-number?   uint32
     |  |  |     +--rw action-for-any
     |  |  |     |  +--rw config!
     |  |  |     |  |  +--rw action-name    ipi-bgp-types:bgp_community_list_action_t
     |  |  |     |  +--ro state
     |  |  |     |     +--ro action-name    ipi-bgp-types:bgp_community_list_action_t
     |  |  |     +--rw action-list-values
     |  |  |        +--rw action-list-value* [action-standard-number standard-number-value]
     |  |  |           +--rw action-standard-number    -> ../config/action-standard-number
     |  |  |           +--rw standard-number-value     -> ../config/standard-number-value
     |  |  |           +--rw config
     |  |  |           |  +--rw action-standard-number?   ipi-bgp-types:bgp_community_list_action_t
     |  |  |           |  +--rw standard-number-value?    string
     |  |  |           +--ro state
     |  |  |              +--ro action-standard-number?   ipi-bgp-types:bgp_community_list_action_t
     |  |  |              +--ro standard-number-value?    string
     |  |  +--rw standards
     |  |  |  +--rw standard* [list-type name]
     |  |  |     +--rw list-type         -> ../config/list-type
     |  |  |     +--rw name              -> ../config/name
     |  |  |     +--rw config
     |  |  |     |  +--rw list-type?   ipi-bgp-types:bgp_community_list_type_t
     |  |  |     |  +--rw name?        string
     |  |  |     +--ro state
     |  |  |     |  +--ro list-type?   ipi-bgp-types:bgp_community_list_type_t
     |  |  |     |  +--ro name?        string
     |  |  |     +--rw action-for-any
     |  |  |     |  +--rw config!
     |  |  |     |  |  +--rw action-name    ipi-bgp-types:bgp_community_list_action_t
     |  |  |     |  +--ro state
     |  |  |     |     +--ro action-name    ipi-bgp-types:bgp_community_list_action_t
     |  |  |     +--rw action-values
     |  |  |        +--rw action-value* [action-name-standard community-value-standard]
     |  |  |           +--rw action-name-standard        -> ../config/action-name-standard
     |  |  |           +--rw community-value-standard    -> ../config/community-value-standard
     |  |  |           +--rw config
     |  |  |           |  +--rw action-name-standard?       ipi-bgp-types:bgp_community_list_action_t
     |  |  |           |  +--rw community-value-standard?   string
     |  |  |           +--ro state
     |  |  |              +--ro action-name-standard?       ipi-bgp-types:bgp_community_list_action_t
     |  |  |              +--ro community-value-standard?   string
     |  |  +--rw expanded-lists
     |  |  |  +--rw expanded-list* [list-type expanded-type]
     |  |  |     +--rw list-type        -> ../config/list-type
     |  |  |     +--rw expanded-type    -> ../config/expanded-type
     |  |  |     +--rw config
     |  |  |     |  +--rw list-type?       ipi-bgp-types:bgp_expanded_list_t
     |  |  |     |  +--rw expanded-type?   ipi-bgp-types:bgp_expanded_list_type_t
     |  |  |     +--ro state
     |  |  |     |  +--ro list-type?       ipi-bgp-types:bgp_expanded_list_t
     |  |  |     |  +--ro expanded-type?   ipi-bgp-types:bgp_expanded_list_type_t
     |  |  |     +--rw action-values
     |  |  |        +--rw action-value* [action-expanded regular-expression-list]
     |  |  |           +--rw action-expanded            -> ../config/action-expanded
     |  |  |           +--rw regular-expression-list    -> ../config/regular-expression-list
     |  |  |           +--rw config
     |  |  |           |  +--rw action-expanded?           ipi-bgp-types:bgp_community_list_action_t
     |  |  |           |  +--rw regular-expression-list?   cml-data-types:cml_line_t
     |  |  |           +--ro state
     |  |  |              +--ro action-expanded?           ipi-bgp-types:bgp_community_list_action_t
     |  |  |              +--ro regular-expression-list?   cml-data-types:cml_line_t
     |  |  +--rw extended-community
     |  |     +--rw numbered-lists
     |  |     |  +--rw numbered-list* [standard-number]
     |  |     |     +--rw standard-number    -> ../config/standard-number
     |  |     |     +--rw config
     |  |     |     |  +--rw standard-number?   uint32
     |  |     |     +--ro state
     |  |     |     |  +--ro standard-number?   uint32
     |  |     |     +--rw action-values
     |  |     |        +--rw action-value* [extended-action-number extended-value]
     |  |     |           +--rw extended-action-number    -> ../config/extended-action-number
     |  |     |           +--rw extended-value            -> ../config/extended-value
     |  |     |           +--rw config
     |  |     |           |  +--rw extended-action-number?   ipi-bgp-types:bgp_community_list_action_t
     |  |     |           |  +--rw extended-value?           cml-data-types:cml_line_t
     |  |     |           +--ro state
     |  |     |              +--ro extended-action-number?   ipi-bgp-types:bgp_community_list_action_t
     |  |     |              +--ro extended-value?           cml-data-types:cml_line_t
     |  |     +--rw standards
     |  |     |  +--rw standard* [name]
     |  |     |     +--rw name             -> ../config/name
     |  |     |     +--rw config
     |  |     |     |  +--rw name?   string
     |  |     |     +--ro state
     |  |     |     |  +--ro name?   string
     |  |     |     +--rw action-values
     |  |     |        +--rw action-value* [extended-action route-target-soo value]
     |  |     |           +--rw extended-action     -> ../config/extended-action
     |  |     |           +--rw route-target-soo    -> ../config/route-target-soo
     |  |     |           +--rw value               -> ../config/value
     |  |     |           +--rw config
     |  |     |           |  +--rw extended-action?    ipi-bgp-types:bgp_community_list_action_t
     |  |     |           |  +--rw route-target-soo?   ipi-bgp-types:bgp_route_target_t
     |  |     |           |  +--rw value?              string
     |  |     |           +--ro state
     |  |     |              +--ro extended-action?    ipi-bgp-types:bgp_community_list_action_t
     |  |     |              +--ro route-target-soo?   ipi-bgp-types:bgp_route_target_t
     |  |     |              +--ro value?              string
     |  |     +--rw expanded-lists
     |  |        +--rw expanded-list* [list-type expanded-type]
     |  |           +--rw list-type        -> ../config/list-type
     |  |           +--rw expanded-type    -> ../config/expanded-type
     |  |           +--rw config
     |  |           |  +--rw list-type?       ipi-bgp-types:bgp_expanded_list_t
     |  |           |  +--rw expanded-type?   ipi-bgp-types:bgp_expanded_list_type_t
     |  |           +--ro state
     |  |           |  +--ro list-type?       ipi-bgp-types:bgp_expanded_list_t
     |  |           |  +--ro expanded-type?   ipi-bgp-types:bgp_expanded_list_type_t
     |  |           +--rw action-values
     |  |              +--rw action-value* [action value]
     |  |                 +--rw action    -> ../config/action
     |  |                 +--rw value     -> ../config/value
     |  |                 +--rw config
     |  |                 |  +--rw action?   ipi-bgp-types:bgp_community_list_action_t
     |  |                 |  +--rw value?    cml-data-types:cml_line_t
     |  |                 +--ro state
     |  |                    +--ro action?   ipi-bgp-types:bgp_community_list_action_t
     |  |                    +--ro value?    cml-data-types:cml_line_t
     |  +--rw as-path-access-lists
     |  |  +--rw as-path-access-list* [access-list-name access-list-action access-list-regular-expression]
     |  |     +--rw access-list-name                  -> ../config/access-list-name
     |  |     +--rw access-list-action                -> ../config/access-list-action
     |  |     +--rw access-list-regular-expression    -> ../config/access-list-regular-expression
     |  |     +--rw config
     |  |     |  +--rw access-list-name?                 string
     |  |     |  +--rw access-list-action?               ipi-bgp-types:bgp_community_list_action_t
     |  |     |  +--rw access-list-regular-expression?   cml-data-types:cml_line_t
     |  |     +--ro state
     |  |        +--ro access-list-name?                 string
     |  |        +--ro access-list-action?               ipi-bgp-types:bgp_community_list_action_t
     |  |        +--ro access-list-regular-expression?   cml-data-types:cml_line_t
     |  +--rw mpls-l3vpn-label-modes
     |  |  +--rw mpls-l3vpn-label-mode* [address-family-name vrf-name] {feature-list:HAVE_MPLS}?
     |  |     +--rw address-family-name    -> ../config/address-family-name
     |  |     +--rw vrf-name               -> ../config/vrf-name
     |  |     +--rw config
     |  |     |  +--rw address-family-name?   ipi-bgp-types:bgp_af_config_t
     |  |     |  +--rw vrf-name?              ipi-bgp-types:bgp_vrf_type_t {feature-list:HAVE_MPLS}?
     |  |     |  +--rw label-alloc-type       ipi-bgp-types:bgp_l3vpn_label_alloc_mode_t
     |  |     +--ro state
     |  |        +--ro address-family-name?   ipi-bgp-types:bgp_af_config_t
     |  |        +--ro vrf-name?              ipi-bgp-types:bgp_vrf_type_t {feature-list:HAVE_MPLS}?
     |  |        +--ro label-alloc-type       ipi-bgp-types:bgp_l3vpn_label_alloc_mode_t
     |  +--rw mpls-6pe {feature-list:HAVE_MPLS,feature-list:HAVE_6PE}?
     |  |  +--rw config
     |  |  |  +--rw enable-per-prefix-label-mode?   empty
     |  |  +--ro state
     |  |     +--ro enable-per-prefix-label-mode?   empty
     |  +--rw debug
     |     +--rw config
     |     |  +--rw options?   ipi-bgp-types:bgp_debug_t
     |     +--ro state
     |        +--ro terminal-debug-status
     |        |  +--ro terminal-debug-status?   ipi-bgp-types:bgp_debug_t
     |        +--ro options?                 ipi-bgp-types:bgp_debug_t
     +--rw bgp-instances
     |  +--rw bgp-instance* [bgp-as]
     |     +--rw bgp-as                      -> ../config/bgp-as
     |     +--rw config
     |     |  +--rw bgp-as?                               uint32
     |     |  +--rw router-id?                            inet:ipv4-address
     |     |  +--rw cluster-id?                           ipi-bgp-types:bgp_cluster_id_t
     |     |  +--rw local-preference?                     uint32
     |     |  +--rw graceful-shutdown-capable?            empty
     |     |  +--rw graceful-shutdown?                    empty
     |     |  +--rw graceful-shutdown-local-preference?   uint32
     |     |  +--rw inbound-route-filter-disable?         empty {feature-list:HAVE_VRF}?
     |     |  +--rw external-route-leak-disable?          empty {feature-list:HAVE_VRF}?
     |     |  +--rw log-neighbor-changes?                 empty
     |     |  +--rw scan-interval?                        uint32
     |     |  +--rw best-path-dont-compare-originator?    empty
     |     |  +--rw no-best-path-tie-break?               empty
     |     |  +--rw enable-deterministic-med?             empty
     |     |  +--rw enforce-first-as-for-ebgp?            empty
     |     |  +--rw no-external-fail-over?                empty
     |     |  +--rw local-as-count?                       uint8
     |     |  +--rw no-client-route-reflection?           empty
     |     |  +--rw med-type?                             ipi-bgp-types:bgp_med_type_t
     |     |  +--rw multi-path-relax?                     empty
     |     |  +--rw enable-mpls-nexthop-tracking?         empty {feature-list:HAVE_MPLS_LSP_TRACKING}?
     |     |  +--rw ignore-aigp-for-bestpath?             empty {feature-list:HAVE_BGP_AIGP}?
     |     +--rw confederation
     |     |  +--rw config
     |     |  |  +--rw identifier?       uint32
     |     |  |  +--rw peer-as-number*   uint32
     |     |  +--ro state
     |     |     +--ro identifier?       uint32
     |     |     +--ro peer-as-number*   uint32
     |     +--rw view-lists
     |     |  +--rw view-list* [view-name]
     |     |     +--rw view-name    -> ../config/view-name
     |     |     +--rw config
     |     |     |  +--rw view-name?   string
     |     |     +--ro state
     |     |        +--ro view-name?   string
     |     +--ro state
     |     |  +--ro version?                              ipi-bgp-types:bgp_version_t
     |     |  +--ro table-version?                        int32
     |     |  +--ro total-prefixes?                       int32
     |     |  +--ro router-run-time-ip-address?           inet:ipv4-address
     |     |  +--ro scan-remain-time?                     uint32
     |     |  +--ro bgp-as?                               uint32
     |     |  +--ro router-id?                            inet:ipv4-address
     |     |  +--ro cluster-id?                           ipi-bgp-types:bgp_cluster_id_t
     |     |  +--ro local-preference?                     uint32
     |     |  +--ro graceful-shutdown-capable?            empty
     |     |  +--ro graceful-shutdown?                    empty
     |     |  +--ro graceful-shutdown-local-preference?   uint32
     |     |  +--ro inbound-route-filter-disable?         empty {feature-list:HAVE_VRF}?
     |     |  +--ro external-route-leak-disable?          empty {feature-list:HAVE_VRF}?
     |     |  +--ro log-neighbor-changes?                 empty
     |     |  +--ro scan-interval?                        uint32
     |     |  +--ro best-path-dont-compare-originator?    empty
     |     |  +--ro no-best-path-tie-break?               empty
     |     |  +--ro enable-deterministic-med?             empty
     |     |  +--ro enforce-first-as-for-ebgp?            empty
     |     |  +--ro no-external-fail-over?                empty
     |     |  +--ro local-as-count?                       uint8
     |     |  +--ro no-client-route-reflection?           empty
     |     |  +--ro med-type?                             ipi-bgp-types:bgp_med_type_t
     |     |  +--ro multi-path-relax?                     empty
     |     |  +--ro enable-mpls-nexthop-tracking?         empty {feature-list:HAVE_MPLS_LSP_TRACKING}?
     |     |  +--ro ignore-aigp-for-bestpath?             empty {feature-list:HAVE_BGP_AIGP}?
     |     +--rw graceful-restart
     |     |  +--rw config
     |     |  |  +--rw enable-graceful-restart?          empty {feature-list:HAVE_RESTART}?
     |     |  |  +--rw restart-time?                     uint32 {feature-list:HAVE_RESTART}?
     |     |  |  +--rw stale-path-max-retention-time?    uint32 {feature-list:HAVE_RESTART}?
     |     |  |  +--rw route-selection-max-defer-time?   uint32 {feature-list:HAVE_RESTART}?
     |     |  |  +--rw graceful-reset?                   empty
     |     |  +--ro state
     |     |     +--ro enable-graceful-restart?          empty {feature-list:HAVE_RESTART}?
     |     |     +--ro restart-time?                     uint32 {feature-list:HAVE_RESTART}?
     |     |     +--ro stale-path-max-retention-time?    uint32 {feature-list:HAVE_RESTART}?
     |     |     +--ro route-selection-max-defer-time?   uint32 {feature-list:HAVE_RESTART}?
     |     |     +--ro graceful-reset?                   empty
     |     +--rw timers
     |     |  +--rw config!
     |     |  |  +--rw keep-alive    uint16
     |     |  |  +--rw hold-time     uint16
     |     |  +--ro state
     |     |     +--ro keep-alive    uint16
     |     |     +--ro hold-time     uint16
     |     +--rw route-selection
     |     |  +--rw config
     |     |  |  +--rw always-compare-med?           empty
     |     |  |  +--rw ignore-as-path-length?        empty
     |     |  |  +--rw best-path-compare-confed?     empty
     |     |  |  +--rw external-compare-router-id?   empty
     |     |  +--ro state
     |     |     +--ro always-compare-med?           empty
     |     |     +--ro ignore-as-path-length?        empty
     |     |     +--ro best-path-compare-confed?     empty
     |     |     +--ro external-compare-router-id?   empty
     |     +--rw administrative-distances
     |     |  +--rw administrative-distance* [source-ip-prefix]
     |     |     +--rw source-ip-prefix    -> ../config/source-ip-prefix
     |     |     +--rw config
     |     |     |  +--rw source-ip-prefix?   cml-data-types:cml_ipv4_prefix_t
     |     |     |  +--rw distance            uint8
     |     |     |  +--rw access-list-name?   string
     |     |     +--ro state
     |     |        +--ro source-ip-prefix?   cml-data-types:cml_ipv4_prefix_t
     |     |        +--ro distance            uint8
     |     |        +--ro access-list-name?   string
     |     +--ro rib
     |     |  +--ro address-family* [afi safi]
     |     |     +--ro afi            -> ../state/afi
     |     |     +--ro safi           -> ../state/safi
     |     |     +--ro state
     |     |     |  +--ro afi?    ipi-bgp-types:bgp_afi_type_t
     |     |     |  +--ro safi?   ipi-bgp-types:bgp_safi_type_t
     |     |     +--ro routes
     |     |     |  +--ro route* [network-address route-distinguisher]
     |     |     |     +--ro network-address        -> ../state/network-address
     |     |     |     +--ro route-distinguisher    -> ../state/route-distinguisher
     |     |     |     +--ro next-hop* [next-hop-address]
     |     |     |     |  +--ro next-hop-address    -> ../state/next-hop-address
     |     |     |     |  +--ro state
     |     |     |     |     +--ro next-hop-address?                ipi-bgp-types:bgp_hostname_t
     |     |     |     |     +--ro peer-network-weight?             uint32
     |     |     |     |     +--ro flap-time-reuse-list?            string
     |     |     |     |     +--ro flap-record-duration?            string
     |     |     |     |     +--ro damp-time-to-reuse?              string
     |     |     |     |     +--ro bgp-med-value?                   uint32
     |     |     |     |     +--ro bgp-as-path-string*              cml-data-types:cml_line_t
     |     |     |     |     +--ro bgp-as-path-4-byte-string*       string
     |     |     |     |     +--ro bgp-as-path-4-byte-origin?       ipi-bgp-types:bgp_origin_t
     |     |     |     |     +--ro ibgp-metric-route?               int32
     |     |     |     |     +--ro aggregate-as-route?              int32
     |     |     |     |     +--ro aggregator-address-route?        ipi-bgp-types:bgp_hostname_t
     |     |     |     |     +--ro network-remote-address-route?    ipi-bgp-types:bgp_hostname_t
     |     |     |     |     +--ro originator-id-route?             ipi-bgp-types:bgp_hostname_t
     |     |     |     |     +--ro route-peer-address?              ipi-bgp-types:bgp_hostname_t
     |     |     |     |     +--ro route-local-preference?          uint32
     |     |     |     |     +--ro route-prefix-label?              uint32
     |     |     |     |     +--ro route-community-string?          string
     |     |     |     |     +--ro cluster-list-route*              ipi-bgp-types:bgp_hostname_t
     |     |     |     |     +--ro route-penalty?                   int32
     |     |     |     |     +--ro route-flap-count?                int32
     |     |     |     |     +--ro last-update-route?               yang:date-and-time
     |     |     |     |     +--ro reflector-client-route?          boolean
     |     |     |     |     +--ro route-dampening-active?          boolean
     |     |     |     |     +--ro history-route?                   boolean
     |     |     |     |     +--ro nexthop-valid-route?             boolean
     |     |     |     |     +--ro med-flag-type-route?             boolean
     |     |     |     |     +--ro valid-route?                     boolean
     |     |     |     |     +--ro stale-route?                     boolean
     |     |     |     |     +--ro route-type?                      ipi-bgp-types:bgp_ri_type_t
     |     |     |     |     +--ro ecmp-multi-candidate-route?      boolean
     |     |     |     |     +--ro multi-installed-route?           boolean
     |     |     |     |     +--ro route-synchronized-flag-route?   boolean
     |     |     |     |     +--ro atomic-aggregate-route?          boolean
     |     |     |     |     +--ro selected-route?                  boolean
     |     |     |     |     +--ro bgp-tx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |     +--ro bgp-rx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |     +--ro ipv4-multicast-capability?       string
     |     |     |     |     +--ro vpnv4-unicast-capability?        string
     |     |     |     |     +--ro rtfilter-unicast-capability?     string
     |     |     |     |     +--ro l2vpn-evpn-capability?           string
     |     |     |     |     +--ro ipv6-unicast-capability?         string
     |     |     |     |     +--ro ipv6-multicast-capability?       string
     |     |     |     |     +--ro ipv6-label-unicast-capability?   string
     |     |     |     |     +--ro in-label?                        uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |     +--ro out-label?                       uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |     +--ro vrf-name?                        string {feature-list:HAVE_MPLS}?
     |     |     |     |     +--ro route-distinguisher?             string {feature-list:HAVE_MPLS}?
     |     |     |     +--ro state
     |     |     |        +--ro network-address?       ipi-bgp-types:bgp_ip_network_t
     |     |     |        +--ro route-distinguisher?   string
     |     |     +--ro evpn-routes
     |     |     |  +--ro evpn-route* [route-distinguisher]
     |     |     |     +--ro route-distinguisher              -> ../state/route-distinguisher
     |     |     |     +--ro state
     |     |     |     |  +--ro route-distinguisher?   string
     |     |     |     |  +--ro vrf-name?              string
     |     |     |     +--ro mac-ip-route* [host-mac-address host-ip-address ethernet-tag-identifier next-hop-address]
     |     |     |     |  +--ro host-mac-address           -> ../state/host-mac-address
     |     |     |     |  +--ro host-ip-address            -> ../state/host-ip-address
     |     |     |     |  +--ro ethernet-tag-identifier    -> ../state/ethernet-tag-identifier
     |     |     |     |  +--ro next-hop-address           -> ../state/next-hop-address
     |     |     |     |  +--ro state
     |     |     |     |     +--ro host-mac-address?              cml-data-types:cml_mac_addr_t
     |     |     |     |     +--ro host-ip-address?               inet:ip-address
     |     |     |     |     +--ro ethernet-tag-identifier?       uint32
     |     |     |     |     +--ro next-hop-address?              inet:ipv4-address
     |     |     |     |     +--ro encapsulation-type?            string
     |     |     |     |     +--ro ethernet-segment-identifier?   string
     |     |     |     |     +--ro l2-label?                      uint32
     |     |     |     |     +--ro l3-label?                      uint32
     |     |     |     +--ro inclusive-multicast-route* [ethernet-tag-identifier originating-router-ip-address]
     |     |     |     |  +--ro ethernet-tag-identifier          -> ../state/ethernet-tag-identifier
     |     |     |     |  +--ro originating-router-ip-address    -> ../state/originating-router-ip-address
     |     |     |     |  +--ro state
     |     |     |     |     +--ro ethernet-tag-identifier?         uint32
     |     |     |     |     +--ro originating-router-ip-address?   inet:ipv4-address
     |     |     |     |     +--ro next-hop-address?                inet:ipv4-address
     |     |     |     |     +--ro encapsulation-type?              string
     |     |     |     +--ro ethernet-segment-route* [ethernet-segment-identifier originating-router-ip-address]
     |     |     |     |  +--ro ethernet-segment-identifier      -> ../state/ethernet-segment-identifier
     |     |     |     |  +--ro originating-router-ip-address    -> ../state/originating-router-ip-address
     |     |     |     |  +--ro state
     |     |     |     |     +--ro ethernet-segment-identifier?     string
     |     |     |     |     +--ro originating-router-ip-address?   inet:ipv4-address
     |     |     |     |     +--ro next-hop-address?                inet:ipv4-address
     |     |     |     |     +--ro encapsulation-type?              string
     |     |     |     +--ro ethernet-auto-discovery-route* [ethernet-segment-identifier ethernet-tag-identifier next-hop-address]
     |     |     |     |  +--ro ethernet-segment-identifier    -> ../state/ethernet-segment-identifier
     |     |     |     |  +--ro ethernet-tag-identifier        -> ../state/ethernet-tag-identifier
     |     |     |     |  +--ro next-hop-address               -> ../state/next-hop-address
     |     |     |     |  +--ro state
     |     |     |     |     +--ro ethernet-segment-identifier?   string
     |     |     |     |     +--ro ethernet-tag-identifier?       uint32
     |     |     |     |     +--ro next-hop-address?              inet:ipv4-address
     |     |     |     |     +--ro encapsulation-type?            string
     |     |     |     |     +--ro label?                         uint32
     |     |     |     +--ro ip-prefix-route* [ethernet-segment-identifier ethernet-tag-identifier originating-router-ip-address]
     |     |     |        +--ro ethernet-segment-identifier      -> ../state/ethernet-segment-identifier
     |     |     |        +--ro ethernet-tag-identifier          -> ../state/ethernet-tag-identifier
     |     |     |        +--ro originating-router-ip-address    -> ../state/originating-router-ip-address
     |     |     |        +--ro state
     |     |     |           +--ro ethernet-segment-identifier?     string
     |     |     |           +--ro ethernet-tag-identifier?         uint32
     |     |     |           +--ro originating-router-ip-address?   inet:ipv4-address
     |     |     |           +--ro next-hop-address?                inet:ipv4-address
     |     |     |           +--ro encapsulation-type?              string
     |     |     |           +--ro l3-label?                        uint32
     |     |     +--ro link-state {feature-list:HAVE_BGP_LS}?
     |     |        +--ro node-nlris
     |     |        |  +--ro node-nlri* [nlri-key]
     |     |        |     +--ro nlri-key    -> ../state/nlri-key
     |     |        |     +--ro state
     |     |        |        +--ro nlri-key?                  string
     |     |        |        +--ro nlri-origin?               string
     |     |        |        +--ro protocol?                  cml-data-types:cml_line_t
     |     |        |        +--ro nlri-identifier?           string
     |     |        |        +--ro nlri-bgp-as?               uint32
     |     |        |        +--ro bgp-router-id?             inet:ipv4-address
     |     |        |        +--ro local-bgp-router-id?       inet:ipv4-address {feature-list:HAVE_BGP_EPE}?
     |     |        |        +--ro local-bgp-as?              uint32 {feature-list:HAVE_BGP_EPE}?
     |     |        |        +--ro ospf-area-id?              inet:ipv4-address
     |     |        |        +--ro ospf-router-id?            inet:ipv4-address
     |     |        |        +--ro isis-lsp-identifier?       string
     |     |        |        +--ro designated-router-id?      inet:ipv4-address
     |     |        |        +--ro range-size?                uint32
     |     |        |        +--ro base-segment-identifier?   uint32
     |     |        +--ro link-nlris
     |     |        |  +--ro link-nlri* [nlri-key]
     |     |        |     +--ro nlri-key    -> ../state/nlri-key
     |     |        |     +--ro state
     |     |        |        +--ro nlri-key?                            string
     |     |        |        +--ro nlri-origin?                         string
     |     |        |        +--ro protocol?                            cml-data-types:cml_line_t
     |     |        |        +--ro nlri-identifier?                     string
     |     |        |        +--ro nlri-bgp-as?                         uint32
     |     |        |        +--ro bgp-router-id?                       inet:ipv4-address
     |     |        |        +--ro local-bgp-router-id?                 inet:ipv4-address {feature-list:HAVE_BGP_EPE}?
     |     |        |        +--ro local-bgp-as?                        uint32 {feature-list:HAVE_BGP_EPE}?
     |     |        |        +--ro ospf-area-id?                        inet:ipv4-address
     |     |        |        +--ro ospf-router-id?                      inet:ipv4-address
     |     |        |        +--ro isis-lsp-identifier?                 string
     |     |        |        +--ro designated-router-id?                inet:ipv4-address
     |     |        |        +--ro ospf-remote-area-id?                 inet:ipv4-address
     |     |        |        +--ro ospf-remote-router-id?               inet:ipv4-address
     |     |        |        +--ro remote-designated-router-id?         inet:ipv4-address
     |     |        |        +--ro remote-isis-lsp-id?                  string
     |     |        |        +--ro remote-bgp-as?                       uint32 {feature-list:HAVE_BGP_EPE}?
     |     |        |        +--ro remote-bgp-router-id?                inet:ipv4-address {feature-list:HAVE_BGP_EPE}?
     |     |        |        +--ro local-interface-ip?                  inet:ipv4-address
     |     |        |        +--ro remote-interface-ip?                 inet:ipv4-address
     |     |        |        +--ro igp-metric-id?                       uint8
     |     |        |        +--ro te-metric-id?                        uint8
     |     |        |        +--ro adjacent-segment-identifier?         uint32
     |     |        |        +--ro peer-node-segment-identifier?        uint32 {feature-list:HAVE_BGP_EPE}?
     |     |        |        +--ro peer-set-segment-identifier?         uint32 {feature-list:HAVE_BGP_EPE}?
     |     |        |        +--ro peer-adjacency-segment-identifier?   uint32 {feature-list:HAVE_BGP_EPE}?
     |     |        +--ro prefix-nlris
     |     |           +--ro prefix-nlri* [nlri-key]
     |     |              +--ro nlri-key    -> ../state/nlri-key
     |     |              +--ro state
     |     |                 +--ro nlri-key?                    string
     |     |                 +--ro nlri-origin?                 string
     |     |                 +--ro protocol?                    cml-data-types:cml_line_t
     |     |                 +--ro nlri-identifier?             string
     |     |                 +--ro nlri-bgp-as?                 uint32
     |     |                 +--ro bgp-router-id?               inet:ipv4-address
     |     |                 +--ro local-bgp-router-id?         inet:ipv4-address {feature-list:HAVE_BGP_EPE}?
     |     |                 +--ro local-bgp-as?                uint32 {feature-list:HAVE_BGP_EPE}?
     |     |                 +--ro ospf-area-id?                inet:ipv4-address
     |     |                 +--ro ospf-router-id?              inet:ipv4-address
     |     |                 +--ro isis-lsp-identifier?         string
     |     |                 +--ro ospf-route-type?             cml-data-types:cml_line_t
     |     |                 +--ro prefix?                      inet:ipv4-address
     |     |                 +--ro prefix-length?               uint32
     |     |                 +--ro prefix-metric?               uint32
     |     |                 +--ro N-absolute-bit-flag?         boolean
     |     |                 +--ro prefix-segment-identifier?   uint32
     |     +--rw allocate-label {feature-list:HAVE_BGP_LU}?
     |     |  +--rw config
     |     |  |  +--rw all-routes?       empty {feature-list:HAVE_BGP_LU}?
     |     |  |  +--rw route-map-name?   string {feature-list:HAVE_BGP_LU}?
     |     |  +--ro state
     |     |     +--ro all-routes?       empty {feature-list:HAVE_BGP_LU}?
     |     |     +--ro route-map-name?   string {feature-list:HAVE_BGP_LU}?
     |     +--rw address-families
     |     |  +--rw address-family* [afi safi]
     |     |     +--rw afi                         -> ../config/afi
     |     |     +--rw safi                        -> ../config/safi
     |     |     +--rw config
     |     |     |  +--rw enable-auto-summary?                  empty
     |     |     |  +--rw enable-additional-path-pic?           empty {feature-list:HAVE_BGP_PIC_CORE_EDGE}?
     |     |     |  +--rw enable-network-igp-sync?              empty
     |     |     |  +--rw enable-igp-sync?                      empty
     |     |     |  +--rw enable-bgp-implicit-null?             empty
     |     |     |  +--rw afi?                                  ipi-bgp-types:bgp_afi_type_t
     |     |     |  +--rw safi?                                 ipi-bgp-types:bgp_safi_type_t
     |     |     |  +--rw additional-path-fast-reroute?         empty {feature-list:HAVE_BGP_PIC_CORE_EDGE}?
     |     |     |  +--rw additional-paths-mode?                ipi-bgp-types:bgp_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--rw additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--rw additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--rw no-client-route-reflection?           empty
     |     |     +--ro state
     |     |     |  +--ro enable-auto-summary?                  empty
     |     |     |  +--ro enable-additional-path-pic?           empty {feature-list:HAVE_BGP_PIC_CORE_EDGE}?
     |     |     |  +--ro enable-network-igp-sync?              empty
     |     |     |  +--ro enable-igp-sync?                      empty
     |     |     |  +--ro enable-bgp-implicit-null?             empty
     |     |     |  +--ro afi?                                  ipi-bgp-types:bgp_afi_type_t
     |     |     |  +--ro safi?                                 ipi-bgp-types:bgp_safi_type_t
     |     |     |  +--ro additional-path-fast-reroute?         empty {feature-list:HAVE_BGP_PIC_CORE_EDGE}?
     |     |     |  +--ro additional-paths-mode?                ipi-bgp-types:bgp_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--ro additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--ro additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--ro no-client-route-reflection?           empty
     |     |     +--rw network-lists
     |     |     |  +--rw network-list* [local-network-prefix]
     |     |     |     +--rw local-network-prefix    -> ../config/local-network-prefix
     |     |     |     +--rw config
     |     |     |     |  +--rw local-network-prefix?   ipi-bgp-types:bgp_ip_network_t
     |     |     |     |  +--rw network-rmap-name?      string
     |     |     |     |  +--rw backdoor?               empty
     |     |     |     +--ro state
     |     |     |        +--ro network-path-route-count?            int32
     |     |     |        +--ro no-advertise-route?                  string
     |     |     |        +--ro no-export-route?                     boolean
     |     |     |        +--ro local-as-route?                      boolean
     |     |     |        +--ro suppress-route?                      boolean
     |     |     |        +--ro network-best-path-route-count?       int32
     |     |     |        +--ro ip-routing-table?                    string
     |     |     |        +--ro advertised-non-peer-group-address*   ipi-bgp-types:bgp_hostname_t
     |     |     |        +--ro advertised-peer-group-name-route*    string
     |     |     |        +--ro advertised-any-peer?                 boolean
     |     |     |        +--ro route-distinguisher-string?          string {feature-list:HAVE_MPLS}?
     |     |     |        +--ro local-network-prefix?                ipi-bgp-types:bgp_ip_network_t
     |     |     |        +--ro network-rmap-name?                   string
     |     |     |        +--ro backdoor?                            empty
     |     |     +--rw aggregate-address-lists
     |     |     |  +--rw aggregate-address-list* [aggregate-address]
     |     |     |     +--rw aggregate-address    -> ../config/aggregate-address
     |     |     |     +--rw config
     |     |     |     |  +--rw aggregate-address?   cml-data-types:cml_ip_prefix_t
     |     |     |     |  +--rw aggregate-type?      ipi-bgp-types:bgp_aggregate_type_t
     |     |     |     +--ro state
     |     |     |        +--ro aggregate-address?   cml-data-types:cml_ip_prefix_t
     |     |     |        +--ro aggregate-type?      ipi-bgp-types:bgp_aggregate_type_t
     |     |     +--rw distances
     |     |     |  +--rw distance* [ebgp ibgp local]
     |     |     |     +--rw ebgp      -> ../config/ebgp
     |     |     |     +--rw ibgp      -> ../config/ibgp
     |     |     |     +--rw local     -> ../config/local
     |     |     |     +--rw config
     |     |     |     |  +--rw ebgp?    uint8
     |     |     |     |  +--rw ibgp?    uint8
     |     |     |     |  +--rw local?   uint8
     |     |     |     +--ro state
     |     |     |        +--ro ebgp?    uint8
     |     |     |        +--ro ibgp?    uint8
     |     |     |        +--ro local?   uint8
     |     |     +--rw maximum-paths
     |     |     |  +--rw config
     |     |     |  |  +--rw ebgp-max-path?    int32
     |     |     |  |  +--rw ibgp-max-path?    int32
     |     |     |  |  +--rw eibgp-max-path?   int32
     |     |     |  +--ro state
     |     |     |     +--ro ebgp-max-path?    int32
     |     |     |     +--ro ibgp-max-path?    int32
     |     |     |     +--ro eibgp-max-path?   int32
     |     |     +--rw table-map {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     |  +--rw config!
     |     |     |  |  +--rw map-name            string {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     |  |  +--rw table-map-filter?   boolean {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     |  +--ro state
     |     |     |     +--ro map-name            string {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     |     +--ro table-map-filter?   boolean {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     +--rw route-flap-dampenings
     |     |     |  +--rw route-flap-dampening* [enable-dampening]
     |     |     |     +--rw enable-dampening    -> ../config/enable-dampening
     |     |     |     +--rw config
     |     |     |     |  +--rw enable-dampening?      ipi-bgp-types:bgp_dampening_t
     |     |     |     |  +--rw reach-half-life?       uint32
     |     |     |     |  +--rw reuse-penalty?         uint32
     |     |     |     |  +--rw suppress-penalty?      uint32
     |     |     |     |  +--rw max-suppress-time?     uint32
     |     |     |     |  +--rw unreach-half-life?     uint32
     |     |     |     |  +--rw dampening-rmap-name?   string
     |     |     |     +--ro state
     |     |     |        +--ro enable-dampening?       ipi-bgp-types:bgp_dampening_t
     |     |     |        +--ro reach-half-life?        uint32
     |     |     |        +--ro reuse-penalty?          uint32
     |     |     |        +--ro suppress-penalty?       uint32
     |     |     |        +--ro max-suppress-time?      uint32
     |     |     |        +--ro unreach-half-life?      uint32
     |     |     |        +--ro dampening-rmap-name?    string
     |     |     |        +--ro maximum-penalty-ceil?   int32
     |     |     |        +--ro minimum-penalty-ceil?   int32
     |     |     +--rw route-redistribute-lists
     |     |     |  +--rw route-redistribute-list* [protocol-type]
     |     |     |     +--rw protocol-type    -> ../config/protocol-type
     |     |     |     +--rw config
     |     |     |     |  +--rw protocol-type?           ipi-bgp-types:bgp_redistribute_type_t
     |     |     |     |  +--rw redist-route-map-name?   string
     |     |     |     +--ro state
     |     |     |        +--ro protocol-type?           ipi-bgp-types:bgp_redistribute_type_t
     |     |     |        +--ro redist-route-map-name?   string
     |     |     +--rw bgp-redistributes-ospf
     |     |     |  +--rw bgp-redistribute-ospf* [ospf-instance-number]
     |     |     |     +--rw ospf-instance-number    -> ../config/ospf-instance-number
     |     |     |     +--rw config
     |     |     |     |  +--rw ospf-instance-number?          ipi-bgp-types:cml_ospf_area_id_t
     |     |     |     |  +--rw redistribute-ospf-route-map?   string
     |     |     |     +--ro state
     |     |     |        +--ro ospf-instance-number?          ipi-bgp-types:cml_ospf_area_id_t
     |     |     |        +--ro redistribute-ospf-route-map?   string
     |     |     +--rw bgp-srv6 {feature-list:HAVE_SRV6}?
     |     |        +--rw config!
     |     |        |  +--rw bgpSRv6enable    empty
     |     |        +--ro state
     |     |        |  +--ro bgpSRv6enable    empty
     |     |        +--rw locators
     |     |           +--rw locator* [bgpSRv6LocatorName]
     |     |              +--rw bgpSRv6LocatorName    -> ../config/bgpSRv6LocatorName
     |     |              +--rw config
     |     |              |  +--rw bgpSRv6LocatorName?   string
     |     |              +--ro state
     |     |                 +--ro bgpSRv6LocatorName?   string
     |     +--rw peer-groups
     |     |  +--rw peer-group* [peer-group-tag]
     |     |     +--rw peer-group-tag       -> ../config/peer-group-tag
     |     |     +--rw config
     |     |     |  +--rw peer-group-tag?                     string
     |     |     |  +--rw peer-group-range                    ipi-bgp-types:bgp_peer_group_type_t
     |     |     |  +--rw group-limit?                        uint8
     |     |     |  +--rw peer-as?                            uint32
     |     |     |  +--rw graceful-shut?                      empty
     |     |     |  +--rw enable-peer-bfd?                    empty {feature-list:HAVE_BFD}?
     |     |     |  +--rw enable-peer-bfd-multihop?           empty {feature-list:HAVE_BFD}?
     |     |     |  +--rw graceful-shutdown-timer?            uint32
     |     |     |  +--rw peer-restart-time?                  uint32 {feature-list:HAVE_RESTART}?
     |     |     |  +--rw peer-description?                   cml-data-types:cml_line_t
     |     |     |  +--rw peer-connect-interval?              uint32
     |     |     |  +--rw peer-as-origin-interval?            uint32
     |     |     |  +--rw min-route-advertisement-interval?   uint32
     |     |     |  +--rw enable-dynamic-capability?          empty
     |     |     |  +--rw collide-established?                empty
     |     |     |  +--rw source-identifier?                  string
     |     |     |  +--rw enforce-multi-hop?                  empty
     |     |     |  +--rw neighbor-override-capability?       empty
     |     |     |  +--rw neighbor-strict-capability-match?   empty
     |     |     |  +--rw disallow-infinite-hold-time?        empty
     |     |     |  +--rw disable-capability-negotiation?     empty
     |     |     |  +--rw neighbor-passive?                   empty
     |     |     |  +--rw peer-shutdown?                      empty
     |     |     |  +--rw peer-shutdown-description?          cml-data-types:cml_line_t
     |     |     |  +--rw peer-port?                          uint16
     |     |     |  +--rw bgp-version?                        uint8
     |     |     |  +--rw enable-ext-opt-param-len?           empty
     |     |     |  +--rw tcp-adjust-mss?                     uint16
     |     |     +--ro state
     |     |     |  +--ro peer-group-tag?                     string
     |     |     |  +--ro peer-group-range                    ipi-bgp-types:bgp_peer_group_type_t
     |     |     |  +--ro group-limit?                        uint8
     |     |     |  +--ro peer-type?                          ipi-bgp-types:bgp_peer_type_t
     |     |     |  +--ro peer-as?                            uint32
     |     |     |  +--ro graceful-shut?                      empty
     |     |     |  +--ro enable-peer-bfd?                    empty {feature-list:HAVE_BFD}?
     |     |     |  +--ro enable-peer-bfd-multihop?           empty {feature-list:HAVE_BFD}?
     |     |     |  +--ro graceful-shutdown-timer?            uint32
     |     |     |  +--ro peer-restart-time?                  uint32 {feature-list:HAVE_RESTART}?
     |     |     |  +--ro peer-description?                   cml-data-types:cml_line_t
     |     |     |  +--ro peer-connect-interval?              uint32
     |     |     |  +--ro peer-as-origin-interval?            uint32
     |     |     |  +--ro min-route-advertisement-interval?   uint32
     |     |     |  +--ro enable-dynamic-capability?          empty
     |     |     |  +--ro collide-established?                empty
     |     |     |  +--ro source-identifier?                  string
     |     |     |  +--ro enforce-multi-hop?                  empty
     |     |     |  +--ro neighbor-override-capability?       empty
     |     |     |  +--ro neighbor-strict-capability-match?   empty
     |     |     |  +--ro disallow-infinite-hold-time?        empty
     |     |     |  +--ro disable-capability-negotiation?     empty
     |     |     |  +--ro neighbor-passive?                   empty
     |     |     |  +--ro peer-shutdown?                      empty
     |     |     |  +--ro peer-shutdown-description?          cml-data-types:cml_line_t
     |     |     |  +--ro peer-port?                          uint16
     |     |     |  +--ro bgp-version?                        uint8
     |     |     |  +--ro enable-ext-opt-param-len?           empty
     |     |     |  +--ro tcp-adjust-mss?                     uint16
     |     |     +--rw timers
     |     |     |  +--rw config!
     |     |     |  |  +--rw keep-alive    uint16
     |     |     |  |  +--rw hold-time     uint16
     |     |     |  +--ro state
     |     |     |     +--ro keep-alive    uint16
     |     |     |     +--ro hold-time     uint16
     |     |     +--rw ebgp-multihop
     |     |     |  +--rw config!
     |     |     |  |  +--rw maximum-hop-count?   uint8
     |     |     |  |  +--rw enabled              empty
     |     |     |  +--ro state
     |     |     |     +--ro maximum-hop-count?   uint8
     |     |     |     +--ro enabled              empty
     |     |     +--rw bgp-passwords
     |     |     |  +--rw bgp-password* [password]
     |     |     |     +--rw password    -> ../config/password
     |     |     |     +--rw config
     |     |     |     |  +--rw password?           ipi-bgp-types:bgp_md5_password_t {feature-list:HAVE_TCP_MD5SIG}?
     |     |     |     |  +--rw auth-key-encrypt    ipi-bgp-types:bgp_md5_t
     |     |     |     +--ro state
     |     |     |        +--ro password?           ipi-bgp-types:bgp_md5_password_t {feature-list:HAVE_TCP_MD5SIG}?
     |     |     |        +--ro auth-key-encrypt    ipi-bgp-types:bgp_md5_t
     |     |     +--rw optional-as-lists
     |     |     |  +--rw optional-as-list* [optional-as]
     |     |     |     +--rw optional-as    -> ../config/optional-as
     |     |     |     +--rw config
     |     |     |     |  +--rw optional-as?   uint32
     |     |     |     +--ro state
     |     |     |        +--ro optional-as?   uint32
     |     |     +--rw local-as
     |     |     |  +--rw local-as-list* [peer-local-as]
     |     |     |     +--rw peer-local-as    -> ../config/peer-local-as
     |     |     |     +--rw config
     |     |     |     |  +--rw peer-local-as?         uint32
     |     |     |     |  +--rw no-prepend-local-as?   empty
     |     |     |     |  +--rw replace-local-as?      empty
     |     |     |     +--ro state
     |     |     |        +--ro peer-local-as?         uint32
     |     |     |        +--ro no-prepend-local-as?   empty
     |     |     |        +--ro replace-local-as?      empty
     |     |     +--rw address-families
     |     |        +--rw address-family* [afi safi]
     |     |           +--rw afi                        -> ../config/afi
     |     |           +--rw safi                       -> ../config/safi
     |     |           +--rw config
     |     |           |  +--rw bgp-port?                             uint16
     |     |           |  +--rw activate?                             empty
     |     |           |  +--rw default-peer-route-map-name?          empty
     |     |           |  +--rw peer-route-map-orig-name?             string
     |     |           |  +--rw weight?                               uint16
     |     |           |  +--rw flowspec-validation-disable?          empty {feature-list:HAVE_BGP_FLOWSPEC}?
     |     |           |  +--rw peer-route-reflector?                 empty
     |     |           |  +--rw peer-remove-private-as?               empty
     |     |           |  +--rw no-send-community?                    empty
     |     |           |  +--rw no-send-community-type?               ipi-bgp-types:bgp_send_commu_type_t
     |     |           |  +--rw neighbor-attribute-unchanged?         ipi-bgp-types:bgp_attribute_unchanged_type_t
     |     |           |  +--rw orf-prefix-capability?                ipi-bgp-types:bgp_orf_prefix_type_t
     |     |           |  +--rw peer-allow-ebgp-vpn?                  empty {feature-list:HAVE_VRF}?
     |     |           |  +--rw allow-as-number?                      uint32
     |     |           |  +--rw capability-graceful-restart?          empty
     |     |           |  +--rw unsuppress-route-map-name?            string
     |     |           |  +--rw afi?                                  ipi-bgp-types:bgp_afi_type_t
     |     |           |  +--rw safi?                                 ipi-bgp-types:bgp_safi_type_t
     |     |           |  +--rw additional-paths-mode?                ipi-bgp-types:bgp_peer_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--rw additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--rw additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--rw route-server-client?                  empty
     |     |           |  +--rw next-hop-self?                        empty
     |     |           +--ro state
     |     |           |  +--ro bgp-port?                             uint16
     |     |           |  +--ro activate?                             empty
     |     |           |  +--ro default-peer-route-map-name?          empty
     |     |           |  +--ro peer-route-map-orig-name?             string
     |     |           |  +--ro weight?                               uint16
     |     |           |  +--ro flowspec-validation-disable?          empty {feature-list:HAVE_BGP_FLOWSPEC}?
     |     |           |  +--ro peer-route-reflector?                 empty
     |     |           |  +--ro peer-remove-private-as?               empty
     |     |           |  +--ro no-send-community?                    empty
     |     |           |  +--ro no-send-community-type?               ipi-bgp-types:bgp_send_commu_type_t
     |     |           |  +--ro neighbor-attribute-unchanged?         ipi-bgp-types:bgp_attribute_unchanged_type_t
     |     |           |  +--ro orf-prefix-capability?                ipi-bgp-types:bgp_orf_prefix_type_t
     |     |           |  +--ro peer-allow-ebgp-vpn?                  empty {feature-list:HAVE_VRF}?
     |     |           |  +--ro allow-as-number?                      uint32
     |     |           |  +--ro capability-graceful-restart?          empty
     |     |           |  +--ro unsuppress-route-map-name?            string
     |     |           |  +--ro afi?                                  ipi-bgp-types:bgp_afi_type_t
     |     |           |  +--ro safi?                                 ipi-bgp-types:bgp_safi_type_t
     |     |           |  +--ro additional-paths-mode?                ipi-bgp-types:bgp_peer_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--ro additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--ro additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--ro route-server-client?                  empty
     |     |           |  +--ro next-hop-self?                        empty
     |     |           +--rw maximum-prefixes
     |     |           |  +--rw maximum-prefix* [prefix-count]
     |     |           |     +--rw prefix-count    -> ../config/prefix-count
     |     |           |     +--rw config
     |     |           |     |  +--rw prefix-count?             uint32
     |     |           |     |  +--rw stop-update?              empty
     |     |           |     |  +--rw maximum-prefix-warning?   empty
     |     |           |     |  +--rw threshold-percentage?     uint8
     |     |           |     |  +--rw warning-only?             empty
     |     |           |     +--ro state
     |     |           |        +--ro prefix-count?             uint32
     |     |           |        +--ro stop-update?              empty
     |     |           |        +--ro maximum-prefix-warning?   empty
     |     |           |        +--ro threshold-percentage?     uint8
     |     |           |        +--ro warning-only?             empty
     |     |           +--rw distribute-list-filters
     |     |           |  +--rw distribute-list-filter* [filter-direction]
     |     |           |     +--rw filter-direction    -> ../config/filter-direction
     |     |           |     +--rw config
     |     |           |     |  +--rw access-list-identifier    string
     |     |           |     |  +--rw filter-direction?         ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           |     +--ro state
     |     |           |        +--ro access-list-identifier    string
     |     |           |        +--ro filter-direction?         ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           +--rw as-list-filters
     |     |           |  +--rw as-list-filter* [as-list-direction]
     |     |           |     +--rw as-list-direction    -> ../config/as-list-direction
     |     |           |     +--rw config
     |     |           |     |  +--rw as-access-list-identifier    string
     |     |           |     |  +--rw as-list-direction?           ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           |     +--ro state
     |     |           |        +--ro as-access-list-identifier    string
     |     |           |        +--ro as-list-direction?           ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           +--rw prefix-list-filters
     |     |           |  +--rw prefix-list-filter* [prefix-filter-direction]
     |     |           |     +--rw prefix-filter-direction    -> ../config/prefix-filter-direction
     |     |           |     +--rw config
     |     |           |     |  +--rw prefix-list-name           string
     |     |           |     |  +--rw prefix-filter-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           |     +--ro state
     |     |           |        +--ro prefix-list-name           string
     |     |           |        +--ro prefix-filter-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           +--rw route-map-filters
     |     |           |  +--rw route-map-filter* [route-map-direction]
     |     |           |     +--rw route-map-direction    -> ../config/route-map-direction
     |     |           |     +--rw config
     |     |           |     |  +--rw route-map-name         string
     |     |           |     |  +--rw route-map-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           |     +--ro state
     |     |           |        +--ro route-map-name         string
     |     |           |        +--ro route-map-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           +--rw aigp {feature-list:HAVE_BGP_AIGP}?
     |     |              +--rw config
     |     |              |  +--rw admin-status?    cml-data-types:cml_enable_disable_t {feature-list:HAVE_BGP_AIGP}?
     |     |              |  +--rw aigp-send-med?   empty
     |     |              +--ro state
     |     |              |  +--ro admin-status?    cml-data-types:cml_enable_disable_t {feature-list:HAVE_BGP_AIGP}?
     |     |              |  +--ro aigp-send-med?   empty
     |     |              +--rw cost-community {feature-list:HAVE_BGP_AIGP}?
     |     |                 +--rw config!
     |     |                 |  +--rw send-cost-community-id    uint8 {feature-list:HAVE_BGP_AIGP}?
     |     |                 |  +--rw point-of-insertion        ipi-bgp-types:bgp_aigp_metric_cost_community_poi_t {feature-list:HAVE_BGP_AIGP}?
     |     |                 |  +--rw enable-transitive?        empty {feature-list:HAVE_BGP_AIGP}?
     |     |                 +--ro state
     |     |                    +--ro send-cost-community-id    uint8 {feature-list:HAVE_BGP_AIGP}?
     |     |                    +--ro point-of-insertion        ipi-bgp-types:bgp_aigp_metric_cost_community_poi_t {feature-list:HAVE_BGP_AIGP}?
     |     |                    +--ro enable-transitive?        empty {feature-list:HAVE_BGP_AIGP}?
     |     +--rw peers
     |     |  +--rw peer* [peer-address]
     |     |     +--rw peer-address          -> ../config/peer-address
     |     |     +--rw config
     |     |     |  +--rw peer-address?                       ipi-bgp-types:bgp_ip_addr_t
     |     |     |  +--rw peer-as?                            ipi-bgp-types:bgp_as_type_t
     |     |     |  +--rw graceful-shut?                      empty
     |     |     |  +--rw enable-peer-bfd?                    empty {feature-list:HAVE_BFD}?
     |     |     |  +--rw enable-peer-bfd-multihop?           empty {feature-list:HAVE_BFD}?
     |     |     |  +--rw graceful-shutdown-timer?            uint32
     |     |     |  +--rw peer-restart-time?                  uint32 {feature-list:HAVE_RESTART}?
     |     |     |  +--rw peer-description?                   cml-data-types:cml_line_t
     |     |     |  +--rw peer-connect-interval?              uint32
     |     |     |  +--rw peer-as-origin-interval?            uint32
     |     |     |  +--rw min-route-advertisement-interval?   uint32
     |     |     |  +--rw enable-dynamic-capability?          empty
     |     |     |  +--rw collide-established?                empty
     |     |     |  +--rw source-identifier?                  string
     |     |     |  +--rw enforce-multi-hop?                  empty
     |     |     |  +--rw neighbor-override-capability?       empty
     |     |     |  +--rw neighbor-strict-capability-match?   empty
     |     |     |  +--rw disallow-infinite-hold-time?        empty
     |     |     |  +--rw disable-capability-negotiation?     empty
     |     |     |  +--rw neighbor-passive?                   empty
     |     |     |  +--rw peer-shutdown?                      empty
     |     |     |  +--rw peer-shutdown-description?          cml-data-types:cml_line_t
     |     |     |  +--rw peer-port?                          uint16
     |     |     |  +--rw bgp-version?                        uint8
     |     |     |  +--rw interface-name?                     string
     |     |     |  +--rw mapped-peer-group-tag?              string
     |     |     |  +--rw enable-ext-opt-param-len?           empty
     |     |     |  +--rw tcp-adjust-mss?                     uint16
     |     |     +--ro state
     |     |     |  +--ro counters
     |     |     |  |  +--ro notification-in?      int32
     |     |     |  |  +--ro notification-out?     int32
     |     |     |  |  +--ro update-message-in?    int32
     |     |     |  |  +--ro update-message-out?   int32
     |     |     |  +--ro peer-address?                       ipi-bgp-types:bgp_ip_addr_t
     |     |     |  +--ro peer-as?                            ipi-bgp-types:bgp_as_type_t
     |     |     |  +--ro graceful-shut?                      empty
     |     |     |  +--ro enable-peer-bfd?                    empty {feature-list:HAVE_BFD}?
     |     |     |  +--ro enable-peer-bfd-multihop?           empty {feature-list:HAVE_BFD}?
     |     |     |  +--ro graceful-shutdown-timer?            uint32
     |     |     |  +--ro peer-restart-time?                  uint32 {feature-list:HAVE_RESTART}?
     |     |     |  +--ro peer-description?                   cml-data-types:cml_line_t
     |     |     |  +--ro peer-connect-interval?              uint32
     |     |     |  +--ro peer-as-origin-interval?            uint32
     |     |     |  +--ro min-route-advertisement-interval?   uint32
     |     |     |  +--ro enable-dynamic-capability?          empty
     |     |     |  +--ro collide-established?                empty
     |     |     |  +--ro source-identifier?                  string
     |     |     |  +--ro enforce-multi-hop?                  empty
     |     |     |  +--ro neighbor-override-capability?       empty
     |     |     |  +--ro neighbor-strict-capability-match?   empty
     |     |     |  +--ro disallow-infinite-hold-time?        empty
     |     |     |  +--ro disable-capability-negotiation?     empty
     |     |     |  +--ro neighbor-passive?                   empty
     |     |     |  +--ro peer-shutdown?                      empty
     |     |     |  +--ro peer-shutdown-description?          cml-data-types:cml_line_t
     |     |     |  +--ro peer-port?                          uint16
     |     |     |  +--ro bgp-version?                        uint8
     |     |     |  +--ro interface-name?                     string
     |     |     |  +--ro mapped-peer-group-tag?              string
     |     |     |  +--ro enable-ext-opt-param-len?           empty
     |     |     |  +--ro tcp-adjust-mss?                     uint16
     |     |     |  +--ro peer-type?                          ipi-bgp-types:bgp_peer_type_t
     |     |     |  +--ro dynamically-configured?             boolean
     |     |     |  +--ro connection-established-count?       int32
     |     |     |  +--ro error-notify-sent?                  boolean
     |     |     |  +--ro notify-code-string?                 cml-data-types:cml_line_t
     |     |     |  +--ro bgp-peer-state?                     ipi-bgp-types:bgp_peer_status_t
     |     |     +--rw timers
     |     |     |  +--rw config!
     |     |     |  |  +--rw keep-alive    uint16
     |     |     |  |  +--rw hold-time     uint16
     |     |     |  +--ro state
     |     |     |     +--ro keep-alive    uint16
     |     |     |     +--ro hold-time     uint16
     |     |     +--rw ebgp-multihop
     |     |     |  +--rw config!
     |     |     |  |  +--rw maximum-hop-count?   uint8
     |     |     |  |  +--rw enabled              empty
     |     |     |  +--ro state
     |     |     |     +--ro maximum-hop-count?   uint8
     |     |     |     +--ro enabled              empty
     |     |     +--rw local-as
     |     |     |  +--rw local-as-list* [peer-local-as]
     |     |     |     +--rw peer-local-as    -> ../config/peer-local-as
     |     |     |     +--rw config
     |     |     |     |  +--rw peer-local-as?         uint32
     |     |     |     |  +--rw no-prepend-local-as?   empty
     |     |     |     |  +--rw replace-local-as?      empty
     |     |     |     +--ro state
     |     |     |        +--ro peer-local-as?         uint32
     |     |     |        +--ro no-prepend-local-as?   empty
     |     |     |        +--ro replace-local-as?      empty
     |     |     +--rw bgp-passwords
     |     |     |  +--rw bgp-password* [password]
     |     |     |     +--rw password    -> ../config/password
     |     |     |     +--rw config
     |     |     |     |  +--rw password?           ipi-bgp-types:bgp_md5_password_t {feature-list:HAVE_TCP_MD5SIG}?
     |     |     |     |  +--rw auth-key-encrypt    ipi-bgp-types:bgp_md5_t
     |     |     |     +--ro state
     |     |     |        +--ro password?           ipi-bgp-types:bgp_md5_password_t {feature-list:HAVE_TCP_MD5SIG}?
     |     |     |        +--ro auth-key-encrypt    ipi-bgp-types:bgp_md5_t
     |     |     +--rw address-families
     |     |     |  +--rw address-family* [afi safi]
     |     |     |     +--rw afi                        -> ../config/afi
     |     |     |     +--rw safi                       -> ../config/safi
     |     |     |     +--ro peer-adj-out-route* [network-address]
     |     |     |     |  +--ro network-address    -> ../state/network-address
     |     |     |     |  +--ro next-hop* [next-hop-address]
     |     |     |     |  |  +--ro next-hop-address    -> ../state/next-hop-address
     |     |     |     |  |  +--ro state
     |     |     |     |  |     +--ro next-hop-address?                ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro peer-network-weight?             uint32
     |     |     |     |  |     +--ro flap-time-reuse-list?            string
     |     |     |     |  |     +--ro flap-record-duration?            string
     |     |     |     |  |     +--ro damp-time-to-reuse?              string
     |     |     |     |  |     +--ro bgp-med-value?                   uint32
     |     |     |     |  |     +--ro bgp-as-path-string*              cml-data-types:cml_line_t
     |     |     |     |  |     +--ro bgp-as-path-4-byte-string*       string
     |     |     |     |  |     +--ro bgp-as-path-4-byte-origin?       ipi-bgp-types:bgp_origin_t
     |     |     |     |  |     +--ro ibgp-metric-route?               int32
     |     |     |     |  |     +--ro aggregate-as-route?              int32
     |     |     |     |  |     +--ro aggregator-address-route?        ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro network-remote-address-route?    ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro originator-id-route?             ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-peer-address?              ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-local-preference?          uint32
     |     |     |     |  |     +--ro route-prefix-label?              uint32
     |     |     |     |  |     +--ro route-community-string?          string
     |     |     |     |  |     +--ro cluster-list-route*              ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-penalty?                   int32
     |     |     |     |  |     +--ro route-flap-count?                int32
     |     |     |     |  |     +--ro last-update-route?               yang:date-and-time
     |     |     |     |  |     +--ro reflector-client-route?          boolean
     |     |     |     |  |     +--ro route-dampening-active?          boolean
     |     |     |     |  |     +--ro history-route?                   boolean
     |     |     |     |  |     +--ro nexthop-valid-route?             boolean
     |     |     |     |  |     +--ro med-flag-type-route?             boolean
     |     |     |     |  |     +--ro valid-route?                     boolean
     |     |     |     |  |     +--ro stale-route?                     boolean
     |     |     |     |  |     +--ro route-type?                      ipi-bgp-types:bgp_ri_type_t
     |     |     |     |  |     +--ro ecmp-multi-candidate-route?      boolean
     |     |     |     |  |     +--ro multi-installed-route?           boolean
     |     |     |     |  |     +--ro route-synchronized-flag-route?   boolean
     |     |     |     |  |     +--ro atomic-aggregate-route?          boolean
     |     |     |     |  |     +--ro selected-route?                  boolean
     |     |     |     |  |     +--ro bgp-tx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  |     +--ro bgp-rx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  |     +--ro ipv4-multicast-capability?       string
     |     |     |     |  |     +--ro vpnv4-unicast-capability?        string
     |     |     |     |  |     +--ro rtfilter-unicast-capability?     string
     |     |     |     |  |     +--ro l2vpn-evpn-capability?           string
     |     |     |     |  |     +--ro ipv6-unicast-capability?         string
     |     |     |     |  |     +--ro ipv6-multicast-capability?       string
     |     |     |     |  |     +--ro ipv6-label-unicast-capability?   string
     |     |     |     |  |     +--ro in-label?                        uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |  |     +--ro out-label?                       uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |  +--ro state
     |     |     |     |     +--ro network-address?   ipi-bgp-types:bgp_ip_network_t
     |     |     |     +--ro peer-adj-in-route* [network-address]
     |     |     |     |  +--ro network-address    -> ../state/network-address
     |     |     |     |  +--ro next-hop* [next-hop-address]
     |     |     |     |  |  +--ro next-hop-address    -> ../state/next-hop-address
     |     |     |     |  |  +--ro state
     |     |     |     |  |     +--ro next-hop-address?                ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro peer-network-weight?             uint32
     |     |     |     |  |     +--ro flap-time-reuse-list?            string
     |     |     |     |  |     +--ro flap-record-duration?            string
     |     |     |     |  |     +--ro damp-time-to-reuse?              string
     |     |     |     |  |     +--ro bgp-med-value?                   uint32
     |     |     |     |  |     +--ro bgp-as-path-string*              cml-data-types:cml_line_t
     |     |     |     |  |     +--ro bgp-as-path-4-byte-string*       string
     |     |     |     |  |     +--ro bgp-as-path-4-byte-origin?       ipi-bgp-types:bgp_origin_t
     |     |     |     |  |     +--ro ibgp-metric-route?               int32
     |     |     |     |  |     +--ro aggregate-as-route?              int32
     |     |     |     |  |     +--ro aggregator-address-route?        ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro network-remote-address-route?    ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro originator-id-route?             ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-peer-address?              ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-local-preference?          uint32
     |     |     |     |  |     +--ro route-prefix-label?              uint32
     |     |     |     |  |     +--ro route-community-string?          string
     |     |     |     |  |     +--ro cluster-list-route*              ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-penalty?                   int32
     |     |     |     |  |     +--ro route-flap-count?                int32
     |     |     |     |  |     +--ro last-update-route?               yang:date-and-time
     |     |     |     |  |     +--ro reflector-client-route?          boolean
     |     |     |     |  |     +--ro route-dampening-active?          boolean
     |     |     |     |  |     +--ro history-route?                   boolean
     |     |     |     |  |     +--ro nexthop-valid-route?             boolean
     |     |     |     |  |     +--ro med-flag-type-route?             boolean
     |     |     |     |  |     +--ro valid-route?                     boolean
     |     |     |     |  |     +--ro stale-route?                     boolean
     |     |     |     |  |     +--ro route-type?                      ipi-bgp-types:bgp_ri_type_t
     |     |     |     |  |     +--ro ecmp-multi-candidate-route?      boolean
     |     |     |     |  |     +--ro multi-installed-route?           boolean
     |     |     |     |  |     +--ro route-synchronized-flag-route?   boolean
     |     |     |     |  |     +--ro atomic-aggregate-route?          boolean
     |     |     |     |  |     +--ro selected-route?                  boolean
     |     |     |     |  |     +--ro bgp-tx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  |     +--ro bgp-rx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  |     +--ro ipv4-multicast-capability?       string
     |     |     |     |  |     +--ro vpnv4-unicast-capability?        string
     |     |     |     |  |     +--ro rtfilter-unicast-capability?     string
     |     |     |     |  |     +--ro l2vpn-evpn-capability?           string
     |     |     |     |  |     +--ro ipv6-unicast-capability?         string
     |     |     |     |  |     +--ro ipv6-multicast-capability?       string
     |     |     |     |  |     +--ro ipv6-label-unicast-capability?   string
     |     |     |     |  |     +--ro in-label?                        uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |  |     +--ro out-label?                       uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |  +--ro state
     |     |     |     |     +--ro network-address?   ipi-bgp-types:bgp_ip_network_t
     |     |     |     +--rw config
     |     |     |     |  +--rw afi?                                  ipi-bgp-types:bgp_afi_type_t
     |     |     |     |  +--rw safi?                                 ipi-bgp-types:bgp_safi_type_t
     |     |     |     |  +--rw additional-paths-mode?                ipi-bgp-types:bgp_peer_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--rw additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--rw additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--rw route-server-client?                  empty
     |     |     |     |  +--rw next-hop-self?                        empty
     |     |     |     |  +--rw bgp-port?                             uint16
     |     |     |     |  +--rw activate?                             empty
     |     |     |     |  +--rw de-activate?                          empty
     |     |     |     |  +--rw default-peer-route-map-name?          empty
     |     |     |     |  +--rw peer-route-map-orig-name?             string
     |     |     |     |  +--rw soft-reconfig?                        ipi-bgp-types:bgp_update_clear_t
     |     |     |     |  +--rw weight?                               uint16
     |     |     |     |  +--rw flowspec-validation-disable?          empty {feature-list:HAVE_BGP_FLOWSPEC}?
     |     |     |     |  +--rw peer-route-reflector?                 empty
     |     |     |     |  +--rw peer-remove-private-as?               empty
     |     |     |     |  +--rw no-send-community?                    empty
     |     |     |     |  +--rw no-send-community-type?               ipi-bgp-types:bgp_send_commu_type_t
     |     |     |     |  +--rw neighbor-attribute-unchanged?         ipi-bgp-types:bgp_attribute_unchanged_type_t
     |     |     |     |  +--rw orf-prefix-capability?                ipi-bgp-types:bgp_orf_prefix_type_t
     |     |     |     |  +--rw peer-allow-ebgp-vpn?                  empty {feature-list:HAVE_VRF}?
     |     |     |     |  +--rw allow-as-number?                      uint32
     |     |     |     |  +--rw capability-graceful-restart?          empty
     |     |     |     |  +--rw extended-nexthop-encode?              empty
     |     |     |     |  +--rw mapped-peer-group-tag-af?             string
     |     |     |     |  +--rw unsuppress-route-map-name?            string
     |     |     |     +--ro state
     |     |     |     |  +--ro counters
     |     |     |     |  |  +--ro keepalive-in-messages?           int32
     |     |     |     |  |  +--ro keepalive-out-messages?          int32
     |     |     |     |  |  +--ro open-messages-in?                int32
     |     |     |     |  |  +--ro open-messages-out?               int32
     |     |     |     |  |  +--ro as-path-count?                   int32
     |     |     |     |  |  +--ro as-path-extended-count?          int32
     |     |     |     |  |  +--ro received-packet-count?           int32
     |     |     |     |  |  +--ro packet-in-queue?                 int32
     |     |     |     |  |  +--ro packet-out-queue?                int32
     |     |     |     |  |  +--ro sent-packet-count?               int32
     |     |     |     |  |  +--ro refresh-received-packet-count?   int32
     |     |     |     |  |  +--ro refresh-sent-packet-count?       int32
     |     |     |     |  +--ro afi?                                    ipi-bgp-types:bgp_afi_type_t
     |     |     |     |  +--ro safi?                                   ipi-bgp-types:bgp_safi_type_t
     |     |     |     |  +--ro additional-paths-mode?                  ipi-bgp-types:bgp_peer_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro additional-path-select-all?             empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro additional-paths-best-select-count?     uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro route-server-client?                    empty
     |     |     |     |  +--ro next-hop-self?                          empty
     |     |     |     |  +--ro bgp-port?                               uint16
     |     |     |     |  +--ro activate?                               empty
     |     |     |     |  +--ro de-activate?                            empty
     |     |     |     |  +--ro default-peer-route-map-name?            empty
     |     |     |     |  +--ro peer-route-map-orig-name?               string
     |     |     |     |  +--ro soft-reconfig?                          ipi-bgp-types:bgp_update_clear_t
     |     |     |     |  +--ro weight?                                 uint16
     |     |     |     |  +--ro flowspec-validation-disable?            empty {feature-list:HAVE_BGP_FLOWSPEC}?
     |     |     |     |  +--ro peer-route-reflector?                   empty
     |     |     |     |  +--ro peer-remove-private-as?                 empty
     |     |     |     |  +--ro no-send-community?                      empty
     |     |     |     |  +--ro no-send-community-type?                 ipi-bgp-types:bgp_send_commu_type_t
     |     |     |     |  +--ro neighbor-attribute-unchanged?           ipi-bgp-types:bgp_attribute_unchanged_type_t
     |     |     |     |  +--ro orf-prefix-capability?                  ipi-bgp-types:bgp_orf_prefix_type_t
     |     |     |     |  +--ro peer-allow-ebgp-vpn?                    empty {feature-list:HAVE_VRF}?
     |     |     |     |  +--ro allow-as-number?                        uint32
     |     |     |     |  +--ro capability-graceful-restart?            empty
     |     |     |     |  +--ro extended-nexthop-encode?                empty
     |     |     |     |  +--ro mapped-peer-group-tag-af?               string
     |     |     |     |  +--ro unsuppress-route-map-name?              string
     |     |     |     |  +--ro max-paths-ibgp?                         int16
     |     |     |     |  +--ro configured-max-paths-ebgp?              int16
     |     |     |     |  +--ro max-paths-ebgp?                         int16
     |     |     |     |  +--ro configured-max-paths-ibgp?              int16
     |     |     |     |  +--ro max-paths-eibgp?                        int16
     |     |     |     |  +--ro configured-max-paths-eibgp?             int16
     |     |     |     |  +--ro community-count?                        int32
     |     |     |     |  +--ro confederation-id-check?                 boolean
     |     |     |     |  +--ro peer-and-extended-asn-capability?       ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro address-family-capability?              ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro ipv6-next-hop-global?                   inet:ipv6-address
     |     |     |     |  +--ro ipv6-next-hop-local?                    inet:ipv6-address
     |     |     |     |  +--ro remote-port?                            int32
     |     |     |     |  +--ro remote-address?                         ipi-bgp-types:bgp_hostname_t
     |     |     |     |  +--ro local-host?                             ipi-bgp-types:bgp_hostname_t
     |     |     |     |  +--ro ipv4-next-hop?                          inet:ipv4-address
     |     |     |     |  +--ro local-port?                             int32
     |     |     |     |  +--ro default-information-originate?          boolean
     |     |     |     |  +--ro inbound-path-policy?                    boolean
     |     |     |     |  +--ro outbound-path-policy?                   boolean
     |     |     |     |  +--ro default-originate-information-sent?     cml-data-types:cml_line_t
     |     |     |     |  +--ro graceful-restart?                       ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro address-family-dependent-capability?    boolean
     |     |     |     |  +--ro peer-address-family-table-version?      int32
     |     |     |     |  +--ro address-family-table-version?           int32
     |     |     |     |  +--ro forward-status-preserve?                string
     |     |     |     |  +--ro orf-type-prefix?                        cml-data-types:cml_line_t
     |     |     |     |  +--ro orf-type-prefix-send-mode?              ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro orf-type-prefix-receive-mode?           ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro orf-type-prefix-old?                    cml-data-types:cml_line_t
     |     |     |     |  +--ro orf-type-prefix-send-mode-old?          ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro orf-type-prefix-receive-mode-old?       ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro prefix-count?                           int32
     |     |     |     |  +--ro send-prefix-count?                      int32
     |     |     |     |  +--ro flag-shut-down?                         ipi-bgp-types:bgp_peerflag_shutdown_t
     |     |     |     |  +--ro count?                                  int32
     |     |     |     |  +--ro notify-info?                            boolean
     |     |     |     |  +--ro notify-last-reset-time?                 string
     |     |     |     |  +--ro connection-type?                        ipi-bgp-types:bgp_connection_type_t
     |     |     |     |  +--ro next-connection-timer?                  int32
     |     |     |     |  +--ro connection-dropped-count?               int32
     |     |     |     |  +--ro graceful-restart-status?                string
     |     |     |     |  +--ro graceful-restart-time?                  int32
     |     |     |     |  +--ro bgp-established-up-time?                string
     |     |     |     |  +--ro last-read-time?                         string
     |     |     |     |  +--ro link-type?                              ipi-bgp-types:bgp_link_type_t
     |     |     |     |  +--ro ebgp-hop-away-count?                    int32
     |     |     |     |  +--ro router-id?                              inet:ipv4-address
     |     |     |     |  +--ro advertisement-interval?                 int32
     |     |     |     |  +--ro calculated-hold-time?                   int32
     |     |     |     |  +--ro calculated-keepalive?                   int32
     |     |     |     |  +--ro dynamic-capability?                     cml-data-types:cml_line_t
     |     |     |     |  +--ro route-refresh-capability?               ipi-bgp-types:bgp_route_refresh_cap_type_t
     |     |     |     |  +--ro no-interface-binding?                   boolean
     |     |     |     |  +--ro additional-path-receive-capability?     string {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro additional-path-send-capability?        string {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro capability-ipv4-unicast?                ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-label-unicast?               ipi-bgp-types:bgp_capability_type_t {feature-list:HAVE_BGP_LU}?
     |     |     |     |  +--ro capability-ipv4-multicast?              ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-vpnv4-unicast?               ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-vpnv6-unicast?               ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-rtfilter-unicast?            ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-l2vpn-evpn?                  ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-ipv6-unicast?                ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-ipv6-multicast?              ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-ipv6-label-unicast?          ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro evpn-ad-route-count?                    uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     |  +--ro evpn-mac-ip-route-count?                uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     |  +--ro evpn-inclusive-multicast-route-count?   uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     |  +--ro evpn-segment-route-count?               uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     |  +--ro evpn-ip-prefix-route-count?             uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     +--rw maximum-prefixes
     |     |     |     |  +--rw maximum-prefix* [prefix-count]
     |     |     |     |     +--rw prefix-count    -> ../config/prefix-count
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw prefix-count?             uint32
     |     |     |     |     |  +--rw stop-update?              empty
     |     |     |     |     |  +--rw maximum-prefix-warning?   empty
     |     |     |     |     |  +--rw threshold-percentage?     uint8
     |     |     |     |     |  +--rw warning-only?             empty
     |     |     |     |     +--ro state
     |     |     |     |        +--ro prefix-count?             uint32
     |     |     |     |        +--ro stop-update?              empty
     |     |     |     |        +--ro maximum-prefix-warning?   empty
     |     |     |     |        +--ro threshold-percentage?     uint8
     |     |     |     |        +--ro warning-only?             empty
     |     |     |     +--rw distribute-list-filters
     |     |     |     |  +--rw distribute-list-filter* [filter-direction]
     |     |     |     |     +--rw filter-direction    -> ../config/filter-direction
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw access-list-identifier    string
     |     |     |     |     |  +--rw filter-direction?         ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     |     +--ro state
     |     |     |     |        +--ro access-list-identifier    string
     |     |     |     |        +--ro filter-direction?         ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     +--rw as-list-filters
     |     |     |     |  +--rw as-list-filter* [as-list-direction]
     |     |     |     |     +--rw as-list-direction    -> ../config/as-list-direction
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw as-access-list-identifier    string
     |     |     |     |     |  +--rw as-list-direction?           ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     |     +--ro state
     |     |     |     |        +--ro as-access-list-identifier    string
     |     |     |     |        +--ro as-list-direction?           ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     +--rw prefix-list-filters
     |     |     |     |  +--rw prefix-list-filter* [prefix-filter-direction]
     |     |     |     |     +--rw prefix-filter-direction    -> ../config/prefix-filter-direction
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw prefix-list-name           string
     |     |     |     |     |  +--rw prefix-filter-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     |     +--ro state
     |     |     |     |        +--ro prefix-list-name           string
     |     |     |     |        +--ro prefix-filter-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     +--rw route-map-filters
     |     |     |     |  +--rw route-map-filter* [route-map-direction]
     |     |     |     |     +--rw route-map-direction    -> ../config/route-map-direction
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw route-map-name         string
     |     |     |     |     |  +--rw route-map-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     |     +--ro state
     |     |     |     |        +--ro route-map-name         string
     |     |     |     |        +--ro route-map-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     +--ro outbound-route-filter
     |     |     |     |  +--ro state
     |     |     |     |     +--ro orf-prefix-string?   boolean
     |     |     |     |     +--ro orf-prefix-send?     string
     |     |     |     |     +--ro orf-prefix-count?    string
     |     |     |     |     +--ro orf-wait-refresh?    boolean
     |     |     |     +--ro peer-prefix
     |     |     |     |  +--ro state
     |     |     |     |     +--ro entry-sequence?     int32
     |     |     |     |     +--ro entry-type?         ipi-bgp-types:bgp_prefix_entry_type_t
     |     |     |     |     +--ro entry-max-length?   int32
     |     |     |     |     +--ro entry-min-length?   int32
     |     |     |     |     +--ro prefix-length?      int32
     |     |     |     +--ro peer-index
     |     |     |     |  +--ro state
     |     |     |     |     +--ro peer-index?   int32
     |     |     |     |     +--ro offset?       int32
     |     |     |     |     +--ro mask?         string
     |     |     |     +--rw aigp {feature-list:HAVE_BGP_AIGP}?
     |     |     |        +--rw config
     |     |     |        |  +--rw admin-status?    cml-data-types:cml_enable_disable_t {feature-list:HAVE_BGP_AIGP}?
     |     |     |        |  +--rw aigp-send-med?   empty
     |     |     |        +--ro state
     |     |     |        |  +--ro admin-status?    cml-data-types:cml_enable_disable_t {feature-list:HAVE_BGP_AIGP}?
     |     |     |        |  +--ro aigp-send-med?   empty
     |     |     |        +--rw cost-community {feature-list:HAVE_BGP_AIGP}?
     |     |     |           +--rw config!
     |     |     |           |  +--rw send-cost-community-id    uint8 {feature-list:HAVE_BGP_AIGP}?
     |     |     |           |  +--rw point-of-insertion        ipi-bgp-types:bgp_aigp_metric_cost_community_poi_t {feature-list:HAVE_BGP_AIGP}?
     |     |     |           |  +--rw enable-transitive?        empty {feature-list:HAVE_BGP_AIGP}?
     |     |     |           +--ro state
     |     |     |              +--ro send-cost-community-id    uint8 {feature-list:HAVE_BGP_AIGP}?
     |     |     |              +--ro point-of-insertion        ipi-bgp-types:bgp_aigp_metric_cost_community_poi_t {feature-list:HAVE_BGP_AIGP}?
     |     |     |              +--ro enable-transitive?        empty {feature-list:HAVE_BGP_AIGP}?
     |     |     +--rw egress-engineering
     |     |        +--rw config
     |     |        |  +--rw enable-peer-node?   empty
     |     |        +--ro state
     |     |        |  +--ro enable-peer-node?     empty
     |     |        |  +--ro in-label?             uint32
     |     |        |  +--ro nexthop-ip-address?   inet:ipv4-address
     |     |        |  +--ro out-interface?        string
     |     |        +--rw peer-set
     |     |        |  +--rw config
     |     |        |  |  +--rw set-name?   string
     |     |        |  +--ro state
     |     |        |     +--ro set-name?             string
     |     |        |     +--ro in-label?             uint32
     |     |        |     +--ro nexthop-ip-address?   inet:ipv4-address
     |     |        |     +--ro out-interface?        string
     |     |        +--rw backup
     |     |        |  +--rw peer-node
     |     |        |  |  +--rw config
     |     |        |  |  |  +--rw address?   inet:ipv4-address
     |     |        |  |  +--ro state
     |     |        |  |     +--ro address?              inet:ipv4-address
     |     |        |  |     +--ro nexthop-ip-address?   inet:ipv4-address
     |     |        |  |     +--ro out-interface?        string
     |     |        |  +--rw adjacency
     |     |        |     +--rw config!
     |     |        |     |  +--rw adjacent-address    inet:ipv4-address
     |     |        |     |  +--rw nexthop-address     inet:ipv4-address
     |     |        |     +--ro state
     |     |        |        +--ro adjacent-address      inet:ipv4-address
     |     |        |        +--ro nexthop-address       inet:ipv4-address
     |     |        |        +--ro nexthop-ip-address?   inet:ipv4-address
     |     |        |        +--ro out-interface?        string
     |     |        +--rw peer-adjacencies
     |     |           +--rw peer-adjacency* [hop-address]
     |     |              +--rw hop-address    -> ../config/hop-address
     |     |              +--rw config
     |     |              |  +--rw hop-address?   inet:ipv4-address
     |     |              +--ro state
     |     |              |  +--ro hop-address?          inet:ipv4-address
     |     |              |  +--ro in-label?             uint32
     |     |              |  +--ro nexthop-ip-address?   inet:ipv4-address
     |     |              |  +--ro out-interface?        string
     |     |              +--rw backup
     |     |                 +--rw peer-node
     |     |                 |  +--rw config
     |     |                 |  |  +--rw address?   inet:ipv4-address
     |     |                 |  +--ro state
     |     |                 |     +--ro address?              inet:ipv4-address
     |     |                 |     +--ro nexthop-ip-address?   inet:ipv4-address
     |     |                 |     +--ro out-interface?        string
     |     |                 +--rw adjacency
     |     |                    +--rw config!
     |     |                    |  +--rw adjacent-address    inet:ipv4-address
     |     |                    |  +--rw nexthop-address     inet:ipv4-address
     |     |                    +--ro state
     |     |                       +--ro adjacent-address      inet:ipv4-address
     |     |                       +--ro nexthop-address       inet:ipv4-address
     |     |                       +--ro nexthop-ip-address?   inet:ipv4-address
     |     |                       +--ro out-interface?        string
     |     +--rw address-family-vrfs
     |     |  +--rw address-family-vrf* [afi safi vrf-name]
     |     |     +--rw afi                         -> ../config/afi
     |     |     +--rw safi                        -> ../config/safi
     |     |     +--rw vrf-name                    -> ../config/vrf-name
     |     |     +--rw config
     |     |     |  +--rw enable-auto-summary?                  empty
     |     |     |  +--rw enable-additional-path-pic?           empty {feature-list:HAVE_BGP_PIC_CORE_EDGE}?
     |     |     |  +--rw enable-network-igp-sync?              empty
     |     |     |  +--rw enable-igp-sync?                      empty
     |     |     |  +--rw enable-bgp-implicit-null?             empty
     |     |     |  +--rw afi?                                  ipi-bgp-types:bgp_vrf_afi_type_t
     |     |     |  +--rw safi?                                 ipi-bgp-types:bgp_vrf_safi_type_t
     |     |     |  +--rw vrf-name?                             string
     |     |     |  +--rw multipath-relax?                      empty
     |     |     |  +--rw graceful-shutdown?                    empty
     |     |     |  +--rw graceful-shutdown-capable?            empty
     |     |     |  +--rw graceful-shutdown-local-preference?   uint32
     |     |     |  +--rw additional-paths-mode?                ipi-bgp-types:bgp_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--rw additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--rw additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--rw enable-pic?                           empty {feature-list:HAVE_BGP_PIC_CORE_EDGE}?
     |     |     +--ro state
     |     |     |  +--ro enable-auto-summary?                  empty
     |     |     |  +--ro enable-additional-path-pic?           empty {feature-list:HAVE_BGP_PIC_CORE_EDGE}?
     |     |     |  +--ro enable-network-igp-sync?              empty
     |     |     |  +--ro enable-igp-sync?                      empty
     |     |     |  +--ro enable-bgp-implicit-null?             empty
     |     |     |  +--ro afi?                                  ipi-bgp-types:bgp_vrf_afi_type_t
     |     |     |  +--ro safi?                                 ipi-bgp-types:bgp_vrf_safi_type_t
     |     |     |  +--ro vrf-name?                             string
     |     |     |  +--ro multipath-relax?                      empty
     |     |     |  +--ro graceful-shutdown?                    empty
     |     |     |  +--ro graceful-shutdown-capable?            empty
     |     |     |  +--ro graceful-shutdown-local-preference?   uint32
     |     |     |  +--ro additional-paths-mode?                ipi-bgp-types:bgp_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--ro additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--ro additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |  +--ro enable-pic?                           empty {feature-list:HAVE_BGP_PIC_CORE_EDGE}?
     |     |     +--rw confederation
     |     |     |  +--rw config
     |     |     |  |  +--rw identifier?       uint32
     |     |     |  |  +--rw peer-as-number*   uint32
     |     |     |  +--ro state
     |     |     |     +--ro identifier?       uint32
     |     |     |     +--ro peer-as-number*   uint32
     |     |     +--rw distances
     |     |     |  +--rw distance* [ebgp ibgp local]
     |     |     |     +--rw ebgp      -> ../config/ebgp
     |     |     |     +--rw ibgp      -> ../config/ibgp
     |     |     |     +--rw local     -> ../config/local
     |     |     |     +--rw config
     |     |     |     |  +--rw ebgp?    uint8
     |     |     |     |  +--rw ibgp?    uint8
     |     |     |     |  +--rw local?   uint8
     |     |     |     +--ro state
     |     |     |        +--ro ebgp?    uint8
     |     |     |        +--ro ibgp?    uint8
     |     |     |        +--ro local?   uint8
     |     |     +--rw maximum-paths
     |     |     |  +--rw config
     |     |     |  |  +--rw ebgp-max-path?    int32
     |     |     |  |  +--rw ibgp-max-path?    int32
     |     |     |  |  +--rw eibgp-max-path?   int32
     |     |     |  +--ro state
     |     |     |     +--ro ebgp-max-path?    int32
     |     |     |     +--ro ibgp-max-path?    int32
     |     |     |     +--ro eibgp-max-path?   int32
     |     |     +--rw table-map {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     |  +--rw config!
     |     |     |  |  +--rw map-name            string {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     |  |  +--rw table-map-filter?   boolean {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     |  +--ro state
     |     |     |     +--ro map-name            string {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     |     +--ro table-map-filter?   boolean {feature-list:HAVE_BGP_TABLE_MAP}?
     |     |     +--rw route-flap-dampenings
     |     |     |  +--rw route-flap-dampening* [enable-dampening]
     |     |     |     +--rw enable-dampening    -> ../config/enable-dampening
     |     |     |     +--rw config
     |     |     |     |  +--rw enable-dampening?      ipi-bgp-types:bgp_dampening_t
     |     |     |     |  +--rw reach-half-life?       uint32
     |     |     |     |  +--rw reuse-penalty?         uint32
     |     |     |     |  +--rw suppress-penalty?      uint32
     |     |     |     |  +--rw max-suppress-time?     uint32
     |     |     |     |  +--rw unreach-half-life?     uint32
     |     |     |     |  +--rw dampening-rmap-name?   string
     |     |     |     +--ro state
     |     |     |        +--ro enable-dampening?      ipi-bgp-types:bgp_dampening_t
     |     |     |        +--ro reach-half-life?       uint32
     |     |     |        +--ro reuse-penalty?         uint32
     |     |     |        +--ro suppress-penalty?      uint32
     |     |     |        +--ro max-suppress-time?     uint32
     |     |     |        +--ro unreach-half-life?     uint32
     |     |     |        +--ro dampening-rmap-name?   string
     |     |     +--rw route-redistribute-lists
     |     |     |  +--rw route-redistribute-list* [protocol-type]
     |     |     |     +--rw protocol-type    -> ../config/protocol-type
     |     |     |     +--rw config
     |     |     |     |  +--rw protocol-type?           ipi-bgp-types:bgp_redistribute_type_t
     |     |     |     |  +--rw redist-route-map-name?   string
     |     |     |     +--ro state
     |     |     |        +--ro protocol-type?           ipi-bgp-types:bgp_redistribute_type_t
     |     |     |        +--ro redist-route-map-name?   string
     |     |     +--rw bgp-srv6 {feature-list:HAVE_SRV6}?
     |     |     |  +--rw config!
     |     |     |  |  +--rw bgpSRv6enable    empty
     |     |     |  +--ro state
     |     |     |  |  +--ro bgpSRv6enable    empty
     |     |     |  +--rw sid-alloc-mode
     |     |     |     +--rw config
     |     |     |     |  +--rw sid-alloc-type?   ipi-bgp-types:bgp_sid_alloc_type_t
     |     |     |     +--ro state
     |     |     |        +--ro sid-alloc-type?   ipi-bgp-types:bgp_sid_alloc_type_t
     |     |     +--rw bgp-redistribute-ospfs
     |     |     |  +--rw bgp-redistribute-ospf* [ospf-instance-number]
     |     |     |     +--rw ospf-instance-number    -> ../config/ospf-instance-number
     |     |     |     +--rw config
     |     |     |     |  +--rw ospf-instance-number?          ipi-bgp-types:cml_ospf_area_id_t
     |     |     |     |  +--rw redistribute-ospf-route-map?   string
     |     |     |     +--ro state
     |     |     |        +--ro ospf-instance-number?          ipi-bgp-types:cml_ospf_area_id_t
     |     |     |        +--ro redistribute-ospf-route-map?   string
     |     |     +--rw vrf-peers
     |     |     |  +--rw vrf-peer* [peer-address]
     |     |     |     +--rw peer-address               -> ../config/peer-address
     |     |     |     +--ro peer-adj-out-route* [network-address]
     |     |     |     |  +--ro network-address    -> ../state/network-address
     |     |     |     |  +--ro next-hop* [next-hop-address]
     |     |     |     |  |  +--ro next-hop-address    -> ../state/next-hop-address
     |     |     |     |  |  +--ro state
     |     |     |     |  |     +--ro next-hop-address?                ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro peer-network-weight?             uint32
     |     |     |     |  |     +--ro flap-time-reuse-list?            string
     |     |     |     |  |     +--ro flap-record-duration?            string
     |     |     |     |  |     +--ro damp-time-to-reuse?              string
     |     |     |     |  |     +--ro bgp-med-value?                   uint32
     |     |     |     |  |     +--ro bgp-as-path-string*              cml-data-types:cml_line_t
     |     |     |     |  |     +--ro bgp-as-path-4-byte-string*       string
     |     |     |     |  |     +--ro bgp-as-path-4-byte-origin?       ipi-bgp-types:bgp_origin_t
     |     |     |     |  |     +--ro ibgp-metric-route?               int32
     |     |     |     |  |     +--ro aggregate-as-route?              int32
     |     |     |     |  |     +--ro aggregator-address-route?        ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro network-remote-address-route?    ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro originator-id-route?             ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-peer-address?              ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-local-preference?          uint32
     |     |     |     |  |     +--ro route-prefix-label?              uint32
     |     |     |     |  |     +--ro route-community-string?          string
     |     |     |     |  |     +--ro cluster-list-route*              ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-penalty?                   int32
     |     |     |     |  |     +--ro route-flap-count?                int32
     |     |     |     |  |     +--ro last-update-route?               yang:date-and-time
     |     |     |     |  |     +--ro reflector-client-route?          boolean
     |     |     |     |  |     +--ro route-dampening-active?          boolean
     |     |     |     |  |     +--ro history-route?                   boolean
     |     |     |     |  |     +--ro nexthop-valid-route?             boolean
     |     |     |     |  |     +--ro med-flag-type-route?             boolean
     |     |     |     |  |     +--ro valid-route?                     boolean
     |     |     |     |  |     +--ro stale-route?                     boolean
     |     |     |     |  |     +--ro route-type?                      ipi-bgp-types:bgp_ri_type_t
     |     |     |     |  |     +--ro ecmp-multi-candidate-route?      boolean
     |     |     |     |  |     +--ro multi-installed-route?           boolean
     |     |     |     |  |     +--ro route-synchronized-flag-route?   boolean
     |     |     |     |  |     +--ro atomic-aggregate-route?          boolean
     |     |     |     |  |     +--ro selected-route?                  boolean
     |     |     |     |  |     +--ro bgp-tx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  |     +--ro bgp-rx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  |     +--ro ipv4-multicast-capability?       string
     |     |     |     |  |     +--ro vpnv4-unicast-capability?        string
     |     |     |     |  |     +--ro rtfilter-unicast-capability?     string
     |     |     |     |  |     +--ro l2vpn-evpn-capability?           string
     |     |     |     |  |     +--ro ipv6-unicast-capability?         string
     |     |     |     |  |     +--ro ipv6-multicast-capability?       string
     |     |     |     |  |     +--ro ipv6-label-unicast-capability?   string
     |     |     |     |  |     +--ro in-label?                        uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |  |     +--ro out-label?                       uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |  +--ro state
     |     |     |     |     +--ro network-address?   ipi-bgp-types:bgp_ip_network_t
     |     |     |     +--ro peer-adj-in-route* [network-address]
     |     |     |     |  +--ro network-address    -> ../state/network-address
     |     |     |     |  +--ro next-hop* [next-hop-address]
     |     |     |     |  |  +--ro next-hop-address    -> ../state/next-hop-address
     |     |     |     |  |  +--ro state
     |     |     |     |  |     +--ro next-hop-address?                ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro peer-network-weight?             uint32
     |     |     |     |  |     +--ro flap-time-reuse-list?            string
     |     |     |     |  |     +--ro flap-record-duration?            string
     |     |     |     |  |     +--ro damp-time-to-reuse?              string
     |     |     |     |  |     +--ro bgp-med-value?                   uint32
     |     |     |     |  |     +--ro bgp-as-path-string*              cml-data-types:cml_line_t
     |     |     |     |  |     +--ro bgp-as-path-4-byte-string*       string
     |     |     |     |  |     +--ro bgp-as-path-4-byte-origin?       ipi-bgp-types:bgp_origin_t
     |     |     |     |  |     +--ro ibgp-metric-route?               int32
     |     |     |     |  |     +--ro aggregate-as-route?              int32
     |     |     |     |  |     +--ro aggregator-address-route?        ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro network-remote-address-route?    ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro originator-id-route?             ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-peer-address?              ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-local-preference?          uint32
     |     |     |     |  |     +--ro route-prefix-label?              uint32
     |     |     |     |  |     +--ro route-community-string?          string
     |     |     |     |  |     +--ro cluster-list-route*              ipi-bgp-types:bgp_hostname_t
     |     |     |     |  |     +--ro route-penalty?                   int32
     |     |     |     |  |     +--ro route-flap-count?                int32
     |     |     |     |  |     +--ro last-update-route?               yang:date-and-time
     |     |     |     |  |     +--ro reflector-client-route?          boolean
     |     |     |     |  |     +--ro route-dampening-active?          boolean
     |     |     |     |  |     +--ro history-route?                   boolean
     |     |     |     |  |     +--ro nexthop-valid-route?             boolean
     |     |     |     |  |     +--ro med-flag-type-route?             boolean
     |     |     |     |  |     +--ro valid-route?                     boolean
     |     |     |     |  |     +--ro stale-route?                     boolean
     |     |     |     |  |     +--ro route-type?                      ipi-bgp-types:bgp_ri_type_t
     |     |     |     |  |     +--ro ecmp-multi-candidate-route?      boolean
     |     |     |     |  |     +--ro multi-installed-route?           boolean
     |     |     |     |  |     +--ro route-synchronized-flag-route?   boolean
     |     |     |     |  |     +--ro atomic-aggregate-route?          boolean
     |     |     |     |  |     +--ro selected-route?                  boolean
     |     |     |     |  |     +--ro bgp-tx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  |     +--ro bgp-rx-path-id?                  int16 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  |     +--ro ipv4-multicast-capability?       string
     |     |     |     |  |     +--ro vpnv4-unicast-capability?        string
     |     |     |     |  |     +--ro rtfilter-unicast-capability?     string
     |     |     |     |  |     +--ro l2vpn-evpn-capability?           string
     |     |     |     |  |     +--ro ipv6-unicast-capability?         string
     |     |     |     |  |     +--ro ipv6-multicast-capability?       string
     |     |     |     |  |     +--ro ipv6-label-unicast-capability?   string
     |     |     |     |  |     +--ro in-label?                        uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |  |     +--ro out-label?                       uint32 {feature-list:HAVE_BGP_LU}?
     |     |     |     |  +--ro state
     |     |     |     |     +--ro network-address?   ipi-bgp-types:bgp_ip_network_t
     |     |     |     +--rw config
     |     |     |     |  +--rw peer-address?                         inet:ip-address
     |     |     |     |  +--rw peer-as?                              uint32
     |     |     |     |  +--rw source-identifier?                    string
     |     |     |     |  +--rw bgp-version?                          uint8
     |     |     |     |  +--rw peer-connection-interval?             uint32
     |     |     |     |  +--rw enforce-multihop?                     empty
     |     |     |     |  +--rw peer-shutdown?                        empty
     |     |     |     |  +--rw peer-shutdown-description?            cml-data-types:cml_line_t
     |     |     |     |  +--rw neighbor-passive?                     empty
     |     |     |     |  +--rw disable-capability-negotiation?       empty
     |     |     |     |  +--rw enable-dynamic-capability?            empty
     |     |     |     |  +--rw min-route-advertisement-interval?     uint32
     |     |     |     |  +--rw peer-as-origin-interval?              uint32
     |     |     |     |  +--rw neighbor-as-override?                 empty
     |     |     |     |  +--rw peer-interface-name?                  string {feature-list:HAVE_VRF}?
     |     |     |     |  +--rw peer-description?                     cml-data-types:cml_line_t
     |     |     |     |  +--rw peer-restart-time?                    uint32 {feature-list:HAVE_RESTART,feature-list:HAVE_VRF}?
     |     |     |     |  +--rw graceful-shut?                        empty
     |     |     |     |  +--rw graceful-shut-timer?                  uint32
     |     |     |     |  +--rw enable-peer-bfd?                      empty {feature-list:HAVE_BFD}?
     |     |     |     |  +--rw enable-peer-bfd-multihop?             empty {feature-list:HAVE_BFD}?
     |     |     |     |  +--rw bgp-port?                             uint16
     |     |     |     |  +--rw activate?                             empty
     |     |     |     |  +--rw de-activate?                          empty
     |     |     |     |  +--rw default-peer-route-map-name?          empty
     |     |     |     |  +--rw peer-route-map-orig-name?             string
     |     |     |     |  +--rw weight?                               uint16
     |     |     |     |  +--rw flowspec-validation-disable?          empty {feature-list:HAVE_BGP_FLOWSPEC}?
     |     |     |     |  +--rw peer-route-reflector?                 empty
     |     |     |     |  +--rw peer-remove-private-as?               empty
     |     |     |     |  +--rw no-send-community?                    empty
     |     |     |     |  +--rw no-send-community-type?               ipi-bgp-types:bgp_send_commu_type_t
     |     |     |     |  +--rw neighbor-attribute-unchanged?         ipi-bgp-types:bgp_attribute_unchanged_type_t
     |     |     |     |  +--rw orf-prefix-capability?                ipi-bgp-types:bgp_orf_prefix_type_t
     |     |     |     |  +--rw peer-allow-ebgp-vpn?                  empty {feature-list:HAVE_VRF}?
     |     |     |     |  +--rw allow-as-number?                      uint32
     |     |     |     |  +--rw capability-graceful-restart?          empty
     |     |     |     |  +--rw mapped-peer-group-tag-af?             string
     |     |     |     |  +--rw unsuppress-route-map-name?            string
     |     |     |     |  +--rw enable-ext-opt-param-len?             empty
     |     |     |     |  +--rw additional-paths-mode?                ipi-bgp-types:bgp_peer_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--rw additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--rw additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--rw tcp-adjust-mss?                       uint16
     |     |     |     |  +--rw site-origin-identifier?               string {feature-list:HAVE_VRF}?
     |     |     |     +--ro state
     |     |     |     |  +--ro counters
     |     |     |     |  |  +--ro keepalive-in-messages?           int32
     |     |     |     |  |  +--ro keepalive-out-messages?          int32
     |     |     |     |  |  +--ro open-messages-in?                int32
     |     |     |     |  |  +--ro open-messages-out?               int32
     |     |     |     |  |  +--ro as-path-count?                   int32
     |     |     |     |  |  +--ro as-path-extended-count?          int32
     |     |     |     |  |  +--ro received-packet-count?           int32
     |     |     |     |  |  +--ro packet-in-queue?                 int32
     |     |     |     |  |  +--ro packet-out-queue?                int32
     |     |     |     |  |  +--ro sent-packet-count?               int32
     |     |     |     |  |  +--ro refresh-received-packet-count?   int32
     |     |     |     |  |  +--ro refresh-sent-packet-count?       int32
     |     |     |     |  |  +--ro notification-in?                 int32
     |     |     |     |  |  +--ro notification-out?                int32
     |     |     |     |  |  +--ro update-message-in?               int32
     |     |     |     |  |  +--ro update-message-out?              int32
     |     |     |     |  +--ro peer-address?                           inet:ip-address
     |     |     |     |  +--ro peer-as?                                uint32
     |     |     |     |  +--ro source-identifier?                      string
     |     |     |     |  +--ro bgp-version?                            uint8
     |     |     |     |  +--ro peer-connection-interval?               uint32
     |     |     |     |  +--ro enforce-multihop?                       empty
     |     |     |     |  +--ro peer-shutdown?                          empty
     |     |     |     |  +--ro peer-shutdown-description?              cml-data-types:cml_line_t
     |     |     |     |  +--ro neighbor-passive?                       empty
     |     |     |     |  +--ro disable-capability-negotiation?         empty
     |     |     |     |  +--ro enable-dynamic-capability?              empty
     |     |     |     |  +--ro min-route-advertisement-interval?       uint32
     |     |     |     |  +--ro peer-as-origin-interval?                uint32
     |     |     |     |  +--ro neighbor-as-override?                   empty
     |     |     |     |  +--ro peer-interface-name?                    string {feature-list:HAVE_VRF}?
     |     |     |     |  +--ro peer-description?                       cml-data-types:cml_line_t
     |     |     |     |  +--ro peer-restart-time?                      uint32 {feature-list:HAVE_RESTART,feature-list:HAVE_VRF}?
     |     |     |     |  +--ro graceful-shut?                          empty
     |     |     |     |  +--ro graceful-shut-timer?                    uint32
     |     |     |     |  +--ro enable-peer-bfd?                        empty {feature-list:HAVE_BFD}?
     |     |     |     |  +--ro enable-peer-bfd-multihop?               empty {feature-list:HAVE_BFD}?
     |     |     |     |  +--ro bgp-port?                               uint16
     |     |     |     |  +--ro activate?                               empty
     |     |     |     |  +--ro de-activate?                            empty
     |     |     |     |  +--ro default-peer-route-map-name?            empty
     |     |     |     |  +--ro peer-route-map-orig-name?               string
     |     |     |     |  +--ro weight?                                 uint16
     |     |     |     |  +--ro flowspec-validation-disable?            empty {feature-list:HAVE_BGP_FLOWSPEC}?
     |     |     |     |  +--ro peer-route-reflector?                   empty
     |     |     |     |  +--ro peer-remove-private-as?                 empty
     |     |     |     |  +--ro no-send-community?                      empty
     |     |     |     |  +--ro no-send-community-type?                 ipi-bgp-types:bgp_send_commu_type_t
     |     |     |     |  +--ro neighbor-attribute-unchanged?           ipi-bgp-types:bgp_attribute_unchanged_type_t
     |     |     |     |  +--ro orf-prefix-capability?                  ipi-bgp-types:bgp_orf_prefix_type_t
     |     |     |     |  +--ro peer-allow-ebgp-vpn?                    empty {feature-list:HAVE_VRF}?
     |     |     |     |  +--ro allow-as-number?                        uint32
     |     |     |     |  +--ro capability-graceful-restart?            empty
     |     |     |     |  +--ro mapped-peer-group-tag-af?               string
     |     |     |     |  +--ro unsuppress-route-map-name?              string
     |     |     |     |  +--ro enable-ext-opt-param-len?               empty
     |     |     |     |  +--ro additional-paths-mode?                  ipi-bgp-types:bgp_peer_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro additional-path-select-all?             empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro additional-paths-best-select-count?     uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro tcp-adjust-mss?                         uint16
     |     |     |     |  +--ro site-origin-identifier?                 string {feature-list:HAVE_VRF}?
     |     |     |     |  +--ro connection-established-count?           int32
     |     |     |     |  +--ro error-notify-sent?                      boolean
     |     |     |     |  +--ro notify-code-string?                     cml-data-types:cml_line_t
     |     |     |     |  +--ro bgp-peer-state?                         ipi-bgp-types:bgp_peer_status_t
     |     |     |     |  +--ro max-paths-ibgp?                         int16
     |     |     |     |  +--ro configured-max-paths-ebgp?              int16
     |     |     |     |  +--ro max-paths-ebgp?                         int16
     |     |     |     |  +--ro configured-max-paths-ibgp?              int16
     |     |     |     |  +--ro max-paths-eibgp?                        int16
     |     |     |     |  +--ro configured-max-paths-eibgp?             int16
     |     |     |     |  +--ro community-count?                        int32
     |     |     |     |  +--ro confederation-id-check?                 boolean
     |     |     |     |  +--ro peer-and-extended-asn-capability?       ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro address-family-capability?              ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro ipv6-next-hop-global?                   inet:ipv6-address
     |     |     |     |  +--ro ipv6-next-hop-local?                    inet:ipv6-address
     |     |     |     |  +--ro remote-port?                            int32
     |     |     |     |  +--ro remote-address?                         ipi-bgp-types:bgp_hostname_t
     |     |     |     |  +--ro local-host?                             ipi-bgp-types:bgp_hostname_t
     |     |     |     |  +--ro ipv4-next-hop?                          inet:ipv4-address
     |     |     |     |  +--ro local-port?                             int32
     |     |     |     |  +--ro default-information-originate?          boolean
     |     |     |     |  +--ro inbound-path-policy?                    boolean
     |     |     |     |  +--ro outbound-path-policy?                   boolean
     |     |     |     |  +--ro default-originate-information-sent?     cml-data-types:cml_line_t
     |     |     |     |  +--ro graceful-restart?                       ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro address-family-dependent-capability?    boolean
     |     |     |     |  +--ro peer-address-family-table-version?      int32
     |     |     |     |  +--ro address-family-table-version?           int32
     |     |     |     |  +--ro forward-status-preserve?                string
     |     |     |     |  +--ro orf-type-prefix?                        cml-data-types:cml_line_t
     |     |     |     |  +--ro orf-type-prefix-send-mode?              ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro orf-type-prefix-receive-mode?           ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro orf-type-prefix-old?                    cml-data-types:cml_line_t
     |     |     |     |  +--ro orf-type-prefix-send-mode-old?          ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro orf-type-prefix-receive-mode-old?       ipi-bgp-types:bgp_adv_rcv_type_t
     |     |     |     |  +--ro prefix-count?                           int32
     |     |     |     |  +--ro send-prefix-count?                      int32
     |     |     |     |  +--ro flag-shut-down?                         ipi-bgp-types:bgp_peerflag_shutdown_t
     |     |     |     |  +--ro count?                                  int32
     |     |     |     |  +--ro notify-info?                            boolean
     |     |     |     |  +--ro notify-last-reset-time?                 string
     |     |     |     |  +--ro connection-type?                        ipi-bgp-types:bgp_connection_type_t
     |     |     |     |  +--ro next-connection-timer?                  int32
     |     |     |     |  +--ro connection-dropped-count?               int32
     |     |     |     |  +--ro graceful-restart-status?                string
     |     |     |     |  +--ro graceful-restart-time?                  int32
     |     |     |     |  +--ro bgp-established-up-time?                string
     |     |     |     |  +--ro last-read-time?                         string
     |     |     |     |  +--ro link-type?                              ipi-bgp-types:bgp_link_type_t
     |     |     |     |  +--ro ebgp-hop-away-count?                    int32
     |     |     |     |  +--ro router-id?                              inet:ipv4-address
     |     |     |     |  +--ro advertisement-interval?                 int32
     |     |     |     |  +--ro calculated-hold-time?                   int32
     |     |     |     |  +--ro calculated-keepalive?                   int32
     |     |     |     |  +--ro dynamic-capability?                     cml-data-types:cml_line_t
     |     |     |     |  +--ro route-refresh-capability?               ipi-bgp-types:bgp_route_refresh_cap_type_t
     |     |     |     |  +--ro no-interface-binding?                   boolean
     |     |     |     |  +--ro additional-path-receive-capability?     string {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro additional-path-send-capability?        string {feature-list:HAVE_BGP_ADD_PATH}?
     |     |     |     |  +--ro capability-ipv4-unicast?                ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-label-unicast?               ipi-bgp-types:bgp_capability_type_t {feature-list:HAVE_BGP_LU}?
     |     |     |     |  +--ro capability-ipv4-multicast?              ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-vpnv4-unicast?               ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-vpnv6-unicast?               ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-rtfilter-unicast?            ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-l2vpn-evpn?                  ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-ipv6-unicast?                ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-ipv6-multicast?              ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro capability-ipv6-label-unicast?          ipi-bgp-types:bgp_capability_type_t
     |     |     |     |  +--ro evpn-ad-route-count?                    uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     |  +--ro evpn-mac-ip-route-count?                uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     |  +--ro evpn-inclusive-multicast-route-count?   uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     |  +--ro evpn-segment-route-count?               uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     |  +--ro evpn-ip-prefix-route-count?             uint32 {feature-list:HAVE_BGP_EVPN}?
     |     |     |     +--rw timers
     |     |     |     |  +--rw config!
     |     |     |     |  |  +--rw keep-alive    uint16
     |     |     |     |  |  +--rw hold-time     uint16
     |     |     |     |  +--ro state
     |     |     |     |     +--ro keep-alive    uint16
     |     |     |     |     +--ro hold-time     uint16
     |     |     |     +--rw ebgp-multihop
     |     |     |     |  +--rw config!
     |     |     |     |  |  +--rw maximum-hop-count?   uint8
     |     |     |     |  |  +--rw enabled              empty
     |     |     |     |  +--ro state
     |     |     |     |     +--ro maximum-hop-count?   uint8
     |     |     |     |     +--ro enabled              empty
     |     |     |     +--rw maximum-prefixes
     |     |     |     |  +--rw maximum-prefix* [prefix-count]
     |     |     |     |     +--rw prefix-count    -> ../config/prefix-count
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw prefix-count?             uint32
     |     |     |     |     |  +--rw stop-update?              empty
     |     |     |     |     |  +--rw maximum-prefix-warning?   empty
     |     |     |     |     |  +--rw threshold-percentage?     uint8
     |     |     |     |     |  +--rw warning-only?             empty
     |     |     |     |     +--ro state
     |     |     |     |        +--ro prefix-count?             uint32
     |     |     |     |        +--ro stop-update?              empty
     |     |     |     |        +--ro maximum-prefix-warning?   empty
     |     |     |     |        +--ro threshold-percentage?     uint8
     |     |     |     |        +--ro warning-only?             empty
     |     |     |     +--rw bgp-passwords
     |     |     |     |  +--rw bgp-password* [password]
     |     |     |     |     +--rw password    -> ../config/password
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw password?           ipi-bgp-types:bgp_md5_password_t {feature-list:HAVE_TCP_MD5SIG}?
     |     |     |     |     |  +--rw auth-key-encrypt    ipi-bgp-types:bgp_md5_t
     |     |     |     |     +--ro state
     |     |     |     |        +--ro password?           ipi-bgp-types:bgp_md5_password_t {feature-list:HAVE_TCP_MD5SIG}?
     |     |     |     |        +--ro auth-key-encrypt    ipi-bgp-types:bgp_md5_t
     |     |     |     +--rw distribute-list-filters
     |     |     |     |  +--rw distribute-list-filter* [filter-direction]
     |     |     |     |     +--rw filter-direction    -> ../config/filter-direction
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw access-list-identifier    string
     |     |     |     |     |  +--rw filter-direction?         ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     |     +--ro state
     |     |     |     |        +--ro access-list-identifier    string
     |     |     |     |        +--ro filter-direction?         ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     +--rw as-list-filters
     |     |     |     |  +--rw as-list-filter* [as-list-direction]
     |     |     |     |     +--rw as-list-direction    -> ../config/as-list-direction
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw as-access-list-identifier    string
     |     |     |     |     |  +--rw as-list-direction?           ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     |     +--ro state
     |     |     |     |        +--ro as-access-list-identifier    string
     |     |     |     |        +--ro as-list-direction?           ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     +--rw prefix-list-filters
     |     |     |     |  +--rw prefix-list-filter* [prefix-filter-direction]
     |     |     |     |     +--rw prefix-filter-direction    -> ../config/prefix-filter-direction
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw prefix-list-name           string
     |     |     |     |     |  +--rw prefix-filter-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     |     +--ro state
     |     |     |     |        +--ro prefix-list-name           string
     |     |     |     |        +--ro prefix-filter-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     +--rw route-map-filters
     |     |     |     |  +--rw route-map-filter* [route-map-direction]
     |     |     |     |     +--rw route-map-direction    -> ../config/route-map-direction
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw route-map-name         string
     |     |     |     |     |  +--rw route-map-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     |     +--ro state
     |     |     |     |        +--ro route-map-name         string
     |     |     |     |        +--ro route-map-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |     |     +--rw local-as
     |     |     |     |  +--rw local-as-list* [peer-local-as]
     |     |     |     |     +--rw peer-local-as    -> ../config/peer-local-as
     |     |     |     |     +--rw config
     |     |     |     |     |  +--rw peer-local-as?         uint32
     |     |     |     |     |  +--rw no-prepend-local-as?   empty
     |     |     |     |     |  +--rw replace-local-as?      empty
     |     |     |     |     +--ro state
     |     |     |     |        +--ro peer-local-as?         uint32
     |     |     |     |        +--ro no-prepend-local-as?   empty
     |     |     |     |        +--ro replace-local-as?      empty
     |     |     |     +--ro outbound-route-filter
     |     |     |     |  +--ro state
     |     |     |     |     +--ro orf-prefix-string?   boolean
     |     |     |     |     +--ro orf-prefix-send?     string
     |     |     |     |     +--ro orf-prefix-count?    string
     |     |     |     |     +--ro orf-wait-refresh?    boolean
     |     |     |     +--ro peer-prefix
     |     |     |     |  +--ro state
     |     |     |     |     +--ro entry-sequence?     int32
     |     |     |     |     +--ro entry-type?         ipi-bgp-types:bgp_prefix_entry_type_t
     |     |     |     |     +--ro entry-max-length?   int32
     |     |     |     |     +--ro entry-min-length?   int32
     |     |     |     |     +--ro prefix-length?      int32
     |     |     |     +--ro peer-index
     |     |     |        +--ro state
     |     |     |           +--ro peer-index?   int32
     |     |     |           +--ro offset?       int32
     |     |     |           +--ro mask?         string
     |     |     +--rw network-lists
     |     |     |  +--rw network-list* [local-network-prefix]
     |     |     |     +--rw local-network-prefix    -> ../config/local-network-prefix
     |     |     |     +--rw config
     |     |     |     |  +--rw local-network-prefix?   ipi-bgp-types:bgp_ip_network_t
     |     |     |     |  +--rw network-rmap-name?      string
     |     |     |     |  +--rw backdoor?               empty
     |     |     |     +--ro state
     |     |     |        +--ro local-network-prefix?                ipi-bgp-types:bgp_ip_network_t
     |     |     |        +--ro network-rmap-name?                   string
     |     |     |        +--ro backdoor?                            empty
     |     |     |        +--ro network-path-route-count?            int32
     |     |     |        +--ro no-advertise-route?                  string
     |     |     |        +--ro no-export-route?                     boolean
     |     |     |        +--ro local-as-route?                      boolean
     |     |     |        +--ro suppress-route?                      boolean
     |     |     |        +--ro network-best-path-route-count?       int32
     |     |     |        +--ro ip-routing-table?                    string
     |     |     |        +--ro advertised-non-peer-group-address*   ipi-bgp-types:bgp_hostname_t
     |     |     |        +--ro advertised-peer-group-name-route*    string
     |     |     |        +--ro advertised-any-peer?                 boolean
     |     |     |        +--ro route-distinguisher-string?          string {feature-list:HAVE_MPLS}?
     |     |     +--rw peer-groups
     |     |        +--rw peer-group* [peer-group-tag]
     |     |           +--rw peer-group-tag             -> ../config/peer-group-tag
     |     |           +--rw config
     |     |           |  +--rw bgp-port?                             uint16
     |     |           |  +--rw activate?                             empty
     |     |           |  +--rw default-peer-route-map-name?          empty
     |     |           |  +--rw peer-route-map-orig-name?             string
     |     |           |  +--rw weight?                               uint16
     |     |           |  +--rw flowspec-validation-disable?          empty {feature-list:HAVE_BGP_FLOWSPEC}?
     |     |           |  +--rw peer-route-reflector?                 empty
     |     |           |  +--rw peer-remove-private-as?               empty
     |     |           |  +--rw no-send-community?                    empty
     |     |           |  +--rw no-send-community-type?               ipi-bgp-types:bgp_send_commu_type_t
     |     |           |  +--rw neighbor-attribute-unchanged?         ipi-bgp-types:bgp_attribute_unchanged_type_t
     |     |           |  +--rw orf-prefix-capability?                ipi-bgp-types:bgp_orf_prefix_type_t
     |     |           |  +--rw peer-allow-ebgp-vpn?                  empty {feature-list:HAVE_VRF}?
     |     |           |  +--rw allow-as-number?                      uint32
     |     |           |  +--rw capability-graceful-restart?          empty
     |     |           |  +--rw unsuppress-route-map-name?            string
     |     |           |  +--rw additional-paths-mode?                ipi-bgp-types:bgp_peer_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--rw additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--rw additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--rw site-origin-identifier?               string {feature-list:HAVE_VRF}?
     |     |           |  +--rw peer-group-range                      ipi-bgp-types:bgp_peer_group_type_t
     |     |           |  +--rw group-limit?                          uint8
     |     |           |  +--rw peer-group-tag?                       string
     |     |           |  +--rw peer-as?                              uint32
     |     |           |  +--rw source-identifier?                    string
     |     |           |  +--rw bgp-version?                          uint8
     |     |           |  +--rw peer-connection-interval?             uint32
     |     |           |  +--rw enforce-multihop?                     empty
     |     |           |  +--rw peer-shutdown?                        empty
     |     |           |  +--rw peer-shutdown-description?            cml-data-types:cml_line_t
     |     |           |  +--rw neighbor-passive?                     empty
     |     |           |  +--rw disable-capability-negotiation?       empty
     |     |           |  +--rw connection-retry-interval?            int32
     |     |           |  +--rw enable-dynamic-capability?            empty
     |     |           |  +--rw min-route-advertisement-interval?     uint32
     |     |           |  +--rw peer-as-origin-interval?              uint32
     |     |           |  +--rw neighbor-as-override?                 empty
     |     |           |  +--rw peer-description?                     cml-data-types:cml_line_t
     |     |           |  +--rw peer-restart-time?                    uint32 {feature-list:HAVE_RESTART,feature-list:HAVE_VRF}?
     |     |           |  +--rw graceful-shut?                        empty
     |     |           |  +--rw graceful-shut-timer?                  uint32
     |     |           |  +--rw enable-peer-bfd?                      empty {feature-list:HAVE_BFD}?
     |     |           |  +--rw enable-peer-bfd-multihop?             empty {feature-list:HAVE_BFD}?
     |     |           |  +--rw enable-ext-opt-param-len?             empty
     |     |           |  +--rw tcp-adjust-mss?                       uint16
     |     |           +--ro state
     |     |           |  +--ro bgp-port?                             uint16
     |     |           |  +--ro activate?                             empty
     |     |           |  +--ro default-peer-route-map-name?          empty
     |     |           |  +--ro peer-route-map-orig-name?             string
     |     |           |  +--ro weight?                               uint16
     |     |           |  +--ro flowspec-validation-disable?          empty {feature-list:HAVE_BGP_FLOWSPEC}?
     |     |           |  +--ro peer-route-reflector?                 empty
     |     |           |  +--ro peer-remove-private-as?               empty
     |     |           |  +--ro no-send-community?                    empty
     |     |           |  +--ro no-send-community-type?               ipi-bgp-types:bgp_send_commu_type_t
     |     |           |  +--ro neighbor-attribute-unchanged?         ipi-bgp-types:bgp_attribute_unchanged_type_t
     |     |           |  +--ro orf-prefix-capability?                ipi-bgp-types:bgp_orf_prefix_type_t
     |     |           |  +--ro peer-allow-ebgp-vpn?                  empty {feature-list:HAVE_VRF}?
     |     |           |  +--ro allow-as-number?                      uint32
     |     |           |  +--ro capability-graceful-restart?          empty
     |     |           |  +--ro unsuppress-route-map-name?            string
     |     |           |  +--ro additional-paths-mode?                ipi-bgp-types:bgp_peer_additional_path_type_t {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--ro additional-path-select-all?           empty {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--ro additional-paths-best-select-count?   uint8 {feature-list:HAVE_BGP_ADD_PATH}?
     |     |           |  +--ro site-origin-identifier?               string {feature-list:HAVE_VRF}?
     |     |           |  +--ro peer-group-range                      ipi-bgp-types:bgp_peer_group_type_t
     |     |           |  +--ro group-limit?                          uint8
     |     |           |  +--ro peer-group-tag?                       string
     |     |           |  +--ro peer-as?                              uint32
     |     |           |  +--ro source-identifier?                    string
     |     |           |  +--ro bgp-version?                          uint8
     |     |           |  +--ro peer-connection-interval?             uint32
     |     |           |  +--ro enforce-multihop?                     empty
     |     |           |  +--ro peer-shutdown?                        empty
     |     |           |  +--ro peer-shutdown-description?            cml-data-types:cml_line_t
     |     |           |  +--ro neighbor-passive?                     empty
     |     |           |  +--ro disable-capability-negotiation?       empty
     |     |           |  +--ro connection-retry-interval?            int32
     |     |           |  +--ro enable-dynamic-capability?            empty
     |     |           |  +--ro min-route-advertisement-interval?     uint32
     |     |           |  +--ro peer-as-origin-interval?              uint32
     |     |           |  +--ro neighbor-as-override?                 empty
     |     |           |  +--ro peer-description?                     cml-data-types:cml_line_t
     |     |           |  +--ro peer-restart-time?                    uint32 {feature-list:HAVE_RESTART,feature-list:HAVE_VRF}?
     |     |           |  +--ro graceful-shut?                        empty
     |     |           |  +--ro graceful-shut-timer?                  uint32
     |     |           |  +--ro enable-peer-bfd?                      empty {feature-list:HAVE_BFD}?
     |     |           |  +--ro enable-peer-bfd-multihop?             empty {feature-list:HAVE_BFD}?
     |     |           |  +--ro enable-ext-opt-param-len?             empty
     |     |           |  +--ro tcp-adjust-mss?                       uint16
     |     |           +--rw optional-as-lists
     |     |           |  +--rw optional-as-list* [optional-as]
     |     |           |     +--rw optional-as    -> ../config/optional-as
     |     |           |     +--rw config
     |     |           |     |  +--rw optional-as?   uint32
     |     |           |     +--ro state
     |     |           |        +--ro optional-as?   uint32
     |     |           +--rw bgp-passwords
     |     |           |  +--rw bgp-password* [password]
     |     |           |     +--rw password    -> ../config/password
     |     |           |     +--rw config
     |     |           |     |  +--rw password?           ipi-bgp-types:bgp_md5_password_t {feature-list:HAVE_TCP_MD5SIG}?
     |     |           |     |  +--rw auth-key-encrypt    ipi-bgp-types:bgp_md5_t
     |     |           |     +--ro state
     |     |           |        +--ro password?           ipi-bgp-types:bgp_md5_password_t {feature-list:HAVE_TCP_MD5SIG}?
     |     |           |        +--ro auth-key-encrypt    ipi-bgp-types:bgp_md5_t
     |     |           +--rw timers
     |     |           |  +--rw config!
     |     |           |  |  +--rw keep-alive    uint16
     |     |           |  |  +--rw hold-time     uint16
     |     |           |  +--ro state
     |     |           |     +--ro keep-alive    uint16
     |     |           |     +--ro hold-time     uint16
     |     |           +--rw local-as
     |     |           |  +--rw local-as-list* [peer-local-as]
     |     |           |     +--rw peer-local-as    -> ../config/peer-local-as
     |     |           |     +--rw config
     |     |           |     |  +--rw peer-local-as?         uint32
     |     |           |     |  +--rw no-prepend-local-as?   empty
     |     |           |     |  +--rw replace-local-as?      empty
     |     |           |     +--ro state
     |     |           |        +--ro peer-local-as?         uint32
     |     |           |        +--ro no-prepend-local-as?   empty
     |     |           |        +--ro replace-local-as?      empty
     |     |           +--rw ebgp-multihop
     |     |           |  +--rw config!
     |     |           |  |  +--rw maximum-hop-count?   uint8
     |     |           |  |  +--rw enabled              empty
     |     |           |  +--ro state
     |     |           |     +--ro maximum-hop-count?   uint8
     |     |           |     +--ro enabled              empty
     |     |           +--rw maximum-prefixes
     |     |           |  +--rw maximum-prefix* [prefix-count]
     |     |           |     +--rw prefix-count    -> ../config/prefix-count
     |     |           |     +--rw config
     |     |           |     |  +--rw prefix-count?             uint32
     |     |           |     |  +--rw stop-update?              empty
     |     |           |     |  +--rw maximum-prefix-warning?   empty
     |     |           |     |  +--rw threshold-percentage?     uint8
     |     |           |     |  +--rw warning-only?             empty
     |     |           |     +--ro state
     |     |           |        +--ro prefix-count?             uint32
     |     |           |        +--ro stop-update?              empty
     |     |           |        +--ro maximum-prefix-warning?   empty
     |     |           |        +--ro threshold-percentage?     uint8
     |     |           |        +--ro warning-only?             empty
     |     |           +--rw distribute-list-filters
     |     |           |  +--rw distribute-list-filter* [filter-direction]
     |     |           |     +--rw filter-direction    -> ../config/filter-direction
     |     |           |     +--rw config
     |     |           |     |  +--rw access-list-identifier    string
     |     |           |     |  +--rw filter-direction?         ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           |     +--ro state
     |     |           |        +--ro access-list-identifier    string
     |     |           |        +--ro filter-direction?         ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           +--rw as-list-filters
     |     |           |  +--rw as-list-filter* [as-list-direction]
     |     |           |     +--rw as-list-direction    -> ../config/as-list-direction
     |     |           |     +--rw config
     |     |           |     |  +--rw as-access-list-identifier    string
     |     |           |     |  +--rw as-list-direction?           ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           |     +--ro state
     |     |           |        +--ro as-access-list-identifier    string
     |     |           |        +--ro as-list-direction?           ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           +--rw prefix-list-filters
     |     |           |  +--rw prefix-list-filter* [prefix-filter-direction]
     |     |           |     +--rw prefix-filter-direction    -> ../config/prefix-filter-direction
     |     |           |     +--rw config
     |     |           |     |  +--rw prefix-list-name           string
     |     |           |     |  +--rw prefix-filter-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           |     +--ro state
     |     |           |        +--ro prefix-list-name           string
     |     |           |        +--ro prefix-filter-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |           +--rw route-map-filters
     |     |              +--rw route-map-filter* [route-map-direction]
     |     |                 +--rw route-map-direction    -> ../config/route-map-direction
     |     |                 +--rw config
     |     |                 |  +--rw route-map-name         string
     |     |                 |  +--rw route-map-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     |                 +--ro state
     |     |                    +--ro route-map-name         string
     |     |                    +--ro route-map-direction?   ipi-bgp-types:bgp_distribute_list_direction_t
     |     +--rw peer-engineering
     |        +--rw config
     |        |  +--rw enable-epe?   empty
     |        +--ro state
     |           +--ro enable-epe?   empty
     +--rw flowspec
        +--rw controllers
           +--rw controller* [enable-flowspec-controller]
              +--rw enable-flowspec-controller    -> ../config/enable-flowspec-controller
              +--rw config
              |  +--rw enable-flowspec-controller?   empty
              |  +--rw local-install?                ipi-bgp-flowspec-types:flowspec_local_install_t
              +--ro state
              |  +--ro enable-flowspec-controller?   empty
              |  +--ro local-install?                ipi-bgp-flowspec-types:flowspec_local_install_t
              +--rw address-families
              |  +--rw address-family* [afi-type]
              |     +--rw afi-type            -> ../config/afi-type
              |     +--rw config
              |     |  +--rw afi-type?        ipi-bgp-flowspec-types:flowspec_afi_type_t
              |     |  +--rw local-install?   ipi-bgp-flowspec-types:flowspec_local_install_t
              |     +--ro state
              |     |  +--ro afi-type?        ipi-bgp-flowspec-types:flowspec_afi_type_t
              |     |  +--ro local-install?   ipi-bgp-flowspec-types:flowspec_local_install_t
              |     +--rw service-policies
              |        +--rw service-policy* [attached-policy-map-name service-policy-type]
              |           +--rw attached-policy-map-name    -> ../config/attached-policy-map-name
              |           +--rw service-policy-type         -> ../config/service-policy-type
              |           +--rw config
              |           |  +--rw attached-policy-map-name?   string
              |           |  +--rw service-policy-type?        ipi-enhanced-pbr-types:epbr_policy_map_t
              |           +--ro state
              |              +--ro attached-policy-map-name?   string
              |              +--ro service-policy-type?        ipi-enhanced-pbr-types:epbr_policy_map_t
              +--rw vrfs
                 +--rw vrf* [vrf-name]
                    +--rw vrf-name            -> ../config/vrf-name
                    +--rw config
                    |  +--rw vrf-name?        string
                    |  +--rw local-install?   ipi-bgp-flowspec-types:flowspec_local_install_t
                    +--ro state
                    |  +--ro vrf-name?        string
                    |  +--ro local-install?   ipi-bgp-flowspec-types:flowspec_local_install_t
                    +--rw address-families
                       +--rw address-family* [afi-type]
                          +--rw afi-type            -> ../config/afi-type
                          +--rw config
                          |  +--rw afi-type?        ipi-bgp-flowspec-types:flowspec_afi_type_t
                          |  +--rw local-install?   ipi-bgp-flowspec-types:flowspec_local_install_t
                          +--ro state
                          |  +--ro afi-type?        ipi-bgp-flowspec-types:flowspec_afi_type_t
                          |  +--ro local-install?   ipi-bgp-flowspec-types:flowspec_local_install_t
                          +--rw service-policies
                             +--rw service-policy* [attached-policy-map-name service-policy-type]
                                +--rw attached-policy-map-name    -> ../config/attached-policy-map-name
                                +--rw service-policy-type         -> ../config/service-policy-type
                                +--rw config
                                |  +--rw attached-policy-map-name?   string
                                |  +--rw service-policy-type?        ipi-enhanced-pbr-types:epbr_policy_map_t
                                +--ro state
                                   +--ro attached-policy-map-name?   string
                                   +--ro service-policy-type?        ipi-enhanced-pbr-types:epbr_policy_map_t
 
  rpcs:
    +---x clear-ip-bgp-peer {feature-list:HAVE_BGPD}?
    |  +---w input
    |     +---w arg                       ipi-bgp-types:bgp_hostname_t
    |     +---w peer-reset-description?   cml-data-types:cml_line_t
    +---x clear-peer-group-l2vpn-evpn-soft-all {feature-list:HAVE_BGP_EVPN}?
    |  +---w input
    |     +---w peer-group-tag    string
    |     +---w soft-reconfig     ipi-bgp-types:bgp_update_clear_t
    +---x clear-ip-bgp-all-peer {feature-list:HAVE_BGPD}?
    |  +---w input
    |     +---w peer-reset-description?   cml-data-types:cml_line_t
    +---x clear-bgp-l2vpn-evpn-soft-all {feature-list:HAVE_BGP_EVPN}?
    |  +---w input
    |     +---w soft-reconfig    ipi-bgp-types:bgp_update_clear_t
    +---x clear-bgp-remote-as-l2vpn-evpn-soft-all {feature-list:HAVE_BGP_EVPN}?
    |  +---w input
    |     +---w peer-as          uint32
    |     +---w soft-reconfig    ipi-bgp-types:bgp_update_clear_t
    +---x clear-bgp-peer-address-l2vpn-evpn-soft {feature-list:HAVE_BGP_EVPN}?
    |  +---w input
    |     +---w peer-address     ipi-bgp-types:bgp_ip_addr_t
    |     +---w soft-reconfig    ipi-bgp-types:bgp_update_clear_t
    +---x clear-ip-bgp-all-vrf {feature-list:HAVE_BGPD}?
    |  +---w input
    |     +---w vrf-name                  string
    |     +---w peer-reset-description?   cml-data-types:cml_line_t
    +---x clear-ip-bgp-vrf-peer {feature-list:HAVE_BGPD}?
    |  +---w input
    |     +---w vrf-name                  string
    |     +---w address                   ipi-bgp-types:bgp_hostname_t
    |     +---w peer-reset-description?   cml-data-types:cml_line_t
    +---x bgp-graceful-restart {feature-list:HAVE_RESTART}?
    +---x clear-bgp-statistics {feature-list:HAVE_BGPD}?
    +---x bgp-snmp-restart {feature-list:HAVE_BGPD}?
    +---x bgp-debug-on {feature-list:HAVE_BGPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-bgp-types:bgp_debug_t
    +---x bgp-debug-off {feature-list:HAVE_BGPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-bgp-types:bgp_debug_t
    +---x bgp-all-debug-off {feature-list:HAVE_BGPD}?
 
  notifications:
    +---n bgp-established-notification
    |  +--ro severity?       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?     cml-data-types:cml_notif_class_t
    |  +--ro peer-address?   ipi-bgp-types:bgp_ip_addr_t
    |  +--ro bgp-as?         uint32
    |  +--ro peer-state?     ipi-bgp-types:bgp_peer_status_t
    +---n bgp-backward-transition-notification
       +--ro severity?       cml-data-types:cml_notif_severity_t
       +--ro eventClass?     cml-data-types:cml_notif_class_t
       +--ro peer-address?   ipi-bgp-types:bgp_ip_addr_t
       +--ro bgp-as?         uint32
       +--ro peer-state?     ipi-bgp-types:bgp_peer_status_t
 
module: ipi-bridge-domain
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance:
    +--rw bridge-domain {feature-list:HAVE_SUBINTERFACE,feature-list:NOT_HAVE_SWFWDR}?
       +--rw config
       |  +--rw domain-id?         -> /ipi-network-instance:network-instances/network-instance/instance-name
       |  +--rw description?       cml-data-types:cml_line_t
       |  +--rw route-interface?   -> /ipi-interface:interfaces/interface/name
       +--rw bridge-instance
       |  +--rw config!
       |  |  +--rw instance-id    uint8
       |  |  +--rw bridge-id      string
       |  +--ro state
       |     +--ro instance-id    uint8
       |     +--ro bridge-id      string
       +--ro state
       |  +--ro domain-id?         -> /ipi-network-instance:network-instances/network-instance/instance-name
       |  +--ro description?       cml-data-types:cml_line_t
       |  +--ro route-interface?   -> /ipi-interface:interfaces/interface/name
       +--rw member-interfaces
          +--rw member-interface* [name]
             +--rw name      -> ../config/name
             +--rw config
             |  +--rw name?   -> /ipi-interface:interfaces/interface/name
             +--ro state
                +--ro name?   -> /ipi-interface:interfaces/interface/name
 
 
module: ipi-bridge
  +--rw global-bridge-vlan-check
     +--rw global
        +--rw config
        |  +--rw enable?   empty
        +--ro state
           +--ro enable?   empty
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance:
    +--rw bridge
       +--rw config!
       |  +--rw protocol                       ipi-bridge-types:bridge_protocol_t
       |  +--rw disable-dynamic-learning?      empty
       |  +--rw l2-protocol-destination-mac?   cml-data-types:cml_mac_addr_t {feature-list:HAVE_PROVIDER_BRIDGE}?
       |  +--rw dot1ad-encapsulation?          empty {feature-list:HAVE_DUNE}?
       +--ro state
       |  +--ro protocol                       ipi-bridge-types:bridge_protocol_t
       |  +--ro disable-dynamic-learning?      empty
       |  +--ro l2-protocol-destination-mac?   cml-data-types:cml_mac_addr_t {feature-list:HAVE_PROVIDER_BRIDGE}?
       |  +--ro dot1ad-encapsulation?          empty {feature-list:HAVE_DUNE}?
       +--rw bridge-ports
       |  +--rw interface* [name]
       |     +--rw name      -> ../config/name
       |     +--rw config
       |     |  +--rw name?                            -> /ipi-interface:interfaces/interface/name
       |     |  +--rw spanning-tree-protocol-status?   ipi-bridge-types:bridge_spanningtree_enable_disable_t
       |     +--ro state
       |        +--ro name?                            -> /ipi-interface:interfaces/interface/name
       |        +--ro spanning-tree-protocol-status?   ipi-bridge-types:bridge_spanningtree_enable_disable_t
       |        +--ro switchport-mode?                 ipi-port-vlan-types:port_vlan_switch_port_mode_t
       +--rw fdb
          +--rw interfaces
          |  +--rw interface* [interface-name]
          |     +--rw interface-name    -> ../config/interface-name
          |     +--rw config
          |     |  +--rw interface-name?         -> /ipi-interface:interfaces/interface/name
          |     |  +--rw disable-mac-learning    empty
          |     +--ro state
          |        +--ro interface-name?         -> /ipi-interface:interfaces/interface/name
          |        +--ro disable-mac-learning    empty
          +--rw static-mac-table
          |  +--rw entry* [mac-address]
          |     +--rw mac-address    -> ../config/mac-address
          |     +--rw config
          |     |  +--rw interface-name    -> /ipi-interface:interfaces/interface/name
          |     |  +--rw mac-address?      cml-data-types:cml_mac_addr_t
          |     |  +--rw action            ipi-bridge-types:bridge_discardforward_t
          |     +--ro state
          |        +--ro interface-name    -> /ipi-interface:interfaces/interface/name
          |        +--ro mac-address?      cml-data-types:cml_mac_addr_t
          |        +--ro action            ipi-bridge-types:bridge_discardforward_t
          +--rw dynamic-mac-table
             +--ro entry* [mac-address vlan-id] {feature-list:HAVE_HAL}?
                +--ro mac-address    -> ../state/mac-address
                +--ro vlan-id        -> ../state/vlan-id
                +--ro state {feature-list:HAVE_HAL}?
                   +--ro mac-address?      cml-data-types:cml_mac_addr_t
                   +--ro vlan-id?          uint16
                   +--ro svlan-id?         uint16 {feature-list:HAVE_PROVIDER_BRIDGE}?
                   +--ro interface-name?   -> /ipi-interface:interfaces/interface/name
                   +--ro action?           ipi-bridge-types:bridge_discardforward_t
                   +--ro entry-time-out?   uint32
 
  rpcs:
    +---x bridge-clear-provider-edge-mac-address-table {feature-list:HAVE_L2}?
    |  +---w input
    |     +---w mac-type     ipi-bridge-types:bridge_mac_type_t
    |     +---w cvlan-id     uint16
    |     +---w svlan-id     uint16
    |     +---w bridge-id    string
    +---x bridge-clear-mac-address-table {feature-list:HAVE_L2}?
    |  +---w input
    |     +---w mac-type          ipi-bridge-types:bridge_mac_type_t
    |     +---w bridge-id         string
    |     +---w interface-name?   string
    |     +---w mac-address?      cml-data-types:cml_mac_addr_t
    |     +---w vlan-id?          uint16
    +---x bridge-clear-provider-edge-dynamic-mac-address-table {feature-list:HAVE_L2}?
    |  +---w input
    |     +---w cvlan-id     uint16
    |     +---w svlan-id     uint16
    |     +---w bridge-id    string
    +---x bridge-clear-dynamic-mac-address-table {feature-list:HAVE_L2}?
    |  +---w input
    |     +---w bridge-id         string
    |     +---w mac-address?      cml-data-types:cml_mac_addr_t
    |     +---w interface-name?   string
    |     +---w vlan-id?          uint16
    +---x bridge-clear-mstp-port-dynamic-mac-address-table {feature-list:HAVE_L2}?
       +---w input
          +---w interface-name    string
          +---w instance-id       uint32
          +---w bridge-id         string
 
 
 
 
module: ipi-cfm
  +--rw cfm {feature-list:HAVE_CFM}?
     +--rw global
     |  +--ro loopback
     |  |  +--ro state
     |  |     +--ro counters
     |  |        +--ro messages-transmitted?            yang:zero-based-counter32
     |  |        +--ro replies-received?                yang:zero-based-counter32
     |  |        +--ro out-of-order-replies-received?   yang:zero-based-counter32
     |  |        +--ro bad-msdu?                        yang:zero-based-counter32
     |  +--rw linktrace
     |     +--rw cache
     |     |  +--rw config!
     |     |  |  +--rw cache-enable    empty
     |     |  |  +--rw cache-size?     uint16
     |     |  +--ro state
     |     |     +--ro cache-enable    empty
     |     |     +--ro cache-size?     uint16
     |     +--ro state
     |        +--ro counters
     |           +--ro messages-transmitted?          yang:zero-based-counter32
     |           +--ro replies-transmitted?           yang:zero-based-counter32
     |           +--ro valid-replies-received?        yang:zero-based-counter32
     |           +--ro unexpected-replies-received?   yang:zero-based-counter32
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-cfm-data-types:cfm_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-cfm-data-types:cfm_debug_t
     |     +--ro terminal-debug-status?   ipi-cfm-data-types:cfm_debug_t
     +--rw maintenance-domains
     |  +--rw maintenance-domain* [md-name]
     |     +--rw md-name                     -> ../config/md-name
     |     +--rw config
     |     |  +--rw md-name?        string
     |     |  +--rw type            ipi-cfm-data-types:cfm_md_type_t
     |     |  +--rw level           uint8
     |     |  +--rw mip-creation?   ipi-cfm-data-types:cfm_mip_creation_mode_t {feature-list:HAVE_PROVIDER_BRIDGE}?
     |     +--ro state
     |     |  +--ro md-name?        string
     |     |  +--ro type            ipi-cfm-data-types:cfm_md_type_t
     |     |  +--ro level           uint8
     |     |  +--ro mip-creation?   ipi-cfm-data-types:cfm_mip_creation_mode_t {feature-list:HAVE_PROVIDER_BRIDGE}?
     |     +--rw maintenance-associations
     |        +--rw maintenance-association* [ma-name]
     |           +--rw ma-name                   -> ../config/ma-name
     |           +--rw config
     |           |  +--rw ma-name?                      string
     |           |  +--rw type                          ipi-cfm-data-types:cfm_ma_type_t
     |           |  +--rw ccm-interval?                 ipi-cfm-data-types:cfm_msg_interval_t
     |           |  +--rw enable-rmep-auto-discovery?   empty {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |           |  +--rw static-rmep-identifiers*      uint16
     |           |  +--rw mip-creation?                 ipi-cfm-data-types:cfm_ma_mip_creation_mode_t
     |           |  +--rw vlan-id?                      uint16
     |           |  +--rw inner-vlan-id?                uint16
     |           |  +--rw bridge-id?                    -> /ipi-network-instance:network-instances/network-instance/instance-name
     |           |  +--rw link-level-ma?                empty
     |           |  +--rw mip-interface-name*           -> /ipi-interface:interfaces/interface/name {feature-list:HAVE_PROVIDER_BRIDGE}?
     |           |  +--rw evpn-id?                      uint32 {feature-list:HAVE_BGP_EVPN,feature-list:NOT_HAVE_CUSTOM1_MPLS_OR_HAVE_NVO3_OAM}?
     |           |  +--rw vpws-vc-name?                 string {feature-list:HAVE_MPLS_VC,feature-list:NOT_HAVE_CUSTOM1_MPLS}?
     |           +--ro state
     |           |  +--ro ma-name?                      string
     |           |  +--ro type                          ipi-cfm-data-types:cfm_ma_type_t
     |           |  +--ro ccm-interval?                 ipi-cfm-data-types:cfm_msg_interval_t
     |           |  +--ro enable-rmep-auto-discovery?   empty {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |           |  +--ro static-rmep-identifiers*      uint16
     |           |  +--ro mip-creation?                 ipi-cfm-data-types:cfm_ma_mip_creation_mode_t
     |           |  +--ro vlan-id?                      uint16
     |           |  +--ro inner-vlan-id?                uint16
     |           |  +--ro bridge-id?                    -> /ipi-network-instance:network-instances/network-instance/instance-name
     |           |  +--ro link-level-ma?                empty
     |           |  +--ro mip-interface-name*           -> /ipi-interface:interfaces/interface/name {feature-list:HAVE_PROVIDER_BRIDGE}?
     |           |  +--ro evpn-id?                      uint32 {feature-list:HAVE_BGP_EVPN,feature-list:NOT_HAVE_CUSTOM1_MPLS_OR_HAVE_NVO3_OAM}?
     |           |  +--ro vpws-vc-name?                 string {feature-list:HAVE_MPLS_VC,feature-list:NOT_HAVE_CUSTOM1_MPLS}?
     |           +--rw maintenance-end-points
     |           |  +--rw maintenance-end-point* [mep-id]
     |           |     +--rw mep-id                              -> ../config/mep-id
     |           |     +--rw config
     |           |     |  +--rw mep-id?                 uint16
     |           |     |  +--rw direction               ipi-cfm-data-types:cfm_mep_direction_t
     |           |     |  +--rw administrative-state    ipi-cfm-data-types:cfm_mep_state_t
     |           |     |  +--rw mep-outer-vlan?         uint16
     |           |     |  +--rw mep-inner-vlan?         uint16
     |           |     |  +--rw bw-mapped-interface?    -> /ipi-interface:interfaces/interface/name
     |           |     |  +--rw interface-name?         -> /ipi-interface:interfaces/interface/name
     |           |     |  +--rw remote-vpws-vc-name?    string
     |           |     |  +--rw remote-evpn-id?         uint32
     |           |     +--ro state
     |           |     |  +--ro mep-id?                    uint16
     |           |     |  +--ro direction                  ipi-cfm-data-types:cfm_mep_direction_t
     |           |     |  +--ro administrative-state       ipi-cfm-data-types:cfm_mep_state_t
     |           |     |  +--ro mep-outer-vlan?            uint16
     |           |     |  +--ro mep-inner-vlan?            uint16
     |           |     |  +--ro interface-name?            -> /ipi-interface:interfaces/interface/name
     |           |     |  +--ro remote-vpws-vc-name?       string
     |           |     |  +--ro remote-evpn-id?            uint32
     |           |     |  +--ro mac-address?               cml-data-types:cml_mac_addr_t
     |           |     |  +--ro ma-status?                 ipi-cfm-data-types:cfm_ma_status_t
     |           |     |  +--ro mep-connectivity-status?   ipi-cfm-data-types:cfm_mep_connectivity_status_t
     |           |     |  +--ro bw-mapped-interface?       -> /ipi-interface:interfaces/interface/name
     |           |     +--rw continuity-check
     |           |     |  +--rw config
     |           |     |  |  +--rw enable-cc-multicast?            empty
     |           |     |  |  +--rw lowest-fault-priority-defect?   ipi-cfm-data-types:cfm_mep_lowest_fault_priority_t
     |           |     |  |  +--rw mep-rmep-auto-discovery?        empty {feature-list:HAVE_DUNE}?
     |           |     |  |  +--rw mep-rmep-cross-check*           uint16 {feature-list:HAVE_DUNE}?
     |           |     |  +--ro state
     |           |     |  |  +--ro enable-cc-multicast?             empty
     |           |     |  |  +--ro lowest-fault-priority-defect?    ipi-cfm-data-types:cfm_mep_lowest_fault_priority_t
     |           |     |  |  +--ro mep-rmep-auto-discovery?         empty {feature-list:HAVE_DUNE}?
     |           |     |  |  +--ro mep-rmep-cross-check*            uint16 {feature-list:HAVE_DUNE}?
     |           |     |  |  +--ro highest-priority-defect-found?   ipi-cfm-data-types:cfm_mep_highest_fault_defect_t
     |           |     |  |  +--ro cc-received-defect?              ipi-cfm-data-types:cfm_received_ccm_defect_t
     |           |     |  |  +--ro cc-messages-received?            yang:zero-based-counter32
     |           |     |  |  +--ro cc-messages-sent?                yang:zero-based-counter32
     |           |     |  +--ro remote-mep-database
     |           |     |     +--ro remote-mep* [rmep-id]
     |           |     |        +--ro rmep-id    -> ../state/rmep-id
     |           |     |        +--ro state
     |           |     |           +--ro rmep-id?       uint16
     |           |     |           +--ro mac-address?   cml-data-types:cml_mac_addr_t
     |           |     |           +--ro rdi?           empty
     |           |     +--ro loopback
     |           |     |  +--ro last-test-result
     |           |     |     +--ro state
     |           |     |        +--ro target-mac-address?     ipi-cfm-data-types:cfm_rmep_mac_addr_t
     |           |     |        +--ro messages-transmitted?   yang:zero-based-counter32
     |           |     |        +--ro replies-received?       yang:zero-based-counter32
     |           |     +--ro linktrace-database
     |           |     |  +--ro linktrace-entry* [transaction-id]
     |           |     |     +--ro transaction-id    -> ../state/transaction-id
     |           |     |     +--ro state
     |           |     |     |  +--ro transaction-id?       uint32
     |           |     |     |  +--ro target-mac-address?   ipi-cfm-data-types:cfm_rmep_mac_addr_t
     |           |     |     +--ro replies
     |           |     |        +--ro reply* [index]
     |           |     |           +--ro index    -> ../state/index
     |           |     |           +--ro state
     |           |     |              +--ro index?                     uint8
     |           |     |              +--ro hops?                      uint8
     |           |     |              +--ro destination-mac-address?   ipi-cfm-data-types:cfm_rmep_mac_addr_t
     |           |     |              +--ro relay-action?              ipi-cfm-data-types:cfm_relay_action_t
     |           |     +--rw ethernet-bandwidth-notification {feature-list:Y1731_HW_OFFLOAD}?
     |           |     |  +--rw config!
     |           |     |  |  +--rw enable-receive                empty
     |           |     |  |  +--rw wait-to-restore-timer?        uint32
     |           |     |  |  +--rw peer-port-id?                 uint32
     |           |     |  |  +--rw adaptive-bandwidth-disable?   empty
     |           |     |  +--ro state
     |           |     |     +--ro enable-receive                    empty
     |           |     |     +--ro wait-to-restore-timer?            uint32
     |           |     |     +--ro peer-port-id?                     uint32
     |           |     |     +--ro adaptive-bandwidth-disable?       empty
     |           |     |     +--ro nominal-bandwidth?                string
     |           |     |     +--ro current-bandwidth?                string
     |           |     |     +--ro signal-state?                     ipi-cfm-data-types:cfm_bn_csf_signal_state_t
     |           |     |     +--ro messages-received?                yang:zero-based-counter32
     |           |     |     +--ro messages-dropped?                 yang:zero-based-counter32
     |           |     |     +--ro last-message-received-time?       string
     |           |     |     +--ro message-rx-interval?              uint8
     |           |     |     +--ro peer-mac-address?                 cml-data-types:cml_mac_addr_t
     |           |     |     +--ro mep-interface-name?               string
     |           |     |     +--ro wait-to-restore-time-remaining?   uint32
     |           |     |     +--ro peer-port-identifier?             uint32
     |           |     |     +--ro curr-state-elapsed-time?          string
     |           |     +--rw ethernet-client-signal-fail {feature-list:Y1731_HW_OFFLOAD}?
     |           |     |  +--rw config!
     |           |     |  |  +--rw enable-receive           empty
     |           |     |  |  +--rw wait-to-restore-timer?   uint32
     |           |     |  +--ro state
     |           |     |     +--ro enable-receive                    empty
     |           |     |     +--ro wait-to-restore-timer?            uint32
     |           |     |     +--ro signal-state?                     ipi-cfm-data-types:cfm_bn_csf_signal_state_t
     |           |     |     +--ro messages-received?                yang:zero-based-counter32
     |           |     |     +--ro messages-dropped?                 yang:zero-based-counter32
     |           |     |     +--ro last-message-received-time?       string
     |           |     |     +--ro wait-to-restore-time-remaining?   uint32
     |           |     |     +--ro message-rx-interval?              uint8
     |           |     |     +--ro peer-mac-address?                 cml-data-types:cml_mac_addr_t
     |           |     |     +--ro mep-interface-name?               string
     |           |     +--rw ethernet-locked-signal {feature-list:Y1731_HW_OFFLOAD}?
     |           |     |  +--rw config!
     |           |     |  |  +--rw lock-state         ipi-cfm-data-types:cfm_mep_lck_t
     |           |     |  |  +--rw client-md-level?   uint8
     |           |     |  |  +--rw interval?          ipi-cfm-data-types:cfm_y1731_tx_interval_t
     |           |     |  |  +--rw priority?          uint8
     |           |     |  +--ro state
     |           |     |     +--ro lock-state              ipi-cfm-data-types:cfm_mep_lck_t
     |           |     |     +--ro client-md-level?        uint8
     |           |     |     +--ro interval?               ipi-cfm-data-types:cfm_y1731_tx_interval_t
     |           |     |     +--ro priority?               uint8
     |           |     |     +--ro receive-status?         boolean
     |           |     |     +--ro transmit-status?        boolean
     |           |     |     +--ro messages-received?      yang:zero-based-counter32
     |           |     |     +--ro messages-transmitted?   yang:zero-based-counter32
     |           |     +--rw ethernet-alarm-indication-signal {feature-list:HAVE_CFM_Y1731}?
     |           |     |  +--rw config!
     |           |     |  |  +--rw enable-status      empty
     |           |     |  |  +--rw client-md-level    uint8
     |           |     |  |  +--rw interval?          ipi-cfm-data-types:cfm_y1731_tx_interval_t
     |           |     |  +--ro state
     |           |     |     +--ro enable-status            empty
     |           |     |     +--ro client-md-level          uint8
     |           |     |     +--ro interval?                ipi-cfm-data-types:cfm_y1731_tx_interval_t
     |           |     |     +--ro is-ais-frame-received?   boolean
     |           |     +--rw y1731-responders {feature-list:HAVE_CFM_Y1731}?
     |           |     |  +--rw config
     |           |     |  |  +--rw enable-lm-responder?   ipi-cfm-data-types:cfm_lm_reply_type_t {feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
     |           |     |  |  +--rw enable-dm-responder?   empty {feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
     |           |     |  +--ro state
     |           |     |     +--ro enable-lm-responder?   ipi-cfm-data-types:cfm_lm_reply_type_t {feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
     |           |     |     +--ro enable-dm-responder?   empty {feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
     |           |     +--rw ethernet-test-signal {feature-list:Y1731_HW_OFFLOAD}?
     |           |     |  +--ro state
     |           |     |     +--ro rmep-id?                       uint16
     |           |     |     +--ro peer-mac-address?              cml-data-types:cml_mac_addr_t
     |           |     |     +--ro session-status?                ipi-cfm-data-types:cfm_tst_session_status_t
     |           |     |     +--ro start-time?                    yang:date-and-time
     |           |     |     +--ro end-time?                      yang:date-and-time
     |           |     |     +--ro elapsed-time?                  uint32
     |           |     |     +--ro in-test-frames?                yang:zero-based-counter64
     |           |     |     +--ro in-out-of-order-frames?        yang:zero-based-counter64
     |           |     |     +--ro in-ber-error-frames?           yang:zero-based-counter64
     |           |     |     +--ro last-packet-sequence-number?   uint64
     |           |     |     +--ro out-test-frames?               yang:zero-based-counter64
     |           |     +--ro ethernet-loss-measurements {feature-list:Y1731_HW_OFFLOAD}?
     |           |     |  +--ro current-measurement
     |           |     |  |  +--ro state
     |           |     |  |     +--ro counters
     |           |     |  |     |  +--ro near-end-loss?               uint32
     |           |     |  |     |  +--ro far-end-loss?                uint32
     |           |     |  |     |  +--ro near-end-accumulated-loss?   uint32
     |           |     |  |     |  +--ro far-end-accumulated-loss?    uint32
     |           |     |  |     +--ro measurement-id?     uint16
     |           |     |  |     +--ro suspect-status?     boolean
     |           |     |  |     +--ro measurement-type?   ipi-cfm-data-types:cfm_lm_measurement_type_t
     |           |     |  |     +--ro elapsed-time?       uint32
     |           |     |  |     +--ro start-time?         yang:date-and-time
     |           |     |  |     +--ro session-status?     ipi-cfm-data-types:cfm_pm_session_status_t
     |           |     |  +--ro historic-measurements
     |           |     |     +--ro historic-measurement* [measurement-id]
     |           |     |        +--ro measurement-id    -> ../state/measurement-id
     |           |     |        +--ro state
     |           |     |           +--ro counters
     |           |     |           |  +--ro near-end-loss?               uint32
     |           |     |           |  +--ro far-end-loss?                uint32
     |           |     |           |  +--ro near-end-accumulated-loss?   uint32
     |           |     |           |  +--ro far-end-accumulated-loss?    uint32
     |           |     |           +--ro measurement-id?     uint16
     |           |     |           +--ro suspect-status?     boolean
     |           |     |           +--ro measurement-type?   ipi-cfm-data-types:cfm_lm_measurement_type_t
     |           |     |           +--ro elapsed-time?       uint32
     |           |     |           +--ro end-time?           yang:date-and-time
     |           |     +--ro ethernet-delay-measurements {feature-list:Y1731_HW_OFFLOAD}?
     |           |        +--ro current-measurement
     |           |        |  +--ro state
     |           |        |  |  +--ro measurement-id?                uint16
     |           |        |  |  +--ro suspect-status?                boolean
     |           |        |  |  +--ro measurement-type?              ipi-cfm-data-types:cfm_dm_measurement_type_t
     |           |        |  |  +--ro elapsed-time?                  uint32
     |           |        |  |  +--ro start-time?                    yang:date-and-time
     |           |        |  |  +--ro session-status?                ipi-cfm-data-types:cfm_pm_session_status_t
     |           |        |  |  +--ro frame-delay {feature-list:Y1731_HW_OFFLOAD}?
     |           |        |  |  |  +--ro min?   yang:gauge32
     |           |        |  |  |  +--ro max?   yang:gauge32
     |           |        |  |  |  +--ro avg?   yang:gauge32
     |           |        |  |  +--ro inter-frame-delay-variation {feature-list:Y1731_HW_OFFLOAD}?
     |           |        |  |     +--ro min?   yang:gauge32
     |           |        |  |     +--ro max?   yang:gauge32
     |           |        |  |     +--ro avg?   yang:gauge32
     |           |        |  +--ro frame-delay-bins {feature-list:Y1731_HW_OFFLOAD}?
     |           |        |  |  +--ro frame-delay-bin* [bin-number]
     |           |        |  |     +--ro bin-number    -> ../state/bin-number
     |           |        |  |     +--ro state
     |           |        |  |        +--ro bin-number?   uint8
     |           |        |  |        +--ro threshold?    uint32
     |           |        |  |        +--ro counter?      yang:gauge32
     |           |        |  +--ro inter-frame-delay-bins {feature-list:Y1731_HW_OFFLOAD}?
     |           |        |     +--ro inter-frame-delay-bin* [bin-number]
     |           |        |        +--ro bin-number    -> ../state/bin-number
     |           |        |        +--ro state
     |           |        |           +--ro bin-number?   uint8
     |           |        |           +--ro threshold?    uint32
     |           |        |           +--ro counter?      yang:gauge32
     |           |        +--ro historic-measurements
     |           |           +--ro historic-measurement* [measurement-id]
     |           |              +--ro measurement-id            -> ../state/measurement-id
     |           |              +--ro state
     |           |              |  +--ro measurement-id?                uint16
     |           |              |  +--ro suspect-status?                boolean
     |           |              |  +--ro measurement-type?              ipi-cfm-data-types:cfm_dm_measurement_type_t
     |           |              |  +--ro elapsed-time?                  uint32
     |           |              |  +--ro end-time?                      yang:date-and-time
     |           |              |  +--ro frame-delay {feature-list:Y1731_HW_OFFLOAD}?
     |           |              |  |  +--ro min?   yang:gauge32
     |           |              |  |  +--ro max?   yang:gauge32
     |           |              |  |  +--ro avg?   yang:gauge32
     |           |              |  +--ro inter-frame-delay-variation {feature-list:Y1731_HW_OFFLOAD}?
     |           |              |     +--ro min?   yang:gauge32
     |           |              |     +--ro max?   yang:gauge32
     |           |              |     +--ro avg?   yang:gauge32
     |           |              +--ro frame-delay-bins {feature-list:Y1731_HW_OFFLOAD}?
     |           |              |  +--ro frame-delay-bin* [bin-number]
     |           |              |     +--ro bin-number    -> ../state/bin-number
     |           |              |     +--ro state
     |           |              |        +--ro bin-number?   uint8
     |           |              |        +--ro threshold?    uint32
     |           |              |        +--ro counter?      yang:gauge32
     |           |              +--ro inter-frame-delay-bins {feature-list:Y1731_HW_OFFLOAD}?
     |           |                 +--ro inter-frame-delay-bin* [bin-number]
     |           |                    +--ro bin-number    -> ../state/bin-number
     |           |                    +--ro state
     |           |                       +--ro bin-number?   uint8
     |           |                       +--ro threshold?    uint32
     |           |                       +--ro counter?      yang:gauge32
     |           +--ro default-mips
     |              +--ro default-mip* [interface-name]
     |                 +--ro interface-name    -> ../state/interface-name
     |                 +--ro state
     |                    +--ro interface-name?   string
     |                    +--ro vlan-id?          uint16
     |                    +--ro mac-address?      cml-data-types:cml_mac_addr_t
     +--rw ethernet-test-signal-profiles {feature-list:Y1731_HW_OFFLOAD}?
     |  +--rw ethernet-test-signal-profile* [profile-name]
     |     +--rw profile-name    -> ../config/profile-name
     |     +--rw config
     |     |  +--rw profile-name?   string
     |     |  +--rw mode?           ipi-cfm-data-types:cfm_test_mode_t
     |     |  +--rw test-type?      ipi-cfm-data-types:cfm_test_type_t
     |     |  +--rw frame-size?     uint32
     |     |  +--rw pattern-type?   ipi-cfm-data-types:cfm_test_pattern_type_t
     |     +--ro state
     |        +--ro profile-name?   string
     |        +--ro mode?           ipi-cfm-data-types:cfm_test_mode_t
     |        +--ro test-type?      ipi-cfm-data-types:cfm_test_type_t
     |        +--ro frame-size?     uint32
     |        +--ro pattern-type?   ipi-cfm-data-types:cfm_test_pattern_type_t
     +--rw ethernet-loss-measurement-profiles {feature-list:HAVE_CFM_Y1731,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
     |  +--rw ethernet-loss-measurement-profile* [profile-name]
     |     +--rw profile-name    -> ../config/profile-name
     |     +--rw config
     |     |  +--rw profile-name?           string
     |     |  +--rw measurement-type?       ipi-cfm-data-types:cfm_lm_measurement_type_t
     |     |  +--rw measurement-interval?   uint32
     |     |  +--rw message-period?         ipi-cfm-data-types:cfm_msg_interval_t
     |     |  +--rw intervals-stored?       uint16
     |     +--ro state
     |        +--ro profile-name?           string
     |        +--ro measurement-type?       ipi-cfm-data-types:cfm_lm_measurement_type_t
     |        +--ro measurement-interval?   uint32
     |        +--ro message-period?         ipi-cfm-data-types:cfm_msg_interval_t
     |        +--ro intervals-stored?       uint16
     +--rw ethernet-delay-measurement-profiles {feature-list:HAVE_CFM_Y1731,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
        +--rw ethernet-delay-measurement-profile* [profile-name]
           +--rw profile-name      -> ../config/profile-name
           +--rw config
           |  +--rw profile-name?             string
           |  +--rw measurement-interval?     uint16
           |  +--rw message-period?           ipi-cfm-data-types:cfm_msg_interval_t
           |  +--rw intervals-stored?         uint16
           |  +--rw bins-per-fd-interval?     uint8
           |  +--rw bins-per-ifdv-interval?   uint8
           +--ro state
           |  +--ro profile-name?             string
           |  +--ro measurement-interval?     uint16
           |  +--ro message-period?           ipi-cfm-data-types:cfm_msg_interval_t
           |  +--ro intervals-stored?         uint16
           |  +--ro bins-per-fd-interval?     uint8
           |  +--ro bins-per-ifdv-interval?   uint8
           +--rw bin-thresholds
              +--rw bin-threshold* [type bin-number]
                 +--rw type          -> ../config/type
                 +--rw bin-number    -> ../config/bin-number
                 +--rw config
                 |  +--rw type?         ipi-cfm-data-types:cfm_dm_measurement_bin_type_t
                 |  +--rw bin-number?   uint8
                 |  +--rw threshold     uint32
                 +--ro state
                    +--ro type?         ipi-cfm-data-types:cfm_dm_measurement_bin_type_t
                    +--ro bin-number?   uint8
                    +--ro threshold     uint32
 
  rpcs:
    +---x cfm-l2-abort-eth-test-signal {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w mep-id         uint16
    |     +---w ma-name        string
    |     +---w domain-name    string
    +---x cfm-l2-eth-test-on-demand-start-relative-stop-relative {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w test-target        ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w mep-id             uint16
    |     +---w ma-name            string
    |     +---w md-name            string
    |     +---w profile-name       string
    |     +---w start-time-type    ipi-cfm-data-types:cfm_relative_time_t
    |     +---w start-time         uint32
    |     +---w stop-time-type     ipi-cfm-data-types:cfm_relative_time_t
    |     +---w stop-time          uint32
    +---x cfm-l2-eth-test-on-demand-start-absolute-stop-relative {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w test-target        ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w mep-id             uint16
    |     +---w ma-name            string
    |     +---w md-name            string
    |     +---w profile-name       string
    |     +---w start-time-type    ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w start-time         string
    |     +---w stop-time-type     ipi-cfm-data-types:cfm_relative_time_t
    |     +---w stop-time          uint32
    +---x cfm-l2-eth-test-on-demand-start-relative-stop-absolute {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w test-target        ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w mep-id             uint16
    |     +---w ma-name            string
    |     +---w md-name            string
    |     +---w profile-name       string
    |     +---w start-time-type    ipi-cfm-data-types:cfm_relative_time_t
    |     +---w start-time         uint32
    |     +---w stop-time-type     ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w stop-time          string
    +---x cfm-l2-eth-test-on-demand-start-absolute-stop-absolute {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w test-target        ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w mep-id             uint16
    |     +---w ma-name            string
    |     +---w md-name            string
    |     +---w profile-name       string
    |     +---w start-time-type    ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w start-time         string
    |     +---w stop-time-type     ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w stop-time          string
    +---x cfm-l2-eth-lm-start-proactive {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name         string
    |     +---w ma-name         string
    |     +---w mep-id          uint16
    |     +---w profile-name    string
    |     +---w rmep-id         ipi-cfm-data-types:cfm_rmep_type_t
    +---x cfm-l2-eth-lm-on-demand-start-immediate-stop-none {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_start_time_immediate_t
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_stop_time_none_t
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-lm-on-demand-start-immediate-stop-relative {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_start_time_immediate_t
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_relative_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-lm-on-demand-start-immediate-stop-absolute {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_start_time_immediate_t
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-lm-on-demand-start-relative-stop-none {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_relative_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_stop_time_none_t
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-lm-on-demand-start-relative-stop-relative {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_relative_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_relative_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-lm-on-demand-start-relative-stop-absolute {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_relative_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-lm-on-demand-start-absolute-stop-none {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_stop_time_none_t
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-lm-on-demand-start-absolute-stop-relative {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_relative_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-lm-on-demand-start-absolute-stop-absolute {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-abort-eth-lm-test {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name    string
    |     +---w ma-name    string
    |     +---w mep-id     uint16
    +---x cfm-l2-clear-eth-lm-history-stats {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name    string
    |     +---w ma-name    string
    |     +---w mep-id     uint16
    +---x cfm-l2-eth-dm-start-proactive {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name         string
    |     +---w ma-name         string
    |     +---w mep-id          uint16
    |     +---w profile-name    string
    |     +---w rmep-id         ipi-cfm-data-types:cfm_rmep_type_t
    +---x cfm-l2-eth-dm-on-demand-start-immediate-stop-none {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_start_time_immediate_t
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_stop_time_none_t
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-dm-on-demand-start-immediate-stop-relative {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_start_time_immediate_t
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_relative_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-dm-on-demand-start-immediate-stop-absolute {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_start_time_immediate_t
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-dm-on-demand-start-relative-stop-none {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_relative_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_stop_time_none_t
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-dm-on-demand-start-relative-stop-relative {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_relative_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_relative_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-dm-on-demand-start-relative-stop-absolute {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_relative_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-dm-on-demand-start-absolute-stop-none {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_stop_time_none_t
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-dm-on-demand-start-absolute-stop-relative {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_relative_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-eth-dm-on-demand-start-absolute-stop-absolute {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name              string
    |     +---w ma-name              string
    |     +---w mep-id               uint16
    |     +---w profile-name         string
    |     +---w rmep-id              ipi-cfm-data-types:cfm_rmep_type_t
    |     +---w start-time-type      ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w start-time           string
    |     +---w stop-time-type       ipi-cfm-data-types:cfm_absolute_time_t
    |     +---w stop-time            string
    |     +---w repetition-period    yang:timeticks
    +---x cfm-l2-abort-eth-dm-test {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name    string
    |     +---w ma-name    string
    |     +---w mep-id     uint16
    +---x cfm-l2-clear-eth-dm-history-stats {feature-list:HAVE_CFM_Y1731,feature-list:HAVE_CFM,feature-list:HAVE_ONMD,feature-list:Y1731_HW_OFFLOAD_OR_HAVE_SWFWDR}?
    |  +---w input
    |     +---w md-name    string
    |     +---w ma-name    string
    |     +---w mep-id     uint16
    +---x cfm-l2-clear-eth-csf-stats {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w mep-id     uint16
    |     +---w md-name    string
    |     +---w ma-name    string
    +---x cfm-l2-clear-eth-bn-stats {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w mep-id     uint16
    |     +---w md-name    string
    |     +---w ma-name    string
    +---x cfm-l2-clear-eth-lck-stats {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w mep-id     uint16
    |     +---w md-name    string
    |     +---w ma-name    string
    +---x cfm-l2-clear-eth-test-signal-stats {feature-list:Y1731_HW_OFFLOAD}?
    |  +---w input
    |     +---w md-name       string
    |     +---w ma-name       string
    |     +---w mep-id        uint16
    |     +---w stats-type    ipi-cfm-data-types:cfm_test_stats_type_t
    +---x cfm-l2-clear-ethernet-remote-meps {feature-list:HAVE_CFM,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w domain-name    string
    +---x cfm-clear-all-mep-stats {feature-list:HAVE_CFM}?
    +---x cfm-l2-clear-mep-stats {feature-list:HAVE_CFM}?
    |  +---w input
    |     +---w domain-name    string
    |     +---w mep-id         uint16
    |     +---w ma-name        string
    +---x cfm-snmp-restart {feature-list:HAVE_CFM,feature-list:HAVE_ONMD}?
    +---x cfm-terminal-debug-on {feature-list:HAVE_CFM,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-cfm-data-types:cfm_debug_t
    +---x cfm-terminal-debug-off {feature-list:HAVE_CFM,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-cfm-data-types:cfm_debug_t
    +---x cfm-l2-test-loopback {feature-list:HAVE_CFM,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w md-name        string
    |     +---w ma-name        string
    |     +---w mep-id         uint16
    |     +---w mac-address    ipi-cfm-data-types:cfm_lb_mac_addr_t
    +---x cfm-l2-test-linktrace {feature-list:HAVE_CFM,feature-list:HAVE_ONMD}?
    |  +---w input
    |  |  +---w md-name        string
    |  |  +---w ma-name        string
    |  |  +---w mep-id         uint16
    |  |  +---w mac-address    ipi-cfm-data-types:cfm_lb_mac_addr_t
    |  +--ro output
    |     +--ro transaction-id    uint32
    +---x cfm-l2-clear-linktrace-cache {feature-list:HAVE_CFM,feature-list:HAVE_ONMD}?
 
  notifications:
    +---n cfm-l2-mep-ccm-highest-fault-info {feature-list:HAVE_CFM}?
    |  +--ro severity?                        cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                      cml-data-types:cml_notif_class_t
    |  +--ro mep-id?                          uint16
    |  +--ro ma-name?                         string
    |  +--ro md-name?                         string
    |  +--ro highest-priority-defect-found?   ipi-cfm-data-types:cfm_mep_highest_fault_defect_t
    +---n cfm-l2-ethernet-loopback-test-completed {feature-list:HAVE_CFM}?
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro mep-id?               uint16
    |  +--ro ma-name?              string
    |  +--ro md-name?              string
    |  +--ro target-mac-address?   ipi-cfm-data-types:cfm_rmep_mac_addr_t
    +---n cfm-l2-ethernet-linktrace-test-completed {feature-list:HAVE_CFM}?
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro transaction-id?       uint32
    |  +--ro mep-id?               uint16
    |  +--ro ma-name?              string
    |  +--ro md-name?              string
    |  +--ro target-mac-address?   ipi-cfm-data-types:cfm_rmep_mac_addr_t
    +---n cfm-eth-csf-los-set {feature-list:HAVE_CFM,feature-list:Y1731_HW_OFFLOAD}?
    |  +--ro severity?       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?     cml-data-types:cml_notif_class_t
    |  +--ro mep-id?         uint16
    |  +--ro ma-name?        string
    |  +--ro md-name?        string
    |  +--ro signal-state?   ipi-cfm-data-types:cfm_bn_csf_signal_state_t
    +---n cfm-eth-csf-los-reset {feature-list:HAVE_CFM,feature-list:Y1731_HW_OFFLOAD}?
    |  +--ro severity?       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?     cml-data-types:cml_notif_class_t
    |  +--ro mep-id?         uint16
    |  +--ro ma-name?        string
    |  +--ro md-name?        string
    |  +--ro signal-state?   ipi-cfm-data-types:cfm_bn_csf_signal_state_t
    +---n cfm-eth-bnm-bw-update {feature-list:HAVE_CFM,feature-list:Y1731_HW_OFFLOAD}?
       +--ro severity?            cml-data-types:cml_notif_severity_t
       +--ro eventClass?          cml-data-types:cml_notif_class_t
       +--ro mep-id?              uint16
       +--ro ma-name?             string
       +--ro md-name?             string
       +--ro nominal-bandwidth?   string
       +--ro current-bandwidth?   string
 
 
module: ipi-cross-connect
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance:
    +--rw cross-connect
       +--rw config
       |  +--rw xc-name?         -> /ipi-network-instance:network-instances/network-instance/instance-name
       |  +--rw description?     cml-data-types:cml_line_t
       |  +--rw admin-disable?   empty
       +--ro state
       |  +--ro xc-name?             -> /ipi-network-instance:network-instances/network-instance/instance-name
       |  +--ro description?         cml-data-types:cml_line_t
       |  +--ro admin-disable?       empty
       |  +--ro operational-state?   ipi-cross-connect-types:xc_oper_status_t
       +--rw cross-connect-interfaces
          +--rw cross-connect-interface* [endpoint-if]
             +--rw endpoint-if    -> ../config/endpoint-if
             +--rw config
             |  +--rw endpoint-if?       -> /ipi-interface:interfaces/interface/name
             |  +--rw endpoint-if-bkp?   string {feature-list:HAVE_DUNE}?
             |  +--rw evc-name?          string {feature-list:HAVE_DUNE}?
             +--ro state
                +--ro endpoint-if?       -> /ipi-interface:interfaces/interface/name
                +--ro endpoint-if-bkp?   string {feature-list:HAVE_DUNE}?
                +--ro evc-name?          string {feature-list:HAVE_DUNE}?
 
module: ipi-crypto
 
  rpcs:
    +---x crypto-rsa-key-gen {feature-list:HAVE_HOSTPD}?
       +---w input
          +---w ipv4-addr    inet:ipv4-address
 
 
module: ipi-delay-profile
  +--rw delay-profiles
     +--rw delay-profile* [profile-type]
     |  +--rw profile-type                 -> ../config/profile-type
     |  +--rw config
     |  |  +--rw profile-type?   ipi-delay-profile-types:delay_profile_type_t
     |  +--ro state
     |  |  +--ro profile-type?   ipi-delay-profile-types:delay_profile_type_t
     |  +--rw profile-parameters
     |  |  +--rw config
     |  |  |  +--rw burst-interval?   uint16
     |  |  |  +--rw burst-count?      uint8
     |  |  |  +--rw interval?         uint16
     |  |  |  +--rw mode?             ipi-delay-profile-types:delay_profile_measurement_mode_t
     |  |  |  +--rw sender-port?      uint16
     |  |  +--ro state
     |  |     +--ro burst-interval?   uint16
     |  |     +--ro burst-count?      uint8
     |  |     +--ro interval?         uint16
     |  |     +--ro mode?             ipi-delay-profile-types:delay_profile_measurement_mode_t
     |  |     +--ro sender-port?      uint16
     |  +--rw periodic-advertisement
     |  |  +--rw config
     |  |  |  +--rw disable?          empty
     |  |  |  +--rw threshold?        uint8
     |  |  |  +--rw minimum-change?   uint16
     |  |  +--ro state
     |  |     +--ro disable?          empty
     |  |     +--ro threshold?        uint8
     |  |     +--ro minimum-change?   uint16
     |  +--rw accelerated-advertisement
     |     +--rw config!
     |     |  +--rw enable            empty
     |     |  +--rw threshold?        uint8
     |     |  +--rw minimum-change?   uint16
     |     +--ro state
     |        +--ro enable            empty
     |        +--ro threshold?        uint8
     |        +--ro minimum-change?   uint16
     +--rw delay-profile-clients
        +--rw config!
        |  +--rw delay-profile-enable    empty
        |  +--rw burst-interval?         uint16
        |  +--rw burst-count?            uint8
        +--ro state
           +--ro delay-profile-enable    empty
           +--ro burst-interval?         uint16
           +--ro burst-count?            uint8
 
 
 
 
 
 
 
 
module: ipi-dhcp
  +--rw dhcp
     +--rw global
     |  +--rw config
     |  |  +--rw disable-dhcp-feature?   empty
     |  +--ro state
     |     +--ro disable-dhcp-feature?   empty
     +--rw relay
     |  +--rw global
     |  |  +--rw config
     |  |  |  +--rw disable-dhcpv4-relay?   empty
     |  |  |  +--rw disable-dhcpv6-relay?   empty
     |  |  +--ro state
     |  |     +--ro disable-dhcpv4-relay?   empty
     |  |     +--ro disable-dhcpv6-relay?   empty
     |  +--rw interfaces
     |  |  +--rw interface* [name]
     |  |     +--rw name      -> ../config/name
     |  |     +--rw config
     |  |     |  +--rw name?                    -> /ipi-interface:interfaces/interface/name
     |  |     |  +--rw ipv4-relay-interface?    empty
     |  |     |  +--rw ipv4-uplink-interface?   empty
     |  |     |  +--rw ipv4-group-name?         string
     |  |     |  +--rw ipv6-relay-interface?    empty {feature-list:HAVE_IPV6}?
     |  |     |  +--rw ipv6-uplink-interface?   empty {feature-list:HAVE_IPV6}?
     |  |     |  +--rw ipv6-group-name?         string
     |  |     +--ro state
     |  |        +--ro name?                    -> /ipi-interface:interfaces/interface/name
     |  |        +--ro ipv4-relay-interface?    empty
     |  |        +--ro ipv4-uplink-interface?   empty
     |  |        +--ro ipv4-group-name?         string
     |  |        +--ro ipv6-relay-interface?    empty {feature-list:HAVE_IPV6}?
     |  |        +--ro ipv6-uplink-interface?   empty {feature-list:HAVE_IPV6}?
     |  |        +--ro ipv6-group-name?         string
     |  +--rw vrfs
     |     +--rw vrf* [vrf-name]
     |        +--rw vrf-name                     -> ../config/vrf-name
     |        +--rw config
     |        |  +--rw vrf-name?                           -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |        |  +--rw link-selection-source-ip?           inet:ipv4-address
     |        |  +--rw enable-option82?                    empty
     |        |  +--rw enable-option82-always-on?          empty
     |        |  +--rw enable-dhcpv6-pd-route-injection?   empty {feature-list:HAVE_IPV6}?
     |        |  +--rw enable-dhcpv6-duplicate-clients?    empty {feature-list:HAVE_IPV6}?
     |        |  +--rw remote-id?                          ipi-dhcp-relay-types:dhcp_remote_id_t
     |        |  +--rw subscriber-id?                      string
     |        +--ro state
     |        |  +--ro vrf-name?                           -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |        |  +--ro link-selection-source-ip?           inet:ipv4-address
     |        |  +--ro enable-option82?                    empty
     |        |  +--ro enable-option82-always-on?          empty
     |        |  +--ro enable-dhcpv6-pd-route-injection?   empty {feature-list:HAVE_IPV6}?
     |        |  +--ro enable-dhcpv6-duplicate-clients?    empty {feature-list:HAVE_IPV6}?
     |        |  +--ro remote-id?                          ipi-dhcp-relay-types:dhcp_remote_id_t
     |        |  +--ro subscriber-id?                      string
     |        |  +--ro bogus-giaddr-drops?                 uint32
     |        |  +--ro client-packets-relayed?             uint32
     |        |  +--ro server-packet-errors?               uint32
     |        |  +--ro server-packets-relayed?             uint32
     |        |  +--ro client-packet-errors?               uint32
     |        |  +--ro agent-option-errors?                uint32
     |        |  +--ro corrupt-agent-options?              uint32
     |        |  +--ro missing-agent-option?               uint32
     |        |  +--ro bad-circuit-id?                     uint32
     |        |  +--ro missing-circuit-id?                 uint32
     |        |  +--ro circuit-id?                         string
     |        +--rw ipv4-vpn-links
     |        |  +--rw ipv4-vpn-link* [interface-type]
     |        |     +--rw interface-type    -> ../config/interface-type
     |        |     +--rw config
     |        |     |  +--rw interface-type?        ipi-dhcp-relay-types:dhcp_vpn_interface_type_t
     |        |     |  +--rw interface-direction    ipi-dhcp-relay-types:dhcp_vpn_interface_direction_t
     |        |     +--ro state
     |        |        +--ro interface-type?        ipi-dhcp-relay-types:dhcp_vpn_interface_type_t
     |        |        +--ro interface-direction    ipi-dhcp-relay-types:dhcp_vpn_interface_direction_t
     |        +--rw ipv6-vpn-links
     |        |  +--rw ipv6-vpn-link* [interface-type-v6] {feature-list:HAVE_IPV6}?
     |        |     +--rw interface-type-v6    -> ../config/interface-type-v6
     |        |     +--rw config
     |        |     |  +--rw interface-type-v6?        ipi-dhcp-relay-types:dhcp_vpn_interface_type_t
     |        |     |  +--rw interface-direction-v6    ipi-dhcp-relay-types:dhcp_vpn_interface_direction_t
     |        |     +--ro state
     |        |        +--ro interface-type-v6?        ipi-dhcp-relay-types:dhcp_vpn_interface_type_t
     |        |        +--ro interface-direction-v6    ipi-dhcp-relay-types:dhcp_vpn_interface_direction_t
     |        +--ro dhcpv6-delegated-prefixes* [interface-name] {feature-list:HAVE_IPV6}?
     |        |  +--ro interface-name    -> ../state/interface-name
     |        |  +--ro state
     |        |     +--ro interface-name?       string
     |        |     +--ro next-hop?             inet:ipv6-address
     |        |     +--ro prefix?               cml-data-types:cml_ipv6_prefix_t
     |        |     +--ro preferred-lifetime?   uint32
     |        |     +--ro maximum-lifetime?     uint32
     |        |     +--ro prefix-start-time?    yang:date-and-time
     |        |     +--ro prefix-expiry-time?   yang:date-and-time
     |        |     +--ro state?                ipi-dhcp-relay-types:dhcp6_pd_route_state_t
     |        +--rw ipv4-dhcp-servers
     |        |  +--rw ipv4-dhcp-server* [ip-address]
     |        |     +--rw ip-address    -> ../config/ip-address
     |        |     +--rw config
     |        |     |  +--rw ip-address?                 inet:ipv4-address
     |        |     |  +--rw dhcpv4-server-global-vrf?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |        |     +--ro state
     |        |        +--ro ip-address?                 inet:ipv4-address
     |        |        +--ro dhcpv4-server-global-vrf?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |        +--rw ipv6-dhcp-servers {feature-list:HAVE_IPV6}?
     |        |  +--rw ipv6-dhcp-server* [ipv6-address]
     |        |     +--rw ipv6-address    -> ../config/ipv6-address
     |        |     +--rw config
     |        |     |  +--rw ipv6-address?               inet:ipv6-address {feature-list:HAVE_IPV6}?
     |        |     |  +--rw dhcpv6-server-global-vrf?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |        |     +--ro state
     |        |        +--ro ipv6-address?               inet:ipv6-address {feature-list:HAVE_IPV6}?
     |        |        +--ro dhcpv6-server-global-vrf?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |        +--rw dhcp-groups
     |        |  +--rw dhcp-group* [group-name]
     |        |     +--rw group-name    -> ../config/group-name
     |        |     +--rw config
     |        |     |  +--rw group-name?   string
     |        |     |  +--rw server*       inet:ipv4-address
     |        |     +--ro state
     |        |        +--ro group-name?   string
     |        |        +--ro server*       inet:ipv4-address
     |        +--rw dhcpv6-groups {feature-list:HAVE_IPV6}?
     |           +--rw dhcpv6-group* [group6-name]
     |              +--rw group6-name    -> ../config/group6-name
     |              +--rw config
     |              |  +--rw group6-name?   string
     |              |  +--rw server*        inet:ipv6-address
     |              +--ro state
     |                 +--ro group6-name?   string
     |                 +--ro server*        inet:ipv6-address
     +--rw client
     |  +--rw interfaces
     |     +--rw interface* [name]
     |        +--rw name                     -> ../config/name
     |        +--rw config
     |        |  +--rw name?                        -> /ipi-interface:interfaces/interface/name
     |        |  +--rw request-ipv4-dns?            empty
     |        |  +--rw request-log-server?          empty {feature-list:HAVE_SYSLOG}?
     |        |  +--rw request-host-name?           empty
     |        |  +--rw request-ntp-server?          empty {feature-list:HAVE_HOSTP_NTP}?
     |        |  +--rw request-ipv6-dns?            empty {feature-list:HAVE_IPV6}?
     |        |  +--rw request-ipv6-domain-list?    empty {feature-list:HAVE_IPV6}?
     |        |  +--rw request-ipv6-ntp-server?     empty {feature-list:HAVE_IPV6}?
     |        |  +--rw request-ipv6-rapid-commit?   empty {feature-list:HAVE_IPV6}?
     |        |  +--rw request-ipv6-vendor-opts?    empty {feature-list:HAVE_IPV6}?
     |        |  +--rw ipv6-information-request?    empty {feature-list:HAVE_IPV6}?
     |        |  +--rw ipv6-dad-wait-time?          uint16 {feature-list:HAVE_IPV6}?
     |        |  +--rw ipv6-client-duid-type?       cml-data-types:dhcp6_duid_type_t {feature-list:HAVE_IPV6}?
     |        |  +--rw ipv6-max-delegated-prefix?   uint16 {feature-list:HAVE_IPV6}?
     |        |  +--rw request-ipv6-prefix?         string {feature-list:HAVE_IPV6}?
     |        +--ro state
     |        |  +--ro name?                        -> /ipi-interface:interfaces/interface/name
     |        |  +--ro request-ipv4-dns?            empty
     |        |  +--ro request-log-server?          empty {feature-list:HAVE_SYSLOG}?
     |        |  +--ro request-host-name?           empty
     |        |  +--ro request-ntp-server?          empty {feature-list:HAVE_HOSTP_NTP}?
     |        |  +--ro request-ipv6-dns?            empty {feature-list:HAVE_IPV6}?
     |        |  +--ro request-ipv6-domain-list?    empty {feature-list:HAVE_IPV6}?
     |        |  +--ro request-ipv6-ntp-server?     empty {feature-list:HAVE_IPV6}?
     |        |  +--ro request-ipv6-rapid-commit?   empty {feature-list:HAVE_IPV6}?
     |        |  +--ro request-ipv6-vendor-opts?    empty {feature-list:HAVE_IPV6}?
     |        |  +--ro ipv6-information-request?    empty {feature-list:HAVE_IPV6}?
     |        |  +--ro ipv6-dad-wait-time?          uint16 {feature-list:HAVE_IPV6}?
     |        |  +--ro ipv6-client-duid-type?       cml-data-types:dhcp6_duid_type_t {feature-list:HAVE_IPV6}?
     |        |  +--ro ipv6-max-delegated-prefix?   uint16 {feature-list:HAVE_IPV6}?
     |        |  +--ro request-ipv6-prefix?         string {feature-list:HAVE_IPV6}?
     |        +--rw prefix-ipv6-addresses {feature-list:HAVE_IPV6}?
     |        |  +--rw prefix-ipv6-address* [prefix-name suffix-ipv6-addr]
     |        |     +--rw prefix-name         -> ../config/prefix-name
     |        |     +--rw suffix-ipv6-addr    -> ../config/suffix-ipv6-addr
     |        |     +--rw config
     |        |     |  +--rw prefix-name?        string
     |        |     |  +--rw suffix-ipv6-addr?   string
     |        |     +--ro state
     |        |        +--ro prefix-name?        string
     |        |        +--ro suffix-ipv6-addr?   string
     |        +--ro learned-prefixes* [learnt-prefix] {feature-list:HAVE_IPV6}?
     |           +--ro learnt-prefix    cml-data-types:cml_ipv6_prefix_t
     |           +--ro state
     |              +--ro learnt-prefix?        cml-data-types:cml_ipv6_prefix_t
     |              +--ro max-lifetime?         uint32
     |              +--ro preferred-lifetime?   uint32
     +--rw server
     |  +--rw interfaces
     |  |  +--rw interface* [name]
     |  |     +--rw name      -> ../config/name
     |  |     +--rw config
     |  |     |  +--rw name?                 -> /ipi-interface:interfaces/interface/name
     |  |     |  +--rw enable-ipv4-server?   empty
     |  |     |  +--rw enable-ipv6-server?   empty {feature-list:HAVE_IPV6}?
     |  |     +--ro state
     |  |        +--ro name?                 -> /ipi-interface:interfaces/interface/name
     |  |        +--ro enable-ipv4-server?   empty
     |  |        +--ro enable-ipv6-server?   empty {feature-list:HAVE_IPV6}?
     |  +--rw vrfs
     |     +--rw vrf* [vrf-name]
     |        +--rw vrf-name       -> ../config/vrf-name
     |        +--rw config
     |        |  +--rw max-lease-time?       int32
     |        |  +--rw default-lease-time?   int32
     |        |  +--rw rapid-commit?         empty
     |        |  +--rw preference?           empty
     |        |  +--rw vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |        +--ro state
     |        |  +--ro max-lease-time?       int32
     |        |  +--ro default-lease-time?   int32
     |        |  +--ro rapid-commit?         empty
     |        |  +--ro preference?           empty
     |        |  +--ro vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |        +--rw dhcp-pools
     |        |  +--rw dhcp-pool* [pool-name]
     |        |     +--rw pool-name    -> ../config/pool-name
     |        |     +--rw config
     |        |     |  +--rw pool-name?               string
     |        |     |  +--rw host-name?               string
     |        |     |  +--rw routers?                 inet:ipv4-address
     |        |     |  +--rw ntp-server*              inet:ipv4-address
     |        |     |  +--rw boot-file?               string
     |        |     |  +--rw tftp-server?             inet:ipv4-address
     |        |     |  +--rw log-server*              inet:ipv4-address
     |        |     |  +--rw dns-server*              inet:ipv4-address
     |        |     |  +--rw network?                 inet:ipv4-address
     |        |     |  +--rw netmask?                 inet:ipv4-address
     |        |     |  +--rw low-address-in-range?    inet:ipv4-address
     |        |     |  +--rw high-address-in-range?   inet:ipv4-address
     |        |     +--ro state
     |        |        +--ro pool-name?               string
     |        |        +--ro host-name?               string
     |        |        +--ro routers?                 inet:ipv4-address
     |        |        +--ro ntp-server*              inet:ipv4-address
     |        |        +--ro boot-file?               string
     |        |        +--ro tftp-server?             inet:ipv4-address
     |        |        +--ro log-server*              inet:ipv4-address
     |        |        +--ro dns-server*              inet:ipv4-address
     |        |        +--ro network?                 inet:ipv4-address
     |        |        +--ro netmask?                 inet:ipv4-address
     |        |        +--ro low-address-in-range?    inet:ipv4-address
     |        |        +--ro high-address-in-range?   inet:ipv4-address
     |        +--rw dhcp6-pools {feature-list:HAVE_IPV6}?
     |           +--rw dhcp6-pool* [pool6-name]
     |              +--rw pool6-name    -> ../config/pool6-name
     |              +--rw config
     |              |  +--rw pool6-name?                 string
     |              |  +--rw domain-name?                string
     |              |  +--rw vendor-options?             cml-data-types:cml_line_t
     |              |  +--rw ntp-server*                 inet:ipv6-address
     |              |  +--rw dns-server*                 inet:ipv6-address
     |              |  +--rw ipv6-network?               inet:ipv6-address
     |              |  +--rw ipv6-netmask?               uint8
     |              |  +--rw low-address-in-range?       inet:ipv6-address
     |              |  +--rw high-address-in-range?      inet:ipv6-address
     |              |  +--rw temporary-address?          inet:ipv6-address
     |              |  +--rw ipv6-prefix-high-address?   inet:ipv6-address
     |              |  +--rw ipv6-prefix-low-address?    inet:ipv6-address
     |              |  +--rw ipv6-prefix-netmask?        uint8
     |              +--ro state
     |                 +--ro pool6-name?                 string
     |                 +--ro domain-name?                string
     |                 +--ro vendor-options?             cml-data-types:cml_line_t
     |                 +--ro ntp-server*                 inet:ipv6-address
     |                 +--ro dns-server*                 inet:ipv6-address
     |                 +--ro ipv6-network?               inet:ipv6-address
     |                 +--ro ipv6-netmask?               uint8
     |                 +--ro low-address-in-range?       inet:ipv6-address
     |                 +--ro high-address-in-range?      inet:ipv6-address
     |                 +--ro temporary-address?          inet:ipv6-address
     |                 +--ro ipv6-prefix-high-address?   inet:ipv6-address
     |                 +--ro ipv6-prefix-low-address?    inet:ipv6-address
     |                 +--ro ipv6-prefix-netmask?        uint8
     +--rw snooping
        +--rw debug
        |  +--rw config
        |  |  +--rw options?   ipi-dhcp-snooping-types:dhcp_snooping_debug_t
        |  +--ro state
        |     +--ro options?                 ipi-dhcp-snooping-types:dhcp_snooping_debug_t
        |     +--ro terminal-debug-status?   ipi-dhcp-snooping-types:dhcp_snooping_debug_t
        +--rw snooping-bridges
        |  +--rw snooping-bridge* [bridge-id]
        |     +--rw bridge-id         -> ../config/bridge-id
        |     +--rw config!
        |     |  +--rw snooping-enable       empty
        |     |  +--rw bridge-id?            -> /ipi-network-instance:network-instances/network-instance/instance-name
        |     |  +--rw verify-mac-address?   empty
        |     |  +--rw option-82-enable?     empty
        |     |  +--rw write-delay?          uint32
        |     |  +--rw strict-validation?    empty
        |     |  +--rw vlan-range?           cml-data-types:cml_range_t
        |     +--ro state
        |     |  +--ro snooping-enable       empty
        |     |  +--ro bridge-id?            -> /ipi-network-instance:network-instances/network-instance/instance-name
        |     |  +--ro verify-mac-address?   empty
        |     |  +--ro option-82-enable?     empty
        |     |  +--ro write-delay?          uint32
        |     |  +--ro strict-validation?    empty
        |     |  +--ro vlan-range?           cml-data-types:cml_range_t
        |     +--rw arp-inspection
        |     |  +--rw config!
        |     |  |  +--rw enable        empty
        |     |  |  +--rw validate?     ipi-dhcp-snooping-types:dhcp_snooping_validation_t
        |     |  |  +--rw vlan-range?   cml-data-types:cml_range_t
        |     |  +--ro state
        |     |     +--ro enable        empty
        |     |     +--ro validate?     ipi-dhcp-snooping-types:dhcp_snooping_validation_t
        |     |     +--ro vlan-range?   cml-data-types:cml_range_t
        |     |     +--ro counters
        |     |        +--ro forwarded?   yang:counter32
        |     |        +--ro dropped?     yang:counter32
        |     +--rw vlans
        |        +--rw vlan* [vlan-id]
        |           +--rw vlan-id                  -> ../config/vlan-id
        |           +--rw config
        |           |  +--rw vlan-id?   uint16
        |           +--ro state
        |           |  +--ro vlan-id?      uint16
        |           |  +--ro statistics
        |           |     +--ro static-entries-ipv4?    yang:counter32
        |           |     +--ro dynamic-entries-ipv4?   yang:counter32
        |           |     +--ro static-entries-ipv6?    yang:counter32 {feature-list:HAVE_IPV6}?
        |           |     +--ro dynamic-entries-ipv6?   yang:counter32 {feature-list:HAVE_IPV6}?
        |           +--rw mac-addresses-ipv4
        |           |  +--rw mac-address-ipv4* [mac-address]
        |           |     +--rw mac-address    -> ../config/mac-address
        |           |     +--rw config
        |           |     |  +--rw if-name         -> /ipi-interface:interfaces/interface/name
        |           |     |  +--rw ipv4-address    inet:ipv4-address
        |           |     |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
        |           |     +--ro state
        |           |        +--ro if-name         -> /ipi-interface:interfaces/interface/name
        |           |        +--ro ipv4-address    inet:ipv4-address
        |           |        +--ro mac-address?    cml-data-types:cml_mac_addr_t
        |           +--rw mac-addresses-ipv6 {feature-list:HAVE_IPV6}?
        |           |  +--rw mac-address-ipv6* [mac-address]
        |           |     +--rw mac-address    -> ../config/mac-address
        |           |     +--rw config
        |           |     |  +--rw if-name         -> /ipi-interface:interfaces/interface/name
        |           |     |  +--rw ipv6-address    inet:ipv6-address
        |           |     |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
        |           |     +--ro state
        |           |        +--ro if-name         -> /ipi-interface:interfaces/interface/name
        |           |        +--ro ipv6-address    inet:ipv6-address
        |           |        +--ro mac-address?    cml-data-types:cml_mac_addr_t
        |           +--ro snooping-binding-info
        |              +--ro ipv4* [mac-address ip-address]
        |              |  +--ro mac-address    -> ../state/mac-address
        |              |  +--ro ip-address     -> ../state/ip-address
        |              |  +--ro state
        |              |     +--ro mac-address?   cml-data-types:cml_mac_addr_t
        |              |     +--ro lease-time?    uint32
        |              |     +--ro type?          ipi-dhcp-snooping-types:dhcp_snooping_binding_type_t
        |              |     +--ro if-name?       string
        |              |     +--ro ip-address?    inet:ipv4-address
        |              +--ro ipv6* [mac-address ip-address] {feature-list:HAVE_IPV6}?
        |                 +--ro mac-address    -> ../state/mac-address
        |                 +--ro ip-address     -> ../state/ip-address
        |                 +--ro state
        |                    +--ro mac-address?   cml-data-types:cml_mac_addr_t
        |                    +--ro lease-time?    uint32
        |                    +--ro type?          ipi-dhcp-snooping-types:dhcp_snooping_binding_type_t
        |                    +--ro if-name?       string
        |                    +--ro ip-address?    inet:ipv6-address
        +--rw interfaces
           +--rw interface* [name]
              +--rw name                     -> ../config/name
              +--rw config
              |  +--rw name?   -> /ipi-interface:interfaces/interface/name
              +--ro state
              |  +--ro name?   -> /ipi-interface:interfaces/interface/name
              +--rw trust
              |  +--rw config
              |  |  +--rw snooping-trust?   empty
              |  +--ro state
              |     +--ro snooping-trust?   empty
              +--rw verify
              |  +--rw config!
              |  |  +--rw verify-snooping-vlan        empty
              |  |  +--rw verify-access-group-mode?   empty
              |  +--ro state
              |     +--ro verify-snooping-vlan        empty
              |     +--ro verify-access-group-mode?   empty
              +--ro snooping-binding-info
              |  +--ro ipv4-entries
              |  |  +--ro ipv4-entry* [ip-address]
              |  |     +--ro ip-address    -> ../state/ip-address
              |  |     +--ro state
              |  |        +--ro interface?     string
              |  |        +--ro filter-type?   ipi-dhcp-snooping-types:dhcp_snooping_filter_type_t
              |  |        +--ro vlan-id?       uint16
              |  |        +--ro mac-address?   cml-data-types:cml_mac_addr_t
              |  |        +--ro ip-address?    inet:ipv4-address
              |  +--ro ipv6-entries {feature-list:HAVE_IPV6}?
              |     +--ro ipv6-entry* [ip-address]
              |        +--ro ip-address    -> ../state/ip-address
              |        +--ro state
              |           +--ro interface?     string
              |           +--ro filter-type?   ipi-dhcp-snooping-types:dhcp_snooping_filter_type_t
              |           +--ro vlan-id?       uint16
              |           +--ro mac-address?   cml-data-types:cml_mac_addr_t
              |           +--ro ip-address?    inet:ipv6-address
              +--ro source-binding-info
                 +--ro ipv4-entries
                 |  +--ro ipv4-entry* [ip-address]
                 |     +--ro ip-address    -> ../state/ip-address
                 |     +--ro state
                 |        +--ro interface?     string
                 |        +--ro filter-type?   ipi-dhcp-snooping-types:dhcp_snooping_filter_type_t
                 |        +--ro vlan-id?       uint16
                 |        +--ro mac-address?   cml-data-types:cml_mac_addr_t
                 |        +--ro ip-address?    inet:ipv4-address
                 +--ro ipv6-entries {feature-list:HAVE_IPV6}?
                    +--ro ipv6-entry* [ip-address]
                       +--ro ip-address    -> ../state/ip-address
                       +--ro state
                          +--ro interface?     string
                          +--ro filter-type?   ipi-dhcp-snooping-types:dhcp_snooping_filter_type_t
                          +--ro vlan-id?       uint16
                          +--ro mac-address?   cml-data-types:cml_mac_addr_t
                          +--ro ip-address?    inet:ipv6-address
 
  rpcs:
    +---x clear-relay-stats {feature-list:HAVE_HOSTPD,feature-list:HAVE_HOSTP_DHCP_RELAY,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    +---x clear-relay-option-stats {feature-list:HAVE_HOSTPD,feature-list:HAVE_HOSTP_DHCP_RELAY,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    +---x clear-dhcpv6-pd-route {feature-list:HAVE_HOSTPD,feature-list:HAVE_HOSTP_DHCP_RELAY,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    |  +---w input
    |     +---w vrf-name    string
    +---x dhcp-snooping-write-database {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_L2,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    |  +---w input
    |     +---w bridge-id    string
    +---x dhcp-snooping-renew-database {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_L2,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    |  +---w input
    |     +---w bridge-id    string
    +---x dhcp-snooping-write-source-binding-database {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_L2,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    |  +---w input
    |     +---w bridge-id    string
    +---x dhcp-snooping-renew-source-database {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_L2,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    |  +---w input
    |     +---w bridge-id    string
    +---x dhcp-snooping-clear-source-binding-database {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_L2,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    |  +---w input
    |     +---w bridge-id    string
    +---x dhcp-snooping-clear-database {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_L2,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    |  +---w input
    |     +---w bridge-id    string
    +---x dhcp-snooping-terminal-debug-on {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_L2,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-dhcp-snooping-types:dhcp_snooping_debug_t
    +---x dhcp-snooping-terminal-debug-off {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_L2,feature-list:HAVE_DHCP_CLIENT_OR_HAVE_HOSTPD_OR_HAVE_DHCP_SNOOP}?
       +---w input
          +---w terminal-debug-options    ipi-dhcp-snooping-types:dhcp_snooping_debug_t
 
  notifications:
    +---n dhcpv6-relay-pd-route
       +--ro severity?         cml-data-types:cml_notif_severity_t
       +--ro eventClass?       cml-data-types:cml_notif_class_t
       +--ro vrf-name?         string
       +--ro interface-name?   string
       +--ro state?            ipi-dhcp-relay-types:dhcp6_pd_route_state_t
       +--ro prefix?           cml-data-types:cml_ipv6_prefix_t
       +--ro next-hop?         inet:ipv6-address
 
module: ipi-dns-client
  +--rw dns
     +--rw vrfs
     |  +--rw vrf* [vrf-name]
     |     +--rw vrf-name          -> ../config/vrf-name
     |     +--rw config
     |     |  +--rw vrf-name?              -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |     |  +--rw lookup-enabled?        boolean
     |     |  +--rw default-domain-name?   inet:domain-name
     |     +--ro state
     |     |  +--ro vrf-name?              -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |     |  +--ro lookup-enabled?        boolean
     |     |  +--ro default-domain-name?   inet:domain-name
     |     +--rw servers
     |     |  +--rw server* [address]
     |     |     +--rw address    -> ../config/address
     |     |     +--rw config
     |     |     |  +--rw address?   inet:ip-address
     |     |     +--ro state
     |     |        +--ro address?   inet:ip-address
     |     +--rw search-domains
     |     |  +--rw search-domain* [domain-name]
     |     |     +--rw domain-name    -> ../config/domain-name
     |     |     +--rw config
     |     |     |  +--rw domain-name?   inet:domain-name
     |     |     +--ro state
     |     |        +--ro domain-name?   inet:domain-name
     |     +--rw host-entries
     |        +--rw host-entry* [hostname]
     |           +--rw hostname    -> ../config/hostname
     |           +--rw config
     |           |  +--rw hostname?       cml-data-types:cml_host_string_t
     |           |  +--rw ipv4-address?   inet:ipv4-address
     |           |  +--rw ipv6-address?   inet:ipv6-address {feature-list:HAVE_IPV6}?
     |           +--ro state
     |              +--ro hostname?       cml-data-types:cml_host_string_t
     |              +--ro ipv4-address?   inet:ipv4-address
     |              +--ro ipv6-address?   inet:ipv6-address {feature-list:HAVE_IPV6}?
     +--rw debug
        +--rw config
        |  +--rw enable?   empty
        +--ro state
           +--ro enable?                  empty
           +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
 
  rpcs:
    +---x dns-client-terminal-debug-on {feature-list:HAVE_DNS_CLIENT}?
    +---x dns-client-terminal-debug-off {feature-list:HAVE_DNS_CLIENT}?
 
module: ipi-dns-relay
  +--rw dns-relay
     +--rw config
     |  +--rw enable-dns-feature?   boolean
     |  +--rw enable-dnsv4-relay?   boolean
     |  +--rw enable-dnsv6-relay?   boolean {feature-list:HAVE_IPV6}?
     |  +--rw dns-server-v4-addr*   inet:ipv4-address
     |  +--rw dns-server-v6-addr*   inet:ipv6-address {feature-list:HAVE_IPV6}?
     +--ro state
     |  +--ro enable-dns-feature?   boolean
     |  +--ro enable-dnsv4-relay?   boolean
     |  +--ro enable-dnsv6-relay?   boolean {feature-list:HAVE_IPV6}?
     |  +--ro dns-server-v4-addr*   inet:ipv4-address
     |  +--ro dns-server-v6-addr*   inet:ipv6-address {feature-list:HAVE_IPV6}?
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name      -> ../config/name
     |     +--rw config
     |     |  +--rw name?                  -> /ipi-interface:interfaces/interface/name
     |     |  +--rw enable-dnsv4-relay?    empty
     |     |  +--rw enable-dnsv6-relay?    empty {feature-list:HAVE_IPV6}?
     |     |  +--rw dns-relay-uplink?      empty
     |     |  +--rw dns-relay-v6-uplink?   empty {feature-list:HAVE_IPV6}?
     |     +--ro state
     |        +--ro name?                  -> /ipi-interface:interfaces/interface/name
     |        +--ro enable-dnsv4-relay?    empty
     |        +--ro enable-dnsv6-relay?    empty {feature-list:HAVE_IPV6}?
     |        +--ro dns-relay-uplink?      empty
     |        +--ro dns-relay-v6-uplink?   empty {feature-list:HAVE_IPV6}?
     +--rw vrfs {feature-list:HAVE_VRF}?
        +--rw vrf* [vrf-name]
           +--rw vrf-name    -> ../config/vrf-name
           +--rw config
           |  +--rw vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
           |  +--rw dns-server-v4-addr*   inet:ipv4-address
           |  +--rw dns-server-v6-addr*   inet:ipv6-address {feature-list:HAVE_IPV6}?
           +--ro state
              +--ro vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
              +--ro dns-server-v4-addr*   inet:ipv4-address
              +--ro dns-server-v6-addr*   inet:ipv6-address {feature-list:HAVE_IPV6}?
 
 
module: ipi-elk
  +--rw elk
     +--rw metricbeats
     |  +--rw metricbeat* [ip]
     |     +--rw ip        -> ../config/ip
     |     +--rw config
     |     |  +--rw ip?         inet:ipv4-address
     |     |  +--rw username    string
     |     |  +--rw password    string
     |     +--ro state
     |        +--ro ip?         inet:ipv4-address
     |        +--ro username    string
     |        +--ro password    string
     +--rw filebeats
        +--rw filebeat* [ip]
           +--rw ip        -> ../config/ip
           +--rw config
           |  +--rw ip?                 inet:ipv4-address
           |  +--rw certificate-path?   string
           +--ro state
              +--ro ip?                 inet:ipv4-address
              +--ro certificate-path?   string
 
  rpcs:
    +---x elk-metricbeat-service-enable {feature-list:HAVE_HOSTPD}?
    |  +---w input
    |     +---w vrf-name    string
    +---x elk-filebeat-service-enable {feature-list:HAVE_HOSTPD}?
    |  +---w input
    |     +---w vrf-name    string
    +---x elk-metricbeat-service-disable {feature-list:HAVE_HOSTPD}?
    |  +---w input
    |     +---w vrf-name    string
    +---x elk-filebeat-service-disable {feature-list:HAVE_HOSTPD}?
       +---w input
          +---w vrf-name    string
 
 
module: ipi-enhanced-pbr
  +--rw enhanced-pbr
     +--ro class-maps-default
     |  +--ro class-map-default* [name]
     |     +--ro name     -> ../state/name
     |     +--ro state
     |        +--ro name?             string
     |        +--ro type?             ipi-enhanced-pbr-types:epbr_class_map_t
     |        +--ro match-criteria?   ipi-enhanced-pbr-types:epbr_match_criteria_t
     +--rw class-maps
     |  +--rw class-map* [name class-type]
     |     +--rw name             -> ../config/name
     |     +--rw class-type       -> ../config/class-type
     |     +--rw config
     |     |  +--rw name?                    string
     |     |  +--rw class-type?              ipi-enhanced-pbr-types:epbr_class_map_t
     |     |  +--rw match-criteria           ipi-enhanced-pbr-types:epbr_match_criteria_t
     |     |  +--rw reference-description?   cml-data-types:cml_line_t
     |     +--ro state
     |     |  +--ro name?                    string
     |     |  +--ro class-type?              ipi-enhanced-pbr-types:epbr_class_map_t
     |     |  +--ro match-criteria           ipi-enhanced-pbr-types:epbr_match_criteria_t
     |     |  +--ro reference-description?   cml-data-types:cml_line_t
     |     +--rw match-filters
     |        +--rw config
     |        |  +--rw protocol?           cml-data-types:cml_range_t
     |        |  +--rw port?               cml-data-types:cml_range_t
     |        |  +--rw destination-port?   cml-data-types:cml_range_t
     |        |  +--rw source-port?        cml-data-types:cml_range_t
     |        |  +--rw packet-length?      cml-data-types:cml_range_t
     |        |  +--rw fragment-type?      ipi-enhanced-pbr-types:epbr_fragment_type_t
     |        +--ro state
     |        |  +--ro protocol?           cml-data-types:cml_range_t
     |        |  +--ro port?               cml-data-types:cml_range_t
     |        |  +--ro destination-port?   cml-data-types:cml_range_t
     |        |  +--ro source-port?        cml-data-types:cml_range_t
     |        |  +--ro packet-length?      cml-data-types:cml_range_t
     |        |  +--ro fragment-type?      ipi-enhanced-pbr-types:epbr_fragment_type_t
     |        +--rw ipv4
     |        |  +--rw config
     |        |  |  +--rw destination-prefix?   cml-data-types:cml_ipv4_addr_prefix_t
     |        |  |  +--rw source-prefix?        cml-data-types:cml_ipv4_addr_prefix_t
     |        |  +--ro state
     |        |  |  +--ro destination-prefix?   cml-data-types:cml_ipv4_addr_prefix_t
     |        |  |  +--ro source-prefix?        cml-data-types:cml_ipv4_addr_prefix_t
     |        |  +--rw icmp
     |        |     +--rw config
     |        |     |  +--rw icmp-type?   cml-data-types:cml_range_t
     |        |     |  +--rw icmp-code?   cml-data-types:cml_range_t
     |        |     +--ro state
     |        |        +--ro icmp-type?   cml-data-types:cml_range_t
     |        |        +--ro icmp-code?   cml-data-types:cml_range_t
     |        +--rw tcp-flag
     |        |  +--rw config
     |        |  |  +--rw value?      string
     |        |  |  +--rw bit-mask?   string
     |        |  +--ro state
     |        |     +--ro value?      string
     |        |     +--ro bit-mask?   string
     |        +--rw dscp
     |           +--rw config
     |           |  +--rw match-dscp-value?   cml-data-types:cml_range_t
     |           +--ro state
     |              +--ro match-dscp-value?   cml-data-types:cml_range_t
     +--rw policy-maps
        +--rw policy-map* [policy-map-name type]
           +--rw policy-map-name    -> ../config/policy-map-name
           +--rw type               -> ../config/type
           +--rw config
           |  +--rw policy-map-name?         string
           |  +--rw type?                    ipi-enhanced-pbr-types:epbr_policy_map_t
           |  +--rw reference-description?   cml-data-types:cml_line_t
           +--ro state
           |  +--ro policy-map-name?         string
           |  +--ro type?                    ipi-enhanced-pbr-types:epbr_policy_map_t
           |  +--ro reference-description?   cml-data-types:cml_line_t
           +--rw classes
              +--rw class* [class-map-name class-type]
                 +--rw class-map-name    -> ../config/class-map-name
                 +--rw class-type        -> ../config/class-type
                 +--rw config
                 |  +--rw class-map-name?   string
                 |  +--rw class-type?       ipi-enhanced-pbr-types:epbr_class_map_t
                 +--ro state
                 |  +--ro class-map-name?   string
                 |  +--ro class-type?       ipi-enhanced-pbr-types:epbr_class_map_t
                 +--rw policy-actions
                    +--rw config
                    |  +--rw drop-traffic?     empty
                    |  +--rw dscp-set-value?   ipi-enhanced-pbr-types:epbr_hex_dscp_t
                    +--ro state
                    |  +--ro drop-traffic?     empty
                    |  +--ro dscp-set-value?   ipi-enhanced-pbr-types:epbr_hex_dscp_t
                    +--rw police
                    |  +--rw config
                    |  |  +--rw rate?        uint64
                    |  |  +--rw rate-unit?   ipi-enhanced-pbr-types:epbr_rate_unit_t
                    |  +--ro state
                    |     +--ro rate?        uint64
                    |     +--ro rate-unit?   ipi-enhanced-pbr-types:epbr_rate_unit_t
                    +--rw redirect
                       +--rw ipv4
                          +--rw extcommunity
                             +--rw config
                             |  +--rw route-target?   ipi-enhanced-pbr-types:epbr_vrf_rt_t
                             +--ro state
                                +--ro route-target?   ipi-enhanced-pbr-types:epbr_vrf_rt_t
 
 
module: ipi-erpsv2
  +--rw erpsv2 {feature-list:HAVE_G8032V2}?
     +--rw rings
     |  +--rw ring* [ring-name]
     |     +--rw ring-name    -> ../config/ring-name
     |     +--rw config
     |     |  +--rw ring-name?        string
     |     |  +--rw east-interface?   -> /ipi-interface:interfaces/interface/name
     |     |  +--rw west-interface?   -> /ipi-interface:interfaces/interface/name
     |     |  +--rw description?      cml-data-types:cml_line_t
     |     +--ro state
     |        +--ro ring-name?        string
     |        +--ro east-interface?   -> /ipi-interface:interfaces/interface/name
     |        +--ro west-interface?   -> /ipi-interface:interfaces/interface/name
     |        +--ro description?      cml-data-types:cml_line_t
     +--rw profiles
     |  +--rw profile* [profile-name]
     |     +--rw profile-name    -> ../config/profile-name
     |     +--rw config
     |     |  +--rw profile-name?            string
     |     |  +--rw wait-to-restore-timer?   uint8
     |     |  +--rw hold-off-timer?          uint16
     |     |  +--rw guard-time?              uint16
     |     |  +--rw protection-mode?         ipi-erpsv2-types:erpsv2_protection_mode_t
     |     +--ro state
     |        +--ro profile-name?            string
     |        +--ro wait-to-restore-timer?   uint8
     |        +--ro hold-off-timer?          uint16
     |        +--ro guard-time?              uint16
     |        +--ro protection-mode?         ipi-erpsv2-types:erpsv2_protection_mode_t
     |        +--ro wait-to-block-time?      uint32
     +--rw erp-instances
     |  +--rw erp-instance* [name]
     |     +--rw name                 -> ../config/name
     |     +--rw config
     |     |  +--rw name?                     string
     |     |  +--rw ring-name?                -> /erpsv2/rings/ring/ring-name
     |     |  +--rw mapped-profile-name?      -> /erpsv2/profiles/profile/profile-name
     |     |  +--rw ring-type?                ipi-erpsv2-types:erpsv2_ring_type_t
     |     |  +--rw enable-tcn-propagation?   empty
     |     |  +--rw tcn-to-instances*         string
     |     |  +--rw non-virtual-channel?      empty
     |     |  +--rw ring-id?                  uint8
     |     |  +--rw description?              cml-data-types:cml_line_t
     |     +--ro state
     |     |  +--ro name?                     string
     |     |  +--ro ring-name?                -> /erpsv2/rings/ring/ring-name
     |     |  +--ro mapped-profile-name?      -> /erpsv2/profiles/profile/profile-name
     |     |  +--ro ring-type?                ipi-erpsv2-types:erpsv2_ring_type_t
     |     |  +--ro enable-tcn-propagation?   empty
     |     |  +--ro tcn-to-instances*         string
     |     |  +--ro non-virtual-channel?      empty
     |     |  +--ro ring-id?                  uint8
     |     |  +--ro description?              cml-data-types:cml_line_t
     |     |  +--ro current-state?            ipi-erpsv2-types:erpsv2_ring_state_t
     |     |  +--ro previous-state?           ipi-erpsv2-types:erpsv2_ring_state_t
     |     +--rw associate-rings
     |     |  +--rw associate-ring* [associate-ring-name]
     |     |     +--rw associate-ring-name    -> ../config/associate-ring-name
     |     |     +--rw config
     |     |     |  +--rw associate-ring-name?   string
     |     |     +--ro state
     |     |        +--ro associate-ring-name?   string
     |     +--rw instance-role
     |     |  +--rw config
     |     |  |  +--rw (role-option)?
     |     |  |     +--:(owner)
     |     |  |     |  +--rw owner-port-id?           ipi-erpsv2-types:erpsv2_port_id_t
     |     |  |     +--:(neighbor)
     |     |  |     |  +--rw neighbor-port-id?        ipi-erpsv2-types:erpsv2_port_id_t
     |     |  |     +--:(next-neighbor)
     |     |  |     |  +--rw next-neighbor-port-id?   ipi-erpsv2-types:erpsv2_port_id_t
     |     |  |     +--:(non-owner)
     |     |  |        +--rw non-owner?               empty
     |     |  +--ro state
     |     |     +--ro (role-option)?
     |     |        +--:(owner)
     |     |        |  +--ro owner-port-id?           ipi-erpsv2-types:erpsv2_port_id_t
     |     |        +--:(neighbor)
     |     |        |  +--ro neighbor-port-id?        ipi-erpsv2-types:erpsv2_port_id_t
     |     |        +--:(next-neighbor)
     |     |        |  +--ro next-neighbor-port-id?   ipi-erpsv2-types:erpsv2_port_id_t
     |     |        +--:(non-owner)
     |     |           +--ro non-owner?               empty
     |     +--rw aps-channel
     |     |  +--rw config
     |     |  |  +--rw level?   uint8
     |     |  +--ro state
     |     |     +--ro level?   uint8
     |     +--rw aps-channel-vlans
     |     |  +--rw aps-channel-vlan* [vlan-id]
     |     |     +--rw vlan-id    -> ../config/vlan-id
     |     |     +--rw config
     |     |     |  +--rw vlan-id?         uint16
     |     |     |  +--rw inner-vlan-id?   uint16
     |     |     +--ro state
     |     |        +--ro vlan-id?         uint16
     |     |        +--ro inner-vlan-id?   uint16
     |     +--rw data
     |     |  +--rw config
     |     |  |  +--rw data-vlan?   cml-data-types:cml_range_t
     |     |  +--ro state
     |     |     +--ro data-vlan?   cml-data-types:cml_range_t
     |     +--rw virtual-channel
     |     |  +--rw config!
     |     |  |  +--rw channel-id           uint16
     |     |  |  +--rw attached-instance    -> /erpsv2/erp-instances/erp-instance/name
     |     |  +--ro state
     |     |     +--ro channel-id           uint16
     |     |     +--ro attached-instance    -> /erpsv2/erp-instances/erp-instance/name
     |     +--rw east-link
     |     |  +--ro state
     |     |     +--ro link-name?                       string
     |     |     +--ro link-state?                      ipi-erpsv2-types:erpsv2_link_state_t
     |     |     +--ro remote-node-id?                  cml-data-types:cml_mac_addr_t
     |     |     +--ro remote-blocked-port-reference?   uint8
     |     +--rw west-link
     |     |  +--ro state
     |     |     +--ro link-name?                       string
     |     |     +--ro link-state?                      ipi-erpsv2-types:erpsv2_link_state_t
     |     |     +--ro remote-node-id?                  cml-data-types:cml_mac_addr_t
     |     |     +--ro remote-blocked-port-reference?   uint8
     |     +--rw aps-statistics
     |        +--ro state
     |           +--ro tx-ring-aps-messages?   yang:counter32
     |           +--ro rx-ring-aps-messages?   yang:counter32
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-erpsv2-types:erpsv2_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-erpsv2-types:erpsv2_debug_t
     |     +--ro terminal-debug-status?   ipi-erpsv2-types:erpsv2_debug_t
     +--rw subinterfaces
        +--rw subinterface* [name] {feature-list:HAVE_SUBINTERFACE,feature-list:HAVE_G8032V2}?
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?            -> /ipi-interface:interfaces/interface/name
           |  +--rw instance-name?   ipi-erpsv2-types:erpsv2_subinterface_instance_type_t
           +--ro state
              +--ro name?            -> /ipi-interface:interfaces/interface/name
              +--ro instance-name?   ipi-erpsv2-types:erpsv2_subinterface_instance_type_t
 
  rpcs:
    +---x erpsv2-switch-erp-instance {feature-list:HAVE_G8032V2,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w instance-name    string
    |     +---w operation        ipi-erpsv2-types:erpsv2_switch_operation_t
    |     +---w port-id          ipi-erpsv2-types:erpsv2_port_id_t
    +---x erpsv2-clear-ring-erp-instance {feature-list:HAVE_G8032V2,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w instance-name    string
    +---x erpsv2-clear-aps-statistics {feature-list:HAVE_G8032V2,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w instance-name    string
    +---x erpsv2-terminal-debug-on {feature-list:HAVE_G8032V2}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-erpsv2-types:erpsv2_debug_t
    +---x erpsv2-terminal-debug-off {feature-list:HAVE_G8032V2}?
       +---w input
          +---w terminal-debug-options    ipi-erpsv2-types:erpsv2_debug_t
 
  notifications:
    +---n erpsv2-instance-state-change-notification {feature-list:HAVE_G8032V2}?
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro name?             string
    |  +--ro current-state?    ipi-erpsv2-types:erpsv2_ring_state_t
    |  +--ro previous-state?   ipi-erpsv2-types:erpsv2_ring_state_t
    +---n erpsv2-east-interface-state-change-notification {feature-list:HAVE_G8032V2}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro link-name?    string
    |  +--ro link-state?   ipi-erpsv2-types:erpsv2_link_state_t
    +---n erpsv2-west-interface-state-change-notification {feature-list:HAVE_G8032V2}?
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro name?         string
       +--ro link-name?    string
       +--ro link-state?   ipi-erpsv2-types:erpsv2_link_state_t
 
 
module: ipi-ethernet-vpn
  +--rw evpn
     +--rw multi-homing
     |  +--rw config
     |  |  +--rw esi-hold-time?   uint32 {feature-list:HAVE_BGP_EVPN}?
     |  +--ro state
     |     +--ro esi-hold-time?   uint32 {feature-list:HAVE_BGP_EVPN}?
     +--rw global
     |  +--rw config
     |  |  +--rw enable-vxlan-multihoming?       empty {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO}?
     |  |  +--rw enable-evpn-mpls-multihoming?   empty {feature-list:HAVE_MPLS,feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
     |  |  +--rw enable-evpn-srv6-multihoming?   empty {feature-list:HAVE_SRV6,feature-list:HAVE_BGP_EVPN}?
     |  |  +--rw enable-irb?                     empty {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO}?
     |  |  +--rw enable-mpls-irb?                empty {feature-list:HAVE_TUNNEL,feature-list:HAVE_MPLS,feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
     |  |  +--rw enable-evpn-etree?              empty {feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
     |  +--ro state
     |     +--ro enable-vxlan-multihoming?       empty {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO}?
     |     +--ro enable-evpn-mpls-multihoming?   empty {feature-list:HAVE_MPLS,feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
     |     +--ro enable-evpn-srv6-multihoming?   empty {feature-list:HAVE_SRV6,feature-list:HAVE_BGP_EVPN}?
     |     +--ro enable-irb?                     empty {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO}?
     |     +--ro enable-mpls-irb?                empty {feature-list:HAVE_TUNNEL,feature-list:HAVE_MPLS,feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
     |     +--ro enable-evpn-etree?              empty {feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
     +--rw irb-forwarding
     |  +--rw config
     |  |  +--rw mac-address?   cml-data-types:cml_mac_addr_t {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO,feature-list:HAVE_BGP_EVPN}?
     |  +--ro state
     |  |  +--ro mac-address?   cml-data-types:cml_mac_addr_t {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO,feature-list:HAVE_BGP_EVPN}?
     |  +--rw irb-interfaces
     |     +--rw irb-interface* [name]
     |        +--rw name      -> ../config/name
     |        +--rw config
     |        |  +--rw name?          -> /ipi-interface:interfaces/interface/name {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO,feature-list:HAVE_BGP_EVPN}?
     |        |  +--rw gateway-mac?   empty {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO,feature-list:HAVE_VXLAN,feature-list:HAVE_BGP_EVPN}?
     |        +--ro state
     |           +--ro name?          -> /ipi-interface:interfaces/interface/name {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO,feature-list:HAVE_BGP_EVPN}?
     |           +--ro gateway-mac?   empty {feature-list:HAVE_TUNNEL,feature-list:HAVE_NVO,feature-list:HAVE_VXLAN,feature-list:HAVE_BGP_EVPN}?
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name                   -> ../config/name
     |     +--rw config
     |     |  +--rw name?              -> /ipi-interface:interfaces/interface/name
     |     |  +--rw evpn-segment-id?   string
     |     |  +--rw system-mac?        cml-data-types:cml_mac_addr_t
     |     |  +--rw redundancy-mode?   ipi-ethernet-vpn-types:evpn_esi_load_balance_mode_t {feature-list:HAVE_DUNE}?
     |     +--ro state
     |     |  +--ro name?              -> /ipi-interface:interfaces/interface/name
     |     |  +--ro evpn-segment-id?   string
     |     |  +--ro system-mac?        cml-data-types:cml_mac_addr_t
     |     |  +--ro redundancy-mode?   ipi-ethernet-vpn-types:evpn_esi_load_balance_mode_t {feature-list:HAVE_DUNE}?
     |     +--rw mh-load-balance-esi {feature-list:HAVE_DUNE}?
     |     |  +--rw config!
     |     |  |  +--rw service-carving      ipi-ethernet-vpn-types:evpn_esi_svc_carving_df_election_t
     |     |  |  +--rw preference-weight?   uint16
     |     |  |  +--rw no-preempt?          empty
     |     |  |  +--rw ac-driven?           empty
     |     |  +--ro state
     |     |     +--ro service-carving      ipi-ethernet-vpn-types:evpn_esi_svc_carving_df_election_t
     |     |     +--ro preference-weight?   uint16
     |     |     +--ro no-preempt?          empty
     |     |     +--ro ac-driven?           empty
     |     +--rw access-interfaces
     |        +--rw access-interface* [access-if] {feature-list:HAVE_SUBINTERFACE,feature-list:HAVE_NVO}?
     |           +--rw access-if                 -> ../config/access-if
     |           +--rw config
     |           |  +--rw access-if?                  ipi-ethernet-vpn-types:evpn_acc_if_t
     |           |  +--rw dynamic-learning-disable?   empty
     |           |  +--rw arp-nd-flood-suppress?      empty
     |           |  +--rw cos?                        int16
     |           |  +--rw arp-cache-disable?          empty
     |           |  +--rw nd-cache-disable?           empty
     |           |  +--rw mac-hold-time?              int16
     |           |  +--rw mac-address*                cml-data-types:cml_mac_addr_t
     |           |  +--rw garp-gna-enable?            empty {feature-list:HAVE_BGP_EVPN}?
     |           +--ro state
     |           |  +--ro access-if?                  ipi-ethernet-vpn-types:evpn_acc_if_t
     |           |  +--ro dynamic-learning-disable?   empty
     |           |  +--ro arp-nd-flood-suppress?      empty
     |           |  +--ro cos?                        int16
     |           |  +--ro arp-cache-disable?          empty
     |           |  +--ro nd-cache-disable?           empty
     |           |  +--ro mac-hold-time?              int16
     |           |  +--ro mac-address*                cml-data-types:cml_mac_addr_t
     |           |  +--ro garp-gna-enable?            empty {feature-list:HAVE_BGP_EVPN}?
     |           +--rw evpn-id-mappings {feature-list:HAVE_SUBINTERFACE,feature-list:HAVE_NVO}?
     |           |  +--rw config
     |           |  |  +--rw evpn-identifier?   uint32 {feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO,feature-list:HAVE_MPLS_OR_HAVE_VXLAN_OR_HAVE_SRV6}?
     |           |  +--ro state
     |           |     +--ro evpn-identifier?   uint32 {feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO,feature-list:HAVE_MPLS_OR_HAVE_VXLAN_OR_HAVE_SRV6}?
     |           +--rw ipv4-host-mac-mappings
     |           |  +--rw ipv4-host-mac-mapping* [mac-address ipv4-address] {feature-list:HAVE_SUBINTERFACE,feature-list:HAVE_NVO}?
     |           |     +--rw mac-address     -> ../config/mac-address
     |           |     +--rw ipv4-address    -> ../config/ipv4-address
     |           |     +--rw config
     |           |     |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
     |           |     |  +--rw ipv4-address?   inet:ipv4-address
     |           |     +--ro state
     |           |        +--ro mac-address?    cml-data-types:cml_mac_addr_t
     |           |        +--ro ipv4-address?   inet:ipv4-address
     |           +--rw ipv6-host-mac-mappings
     |              +--rw ipv6-host-mac-mapping* [mac-address ipv6-address] {feature-list:HAVE_SUBINTERFACE,feature-list:HAVE_NVO,feature-list:HAVE_IPV6}?
     |                 +--rw mac-address     -> ../config/mac-address
     |                 +--rw ipv6-address    -> ../config/ipv6-address
     |                 +--rw config
     |                 |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
     |                 |  +--rw ipv6-address?   inet:ipv6-address
     |                 +--ro state
     |                    +--ro mac-address?    cml-data-types:cml_mac_addr_t
     |                    +--ro ipv6-address?   inet:ipv6-address
     +--rw vrfs
        +--rw vrf* [vrf-name]
           +--rw vrf-name    -> ../config/vrf-name
           +--rw config
           |  +--rw vrf-name?       -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
           |  +--rw service-type?   cml-data-types:cml_evpn_service_type_t
           +--ro state
              +--ro vrf-name?       -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
              +--ro service-type?   cml-data-types:cml_evpn_service_type_t
 
 
module: ipi-event-manager
  +--rw event-manager
     +--rw config
     |  +--rw feature?   cml-data-types:cml_enable_disable_t
     +--ro state
     |  +--ro feature?   cml-data-types:cml_enable_disable_t
     +--rw event-entries
     |  +--rw event-entry* [event-name]
     |     +--rw event-name    -> ../config/event-name
     |     +--rw config
     |     |  +--rw event-name?      string
     |     |  +--rw event-type       ipi-event-manager-types:event_manager_event_type_t
     |     |  +--rw event-id         string
     |     |  +--rw event-pattern?   cml-data-types:cml_line_t
     |     |  +--rw severity?        ipi-event-manager-types:event_manager_severity_level_t
     |     +--ro state
     |        +--ro event-name?      string
     |        +--ro event-type       ipi-event-manager-types:event_manager_event_type_t
     |        +--ro event-id         string
     |        +--ro event-pattern?   cml-data-types:cml_line_t
     |        +--ro severity?        ipi-event-manager-types:event_manager_severity_level_t
     |        +--ro trigger-count?   yang:counter64
     |        +--ro policy-count?    yang:counter64
     |        +--ro status?          ipi-event-manager-types:event_manager_status_t
     |        +--ro policy-map?      -> /event-manager/policies/policy/config/policy-name
     +--rw action-entries
     |  +--rw action-entry* [action-name]
     |     +--rw action-name    -> ../config/action-name
     |     +--rw config
     |     |  +--rw action-name?     string
     |     |  +--rw action-type      ipi-event-manager-types:event_manager_action_type_t
     |     |  +--rw action-script    string
     |     +--ro state
     |        +--ro action-name?     string
     |        +--ro action-type      ipi-event-manager-types:event_manager_action_type_t
     |        +--ro action-script    string
     |        +--ro trigger-count?   yang:counter64
     |        +--ro policy-count?    yang:counter64
     |        +--ro status?          ipi-event-manager-types:event_manager_status_t
     |        +--ro policy-map*      -> /event-manager/policies/policy/config/policy-name
     +--rw policies
        +--rw policy* [policy-name]
           +--rw policy-name    -> ../config/policy-name
           +--rw config
           |  +--rw policy-name?   string
           |  +--rw event-name     -> /event-manager/event-entries/event-entry/event-name
           |  +--rw action-name    -> /event-manager/action-entries/action-entry/action-name
           +--ro state
              +--ro policy-name?             string
              +--ro event-name               -> /event-manager/event-entries/event-entry/event-name
              +--ro action-name              -> /event-manager/action-entries/action-entry/action-name
              +--ro trigger-count?           yang:counter64
              +--ro status?                  ipi-event-manager-types:event_manager_status_t
              +--ro last-execution-status?   ipi-event-manager-types:event_manager_execution_status_t
              +--ro last-execution-time?     string
 
  rpcs:
    +---x event-manager-clear-statistics-all {feature-list:HAVE_VLOGD,feature-list:HAVE_EVENT_MANAGER}?
    +---x event-manager-clear-statistics-on-policy {feature-list:HAVE_VLOGD,feature-list:HAVE_EVENT_MANAGER}?
       +---w input
          +---w policy-name    string
 
 
module: ipi-evpn-mpls
  +--rw evpn-mpls
     +--rw global
     |  +--rw config!
     |  |  +--rw enable-evpn-mpls    empty {feature-list:NOT_HAVE_MARVELL}?
     |  |  +--rw vtep-ipv4?          inet:ipv4-address
     |  |  +--rw mac-ageing-timer?   uint32
     |  +--ro state
     |  |  +--ro enable-evpn-mpls    empty {feature-list:NOT_HAVE_MARVELL}?
     |  |  +--ro vtep-ipv4?          inet:ipv4-address
     |  |  +--ro mac-ageing-timer?   uint32
     |  +--ro route-count
     |     +--ro state
     |        +--ro max_route?      uint32
     |        +--ro active_route?   uint32
     +--rw arp-nd-global
     |  +--rw config
     |  |  +--rw arp-nd-refresh-time?   uint32
     |  +--ro state
     |     +--ro arp-nd-refresh-time?   uint32
     +--rw mpls-tenants
     |  +--rw mpls-tenant* [tenant-identifier]
     |     +--rw tenant-identifier        -> ../config/tenant-identifier
     |     +--rw config
     |     |  +--rw vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--rw mac-holdtime?         int32
     |     |  +--rw tenant-description?   string
     |     |  +--rw tunnel-policy-name?   string {feature-list:HAVE_SERVICE_MAPPING}?
     |     |  +--rw irb-name?             -> /ipi-interface:interfaces/interface/name
     |     |  +--rw tenant-identifier?    uint32
     |     |  +--rw vpws-identifier?      uint32 {feature-list:HAVE_EVPN_VPWS}?
     |     |  +--rw control-word?         empty
     |     |  +--rw etree-leaf?           empty
     |     +--ro state
     |     |  +--ro vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--ro mac-holdtime?         int32
     |     |  +--ro tenant-description?   string
     |     |  +--ro tunnel-policy-name?   string {feature-list:HAVE_SERVICE_MAPPING}?
     |     |  +--ro irb-name?             -> /ipi-interface:interfaces/interface/name
     |     |  +--ro tenant-identifier?    uint32
     |     |  +--ro vpws-identifier?      uint32 {feature-list:HAVE_EVPN_VPWS}?
     |     |  +--ro control-word?         empty
     |     |  +--ro etree-leaf?           empty
     |     +--ro route-count-info
     |     |  +--ro state
     |     |     +--ro total?      uint32
     |     |     +--ro mac-only?   uint32
     |     |     +--ro mac-ipv4?   uint32
     |     |     +--ro mac-ipv6?   uint32 {feature-list:HAVE_IPV6}?
     |     +--ro xconnect-mapping-info {feature-list:HAVE_EVPN_VPWS}?
     |     |  +--ro state
     |     |     +--ro source-tenant-description?     string
     |     |     +--ro destination-vpws-identifier?   uint32
     |     |     +--ro source-interface?              string
     |     |     +--ro destination-interface?         string
     |     |     +--ro vtep-ip-address?               inet:ipv4-address
     |     |     +--ro connection-type?               ipi-evpn-mpls-types:evpn_mpls_xconnect_connection_type_t
     |     |     +--ro connection-status?             ipi-evpn-mpls-types:evpn_mpls_xconnect_connection_status_t
     |     +--rw irb
     |     |  +--rw config
     |     |  |  +--rw irb-advertise-host-route?   empty
     |     |  +--ro state
     |     |     +--ro irb-advertise-host-route?   empty
     |     +--ro arp-cache-info* [host-ip]
     |     |  +--ro host-ip    -> ../state/host-ip
     |     |  +--ro state
     |     |     +--ro host-ip?     inet:ipv4-address
     |     |     +--ro host-mac?    cml-data-types:cml_mac_addr_t
     |     |     +--ro host-type?   ipi-evpn-mpls-types:evpn_mpls_host_t
     |     +--ro nd-cache-info* [host-ip]
     |     |  +--ro host-ip    -> ../state/host-ip
     |     |  +--ro state
     |     |     +--ro host-ip?     inet:ipv6-address
     |     |     +--ro host-mac?    cml-data-types:cml_mac_addr_t
     |     |     +--ro host-type?   ipi-evpn-mpls-types:evpn_mpls_host_t
     |     +--ro mac-table-info* [mac-address]
     |     |  +--ro mac-address    -> ../state/mac-address
     |     |  +--ro state
     |     |     +--ro mac-address?               cml-data-types:cml_mac_addr_t
     |     |     +--ro interface-name?            -> /ipi-interface:interfaces/interface/name
     |     |     +--ro vtep-ip-esi?               string
     |     |     +--ro host-type?                 ipi-evpn-mpls-types:evpn_mpls_host_t
     |     |     +--ro host-status?               ipi-evpn-mpls-types:evpn_mpls_host_status_t
     |     |     +--ro access-port-description?   string
     |     +--ro access-interface-info* [access-interface-name]
     |        +--ro access-interface-name    -> ../state/access-interface-name
     |        +--ro state
     |           +--ro access-interface-name?   string
     |           +--ro tenant-description?      string
     |           +--ro ethernet-segment-id?     string
     |           +--ro port-status?             string
     +--ro tunnel* [destination-vtep-ip destination-evpn-identifier]
        +--ro destination-vtep-ip            -> ../state/destination-vtep-ip
        +--ro destination-evpn-identifier    -> ../state/destination-evpn-identifier
        +--ro state
           +--ro destination-vtep-ip?           inet:ipv4-address
           +--ro destination-evpn-identifier?   uint32
           +--ro source-vtep-ip?                inet:ipv4-address
           +--ro up-down-time?                  yang:timeticks
           +--ro tunnel-status?                 ipi-evpn-mpls-types:evpn_mpls_tunnel_status_t
           +--ro source-vpws-identifier?        uint32
           +--ro destination-vpws-identifier?   uint32
           +--ro local-multicast-label?         uint32
           +--ro local-unicast-label?           uint32
           +--ro remote-multicast-label?        uint32
           +--ro remote-unicast-label?          uint32
           +--ro is_xconnect?                   boolean
           +--ro mpls-multipath-grp-name?       string
           +--ro mpls-multipath-nhlfe-ix?       uint32
           +--ro tunnel-label?                  uint32
           +--ro network-interface?             -> /ipi-interface:interfaces/interface/name
           +--ro counters
              +--ro out-bum-packets?       yang:counter64
              +--ro out-unicast-packets?   yang:counter64
              +--ro in-bum-packets?        yang:counter64
              +--ro in-unicast-packets?    yang:counter64
 
  rpcs:
    +---x clear-nvo-mpls-dynamic-mac-address-table {feature-list:HAVE_MPLS,feature-list:HAVE_SUBINTERFACE}?
    +---x clear-nvo-mpls-dynamic-mac-address-table-evid {feature-list:HAVE_MPLS,feature-list:HAVE_SUBINTERFACE}?
    |  +---w input
    |     +---w tenant-identifier    uint32
    |     +---w mac-address?         cml-data-types:cml_mac_addr_t
    +---x clear-evpn-mpls-egress-counters {feature-list:HAVE_MPLS,feature-list:HAVE_SUBINTERFACE}?
    |  +---w input
    |     +---w tenant-identifier?   uint32
    |     +---w egress-direction     ipi-evpn-mpls-types:evpn_mpls_egress_dir_t
    |     +---w destination-ip?      inet:ipv4-address
    +---x clear-evpn-mpls-ingress-counters {feature-list:HAVE_MPLS,feature-list:HAVE_SUBINTERFACE}?
       +---w input
          +---w tenant-identifier?   uint32
          +---w ingress-direction    ipi-evpn-mpls-types:evpn_mpls_ingress_dir_t
 
module: ipi-evpn-srv6
  +--rw evpn-srv6
     +--rw global
     |  +--rw config!
     |  |  +--rw enabled              empty
     |  |  +--rw vtep-ipv6-address?   inet:ipv6-address
     |  |  +--rw mac-ageing-timer?    uint32
     |  +--ro state
     |     +--ro enabled              empty
     |     +--ro vtep-ipv6-address?   inet:ipv6-address
     |     +--ro mac-ageing-timer?    uint32
     +--rw arp-nd-global
     |  +--rw config
     |  |  +--rw arp-nd-refresh-time?   uint32
     |  +--ro state
     |     +--ro arp-nd-refresh-time?   uint32
     +--rw tenants
        +--rw tenant* [tenant-identifier]
           +--rw tenant-identifier    -> ../config/tenant-identifier
           +--rw config
           |  +--rw vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
           |  +--rw mac-holdtime?         int32
           |  +--rw tenant-description?   string
           |  +--rw tunnel-policy-name?   string {feature-list:HAVE_SERVICE_MAPPING_OR_HAVE_SRV6}?
           |  +--rw srv6-locator-name?    string
           |  +--rw tenant-identifier?    uint32
           |  +--rw vpws-identifier?      uint32 {feature-list:HAVE_EVPN_VPWS}?
           +--ro state
              +--ro vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
              +--ro mac-holdtime?         int32
              +--ro tenant-description?   string
              +--ro tunnel-policy-name?   string {feature-list:HAVE_SERVICE_MAPPING_OR_HAVE_SRV6}?
              +--ro srv6-locator-name?    string
              +--ro tenant-identifier?    uint32
              +--ro vpws-identifier?      uint32 {feature-list:HAVE_EVPN_VPWS}?
 
  rpcs:
    +---x clear-nvo-srv6-dynamic-mac-address-table {feature-list:HAVE_SRV6,feature-list:HAVE_SUBINTERFACE}?
    +---x clear-nvo-srv6-dynamic-mac-address-table-evid {feature-list:HAVE_SRV6,feature-list:HAVE_SUBINTERFACE}?
    |  +---w input
    |     +---w tenant-identifier    uint32
    |     +---w mac-address?         cml-data-types:cml_mac_addr_t
    +---x clear-evpn-srv6-egress-counters {feature-list:HAVE_SRV6,feature-list:HAVE_SUBINTERFACE}?
    |  +---w input
    |     +---w tenant-identifier?   uint32
    |     +---w egress-direction     cml-data-types:evpn_egress_dir_t
    |     +---w destination-ip?      inet:ipv6-address
    +---x clear-evpn-srv6-ingress-counters {feature-list:HAVE_SRV6,feature-list:HAVE_SUBINTERFACE}?
       +---w input
          +---w tenant-identifier?   uint32
          +---w ingress-direction    cml-data-types:evpn_ingress_dir_t
 
 
 
module: ipi-g8031
  +--rw g8031
     +--rw instances
     |  +--rw instance* [eps-id] {feature-list:HAVE_G8031}?
     |     +--rw eps-id    -> ../config/eps-id
     |     +--rw config
     |     |  +--rw eps-id?             uint8
     |     |  +--rw bridge-id           -> /ipi-network-instance:network-instances/network-instance/instance-name
     |     |  +--rw working-port?       -> /ipi-interface:interfaces/interface/name
     |     |  +--rw protection-port?    -> /ipi-interface:interfaces/interface/name
     |     |  +--rw elps-instance-id?   uint8
     |     |  +--rw data-vlans?         cml-data-types:cml_range_t
     |     |  +--rw primary-vlan?       -> /ipi-network-instance:network-instances/network-instance/ipi-bridge:bridge/ipi-vlan:vlans/vlan/vlan-id
     |     +--ro state
     |     |  +--ro eps-id?             uint8
     |     |  +--ro bridge-id           -> /ipi-network-instance:network-instances/network-instance/instance-name
     |     |  +--ro working-port?       -> /ipi-interface:interfaces/interface/name
     |     |  +--ro protection-port?    -> /ipi-interface:interfaces/interface/name
     |     |  +--ro elps-instance-id?   uint8
     |     |  +--ro data-vlans?         cml-data-types:cml_range_t
     |     |  +--ro primary-vlan?       -> /ipi-network-instance:network-instances/network-instance/ipi-bridge:bridge/ipi-vlan:vlans/vlan/vlan-id
     |     +--rw elps
     |        +--rw config
     |        |  +--rw protection-type?         ipi-g8031-elps-types:g8031_elps_protection_type_t
     |        |  +--rw enable-revertive-mode?   empty
     |        |  +--rw level-identifier?        uint8
     |        +--ro state
     |        |  +--ro protection-type?             ipi-g8031-elps-types:g8031_elps_protection_type_t
     |        |  +--ro enable-revertive-mode?       empty
     |        |  +--ro level-identifier?            uint8
     |        |  +--ro direction?                   ipi-g8031-elps-types:g8031_direction_type_t
     |        |  +--ro active-path?                 ipi-g8031-elps-types:g8031_active_path_type_t
     |        |  +--ro request-signal?              ipi-g8031-elps-types:g8031_request_signal_type_t
     |        |  +--ro current-state?               ipi-g8031-elps-types:g8031_current_state_type_t
     |        |  +--ro failure-of-protocol-state?   ipi-g8031-elps-types:g8031_failure_of_protocol_state_type_t
     |        |  +--ro rx-lps-frame-count?          yang:counter32
     |        |  +--ro tx-lps-frame-count?          yang:counter32
     |        +--rw timers
     |        |  +--rw config
     |        |  |  +--rw wait-to-restore?   uint16
     |        |  |  +--rw hold-off?          uint8
     |        |  +--ro state
     |        |     +--ro wait-to-restore?   uint16
     |        |     +--ro hold-off?          uint8
     |        +--rw traffic-switch
     |           +--rw config
     |           |  +--rw local-freeze?   empty
     |           +--ro state
     |              +--ro local-freeze?   empty
     +--rw g8031-elps
     |  +--rw profiles
     |  |  +--rw profile* [name] {feature-list:HAVE_G8031}?
     |  |     +--rw name      -> ../config/name
     |  |     +--rw config
     |  |     |  +--rw name?                    string
     |  |     |  +--rw mode?                    ipi-g8031-elps-types:g8031_mode_type_t
     |  |     |  +--rw switching-mode?          ipi-g8031-elps-types:g8031_switching_mode_type_t
     |  |     |  +--rw timer-hold-off?          uint8
     |  |     |  +--rw timer-wait-to-restore?   uint32
     |  |     +--ro state
     |  |        +--ro name?                    string
     |  |        +--ro mode?                    ipi-g8031-elps-types:g8031_mode_type_t
     |  |        +--ro switching-mode?          ipi-g8031-elps-types:g8031_switching_mode_type_t
     |  |        +--ro timer-hold-off?          uint8
     |  |        +--ro timer-wait-to-restore?   uint32
     |  +--rw protections
     |  |  +--rw protection* [group-name] {feature-list:HAVE_G8031}?
     |  |     +--rw group-name    -> ../config/group-name
     |  |     +--rw config
     |  |     |  +--rw group-name?        string
     |  |     |  +--rw working-port?      -> /ipi-interface:interfaces/interface/name
     |  |     |  +--rw protection-port?   -> /ipi-interface:interfaces/interface/name
     |  |     +--ro state
     |  |        +--ro group-name?        string
     |  |        +--ro working-port?      -> /ipi-interface:interfaces/interface/name
     |  |        +--ro protection-port?   -> /ipi-interface:interfaces/interface/name
     |  +--rw eps-instances
     |     +--rw eps-instance* [name]
     |        +--rw name             -> ../config/name
     |        +--rw config
     |        |  +--rw name?                   string
     |        |  +--rw eps-protection-group?   -> /g8031/g8031-elps/protections/protection/group-name
     |        |  +--rw g8031-profile-name?     -> /g8031/g8031-elps/profiles/profile/name
     |        +--ro state
     |        |  +--ro name?                   string
     |        |  +--ro eps-protection-group?   -> /g8031/g8031-elps/protections/protection/group-name
     |        |  +--ro g8031-profile-name?     -> /g8031/g8031-elps/profiles/profile/name
     |        +--rw aps-channel
     |        |  +--rw config
     |        |  |  +--rw level?   uint8
     |        |  +--ro state
     |        |     +--ro level?   uint8
     |        +--rw control-vlans
     |        |  +--rw control-vlan* [vlan-id]
     |        |     +--rw vlan-id    -> ../config/vlan-id
     |        |     +--rw config
     |        |     |  +--rw vlan-id?         uint16
     |        |     |  +--rw inner-vlan-id?   uint16
     |        |     +--ro state
     |        |        +--ro vlan-id?         uint16
     |        |        +--ro inner-vlan-id?   uint16
     |        +--rw data
     |           +--rw config
     |           |  +--rw data-vlan?   cml-data-types:cml_range_t
     |           +--ro state
     |              +--ro data-vlan?   cml-data-types:cml_range_t
     +--rw debug
        +--rw config
        |  +--rw options?   ipi-g8031-elps-types:g8031_debug_t
        +--ro state
           +--ro options?                 ipi-g8031-elps-types:g8031_debug_t
           +--ro terminal-debug-status?   ipi-g8031-elps-types:g8031_debug_t
 
  rpcs:
    +---x g8031-lockout {feature-list:HAVE_G8031,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w instance-name    string
    +---x g8031-exercise {feature-list:HAVE_G8031,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w instance-name    string
    +---x g8031-clear {feature-list:HAVE_G8031,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w instance-name    string
    +---x g8031-terminal-debug-on {feature-list:HAVE_G8031,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-g8031-elps-types:g8031_debug_t
    +---x g8031-terminal-debug-off {feature-list:HAVE_G8031,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-g8031-elps-types:g8031_debug_t
    +---x elps-switch-elp-instance {feature-list:HAVE_G8031,feature-list:HAVE_ONMD}?
    |  +---w input
    |     +---w instance-name    string
    |     +---w operation        ipi-g8031-elps-types:g8031_eps_instance_switch
    +---x eps-clear-ring-instance {feature-list:HAVE_G8031,feature-list:HAVE_ONMD}?
       +---w input
          +---w instance-name    string
          +---w eps-type         ipi-g8031-elps-types:g8031_eps_instance_type
 
module: ipi-global-te
  +--rw admin-groups
  |  +--rw admin-group* [name id]
  |     +--rw name      -> ../config/name
  |     +--rw id        -> ../config/id
  |     +--rw config
  |     |  +--rw name?   string
  |     |  +--rw id?     uint8
  |     +--ro state
  |        +--ro name?   string
  |        +--ro id?     uint8
  +--rw extended-admin-groups
  |  +--rw extended-admin-group* [name id]
  |     +--rw name      -> ../config/name
  |     +--rw id        -> ../config/id
  |     +--rw config
  |     |  +--rw name?   string
  |     |  +--rw id?     uint32
  |     +--ro state
  |        +--ro name?   string
  |        +--ro id?     uint32
  +--rw extended-admin-group-ranges
     +--rw extended-admin-group-range* [minimum-id maximum-id]
        +--rw minimum-id    -> ../config/minimum-id
        +--rw maximum-id    -> ../config/maximum-id
        +--rw config
        |  +--rw minimum-id?   uint32
        |  +--rw maximum-id?   uint32
        +--ro state
           +--ro minimum-id?   uint32
           +--ro maximum-id?   uint32
 
module: ipi-host
  +--rw system-host {feature-list:HAVE_IMI}?
     +--rw config
     |  +--rw banner-motd?                    cml-data-types:cml_banner_t
     |  +--rw banner-motd-file?               cml-data-types:cml_file_t
     |  +--rw service-passwd-encryption?      boolean
     |  +--rw service-term-length?            uint16
     |  +--rw system-enable-passwd?           cml-data-types:cml_line_t
     |  +--rw passwd-encrypted?               empty
     |  +--rw disable-default-autoenable?     empty
     |  +--rw disable-service-advanced-vty?   empty
     +--ro state
        +--ro banner-motd?                    cml-data-types:cml_banner_t
        +--ro banner-motd-file?               cml-data-types:cml_file_t
        +--ro service-passwd-encryption?      boolean
        +--ro service-term-length?            uint16
        +--ro system-enable-passwd?           cml-data-types:cml_line_t
        +--ro passwd-encrypted?               empty
        +--ro disable-default-autoenable?     empty
        +--ro disable-service-advanced-vty?   empty
 
module: ipi-hwtable
 
  notifications:
    +---n hwtable-monitor-full-notification
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n hwtable-monitor-full-clear-notification
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro message?      string
 
module: ipi-if-aggregate
 
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw member-aggregation
       +--rw config!
       |  +--rw agg-type        ipi-lag-types:lag_link_agg_type_t
       |  +--rw aggregate-id    uint16
       |  +--rw lacp-mode       ipi-lag-types:lacp_mode_t
       +--ro state
       |  +--ro agg-type        ipi-lag-types:lag_link_agg_type_t
       |  +--ro aggregate-id    uint16
       |  +--ro lacp-mode       ipi-lag-types:lacp_mode_t
       +--rw port-channel-weight {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
          +--rw config
          |  +--rw weight?   uint16
          +--ro state
             +--ro weight?   uint16
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw aggregator
       +--rw config
       |  +--rw min-links?       uint8 {feature-list:HAVE_LACP}?
       |  +--rw min-bandwidth?   string {feature-list:HAVE_LACP}?
       +--ro state
       |  +--ro min-links?             uint8 {feature-list:HAVE_LACP}?
       |  +--ro min-bandwidth?         string {feature-list:HAVE_LACP}?
       |  +--ro agg-min-links-state?   ipi-lag-types:lag_agg_min_links_status
       +--ro members
          +--ro member* [link-name]
             +--ro link-name    -> ../state/link-name
             +--ro state
                +--ro link-name?    string
                +--ro link-state?   ipi-lag-types:lag_member_link_status_t
 
  notifications:
    +---n agg-min-links-state-update
       +--ro severity?              cml-data-types:cml_notif_severity_t
       +--ro eventClass?            cml-data-types:cml_notif_class_t
       +--ro name?                  string
       +--ro agg-min-links-state?   ipi-lag-types:lag_agg_min_links_status
 
module: ipi-if-ethernet
 
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw ethernet
       +--rw config
       |  +--rw duplex-mode?             ipi-if-types:if_duplex_t
       |  +--rw secondary-mac-address?   empty {feature-list:HAVE_MLAG}?
       |  +--rw port-speed?              ipi-if-types:if_interface_speed_t {feature-list:NOT_HAVE_TIBIT}?
       +--ro state
       |  +--ro duplex-mode?              ipi-if-types:if_duplex_t
       |  +--ro secondary-mac-address?    empty {feature-list:HAVE_MLAG}?
       |  +--ro port-speed?               ipi-if-types:if_interface_speed_t {feature-list:NOT_HAVE_TIBIT}?
       |  +--ro hw-mac-address?           cml-data-types:cml_mac_addr_t
       |  +--ro negotiated-duplex-mode?   ipi-if-types:if_duplex_t
       |  +--ro negotiated-port-speed?    ipi-if-types:if_interface_speed_t
       |  +--ro counters
       |     +--ro in-mac-control-frames?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     +--ro in-mac-pause-frames?      yang:counter64
       |     +--ro in-undersize-frames?      yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     +--ro in-oversize-frames?       yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     +--ro in-fragment-frames?       yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     +--ro in-jabber-frames?         yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     +--ro in-crc-errors?            yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     +--ro out-mac-control-frames?   yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     +--ro out-mac-pause-frames?     yang:counter64
       |     +--ro in-distribution
       |     |  +--ro in-frames-64-octets?           yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     |  +--ro in-frames-65-127-octets?       yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     |  +--ro in-frames-128-255-octets?      yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     |  +--ro in-frames-256-511-octets?      yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     |  +--ro in-frames-512-1023-octets?     yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     |  +--ro in-frames-1024-1518-octets?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     |  +--ro in-frames-1519-2047-octets?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     |  +--ro in-frames-2048-4095-octets?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     |  +--ro in-frames-4096-9216-octets?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     |  +--ro in-frames-9217-16383-octets?   yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |     +--ro out-distribution
       |        +--ro out-frames-64-octets?           yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |        +--ro out-frames-65-127-octets?       yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |        +--ro out-frames-128-255-octets?      yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |        +--ro out-frames-256-511-octets?      yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |        +--ro out-frames-512-1023-octets?     yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |        +--ro out-frames-1024-1518-octets?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |        +--ro out-frames-1519-2047-octets?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |        +--ro out-frames-2048-4095-octets?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |        +--ro out-frames-4096-9216-octets?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       |        +--ro out-frames-9217-16383-octets?   yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       +--rw flow-control {feature-list:HAVE_L2}?
          +--rw config
          |  +--rw enable-rcv?   ipi-if-types:if_flowctrl_t {feature-list:HAVE_L2}?
          |  +--rw enable-snd?   ipi-if-types:if_flowctrl_t {feature-list:HAVE_L2}?
          +--ro state
             +--ro enable-rcv?        ipi-if-types:if_flowctrl_t {feature-list:HAVE_L2}?
             +--ro enable-snd?        ipi-if-types:if_flowctrl_t {feature-list:HAVE_L2}?
             +--ro rcv-oper-status?   ipi-if-types:if_flowctrl_t
             +--ro snd-oper-status?   ipi-if-types:if_flowctrl_t
 
module: ipi-if-extended
  +--rw mac-ageing
     +--rw config
     +--ro state
 
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw extended
       +--rw l2-control-protocol* [l2cp-type] {feature-list:HAVE_L2}?
       |  +--rw l2cp-type    -> ../config/l2cp-type
       |  +--rw config
       |  |  +--rw l2cp-type?          ipi-if-types:if_l2cp_t
       |  |  +--rw protocol-process    ipi-if-types:if_l2cp_process_t
       |  +--ro state
       |     +--ro l2cp-type?          ipi-if-types:if_l2cp_t
       |     +--ro protocol-process    ipi-if-types:if_l2cp_process_t
       +--rw config
       |  +--rw link-flap-error-disable?         empty {feature-list:HAVE_L2}?
       |  +--rw storm-control-error-disable?     empty {feature-list:HAVE_RATE_LIMIT}?
       |  +--rw mac-move-limit-error-disable?    empty {feature-list:HAVE_L2}?
       |  +--rw mac-move-priority?               uint32 {feature-list:HAVE_L2}?
       |  +--rw disable-snmp-trap-link-status?   empty
       |  +--rw mau-default-type?                ipi-if-types:if_mautype_t {feature-list:HAVE_L2}?
       |  +--rw debounce-time?                   uint16
       |  +--rw protected-port?                  ipi-if-types:if_protected_port_type_t
       |  +--rw raon-aodu-port?                  ipi-if-types:if_raon_aodu_state {feature-list:HAVE_DUNE}?
       |  +--rw ucmp-port?                       ipi-if-types:if_ucmp_state
       |  +--rw revertive-timer?                 uint8 {feature-list:HAVE_DUNE}?
       |  +--rw enable-non-revertive?            empty {feature-list:HAVE_DUNE}?
       +--ro state
       |  +--ro link-flap-error-disable?         empty {feature-list:HAVE_L2}?
       |  +--ro storm-control-error-disable?     empty {feature-list:HAVE_RATE_LIMIT}?
       |  +--ro mac-move-limit-error-disable?    empty {feature-list:HAVE_L2}?
       |  +--ro mac-move-priority?               uint32 {feature-list:HAVE_L2}?
       |  +--ro disable-snmp-trap-link-status?   empty
       |  +--ro mau-default-type?                ipi-if-types:if_mautype_t {feature-list:HAVE_L2}?
       |  +--ro debounce-time?                   uint16
       |  +--ro protected-port?                  ipi-if-types:if_protected_port_type_t
       |  +--ro raon-aodu-port?                  ipi-if-types:if_raon_aodu_state {feature-list:HAVE_DUNE}?
       |  +--ro ucmp-port?                       ipi-if-types:if_ucmp_state
       |  +--ro revertive-timer?                 uint8 {feature-list:HAVE_DUNE}?
       |  +--ro enable-non-revertive?            empty {feature-list:HAVE_DUNE}?
       |  +--ro properties?                      ipi-if-types:if_iface_prop_t
       |  +--ro mapped-name?                     string
       |  +--ro if-counter-discontinuity-time?   yang:timestamp
       |  +--ro slot-id?                         uint32
       |  +--ro hardware-type?                   ipi-if-types:if_hw_type_t
       |  +--ro metric?                          int32
       |  +--ro if-type?                         ipi-if-types:if_interface_type_t
       |  +--ro trust-state?                     ipi-if-types:if_trust_state_t {feature-list:HAVE_QOS}?
       |  +--ro monitor-port-grp?                boolean {feature-list:HAVE_TFO}?
       |  +--ro failover-link-type?              ipi-if-types:if_tfo_link_type_t {feature-list:HAVE_TFO}?
       |  +--ro udld-flush-transmitted?          uint16 {feature-list:HAVE_UDLD}?
       |  +--ro debounce-flap-count?             uint16
       |  +--ro debounce-last-flap-time?         yang:date-and-time
       |  +--ro debounce-remain-time?            yang:counter32
       |  +--ro debounce-running-status?         ipi-if-types:if_debounce_running_state
       |  +--ro debounce-config-status?          ipi-if-types:if_debounce_running_state
       |  +--ro last-flapped?                    ipi-if-types:if_last_clear_time_t
       |  +--ro auto-ipv6-link-local-address?    cml-data-types:cml_ipv6_prefix_t {feature-list:HAVE_IPV6}?
       +--rw bandwidth-management
       |  +--rw config
       |     +--rw enable-re-routing?   empty
       +--rw port-monitor
       |  +--rw config
       |  |  +--rw enable-speed?         empty
       |  |  +--rw enable-queue-drops?   empty
       |  +--ro state
       |  |  +--ro enable-speed?         empty
       |  |  +--ro enable-queue-drops?   empty
       |  +--rw port-monitor-threshold
       |     +--rw config!
       |     |  +--rw warning-threshold     uint8
       |     |  +--rw recovery-threshold    uint8
       |     +--ro state
       |        +--ro warning-threshold     uint8
       |        +--ro recovery-threshold    uint8
       +--ro capabilities {feature-list:HAVE_HAL}?
       |  +--ro state
       |     +--ro speed-half-duplex?   string
       |     +--ro speed-full-duplex?   string
       |     +--ro pause?               ipi-if-types:if_raw_string_t
       |     +--ro interface-type?      ipi-if-types:if_raw_string_t
       |     +--ro medium?              ipi-if-types:if_raw_string_t
       |     +--ro loopback?            ipi-if-types:if_raw_string_t
       |     +--ro flags?               string
       |     +--ro eee?                 ipi-if-types:if_raw_string_t
       |     +--ro fcmap?               string
       |     +--ro encapsulation?       ipi-if-types:if_raw_string_t
       |     +--ro fec?                 ipi-if-types:if_raw_string_t
       +--rw service-queue {feature-list:HAVE_SUBINTERFACE}?
       |  +--rw config
       |  |  +--rw subif-service-queue?   ipi-if-types:if_subif_sevice_queue_t
       |  +--ro state
       |     +--ro subif-service-queue?   ipi-if-types:if_subif_sevice_queue_t
       +--rw aclif
       |  +--rw config
       |  |  +--rw aclif-type?   ipi-if-types:if_aclif_type_t
       |  +--ro state
       |     +--ro aclif-type?   ipi-if-types:if_aclif_type_t
       +--rw subinterface-encapsulation {feature-list:HAVE_SUBINTERFACE}?
       |  +--rw config
       |  |  +--rw encap-default?    empty
       |  |  +--rw encap-untagged?   empty
       |  +--ro state
       |  |  +--ro encap-default?    empty
       |  |  +--ro encap-untagged?   empty
       |  +--rw rewrite
       |  |  +--rw config!
       |  |  |  +--rw vlan-action                       ipi-if-types:if_subif_l2_vlan_actiontype_t
       |  |  |  +--rw (vlan-action-type)?
       |  |  |     +--:(pop)
       |  |  |     |  +--rw enable-pop                  ipi-if-types:if_subif_rewrite_pop_type_t
       |  |  |     +--:(push)
       |  |  |     |  +--rw push-tpid                   ipi-if-types:cml_outer_tpid_type_t
       |  |  |     |  +--rw push-outer-vlan-id          uint16
       |  |  |     |  +--rw push-inner-vlan-id?         uint16
       |  |  |     +--:(translate)
       |  |  |        +--rw rewrite-translate-action    ipi-if-types:if_subif_l2_rewrite_actiontype_t
       |  |  |        +--rw dot1q-dot1ad-tpid           ipi-if-types:cml_outer_tpid_type_t
       |  |  |        +--rw outer-vlan-id               uint16
       |  |  |        +--rw i-dot1q-dot1ad-tpid         ipi-if-types:cml_inner_tpid_type_t
       |  |  |        +--rw inner-vlan-id               uint16
       |  |  +--ro state
       |  |     +--ro vlan-action                       ipi-if-types:if_subif_l2_vlan_actiontype_t
       |  |     +--ro (vlan-action-type)?
       |  |        +--:(pop)
       |  |        |  +--ro enable-pop                  ipi-if-types:if_subif_rewrite_pop_type_t
       |  |        +--:(push)
       |  |        |  +--ro push-tpid                   ipi-if-types:cml_outer_tpid_type_t
       |  |        |  +--ro push-outer-vlan-id          uint16
       |  |        |  +--ro push-inner-vlan-id?         uint16
       |  |        +--:(translate)
       |  |           +--ro rewrite-translate-action    ipi-if-types:if_subif_l2_rewrite_actiontype_t
       |  |           +--ro dot1q-dot1ad-tpid           ipi-if-types:cml_outer_tpid_type_t
       |  |           +--ro outer-vlan-id               uint16
       |  |           +--ro i-dot1q-dot1ad-tpid         ipi-if-types:cml_inner_tpid_type_t
       |  |           +--ro inner-vlan-id               uint16
       |  +--rw single-tag-vlan-matches
       |  |  +--rw single-tag-vlan-match* [encapsulation-type]
       |  |     +--rw encapsulation-type    -> ../config/encapsulation-type
       |  |     +--rw config
       |  |     |  +--rw encapsulation-type?   ipi-if-types:if_subif_encap_type_t
       |  |     |  +--rw outer-vlan-id*        string
       |  |     +--ro state
       |  |        +--ro encapsulation-type?   ipi-if-types:if_subif_encap_type_t
       |  |        +--ro outer-vlan-id*        string
       |  +--rw double-tag-vlan-matches
       |     +--rw double-tag-vlan-match* [encap-type outer-vlan-id]
       |        +--rw encap-type       -> ../config/encap-type
       |        +--rw outer-vlan-id    -> ../config/outer-vlan-id
       |        +--rw config
       |        |  +--rw encap-type?      ipi-if-types:if_subif_encap_type_t
       |        |  +--rw outer-vlan-id?   string
       |        |  +--rw inner-vlan-id*   string
       |        +--ro state
       |           +--ro encap-type?      ipi-if-types:if_subif_encap_type_t
       |           +--ro outer-vlan-id?   string
       |           +--ro inner-vlan-id*   string
       +--rw subinterface-split-horizon {feature-list:HAVE_SUBINTERFACE}?
       |  +--rw config
       |  |  +--rw split-horizon-group?   ipi-if-types:if_split_horizon_t
       |  +--ro state
       |     +--ro split-horizon-group?   ipi-if-types:if_split_horizon_t
       +--rw link-debounce-time
       |  +--rw config!
       |  |  +--rw linkup-debounce-time      uint16
       |  |  +--rw linkdown-debounce-time    uint16
       |  +--ro state
       |     +--ro linkup-debounce-time      uint16
       |     +--ro linkdown-debounce-time    uint16
       +--rw minimum-bandwidth {feature-list:HAVE_TE}?
          +--rw config!
          |  +--rw rate         uint32
          |  +--rw rate-unit    ipi_if_extended_rate_unit_t
          +--ro state
             +--ro rate         uint32
             +--ro rate-unit    ipi_if_extended_rate_unit_t
  augment /ipi-interface:interfaces/ipi-interface:interface/ipi-if-ethernet:ethernet:
    +--rw extended-ethernet
       +--rw config
       |  +--rw forward-err-correction?   ipi-if-types:if_intf_fec_t
       |  +--rw load-interval?            uint16 {feature-list:HAVE_BROADCOM_OR_HAVE_MARVELL}?
       +--ro state
          +--ro forward-err-correction?   ipi-if-types:if_intf_fec_t
          +--ro load-interval?            uint16 {feature-list:HAVE_BROADCOM_OR_HAVE_MARVELL}?
          +--ro default-duplex-mode?      uint8
          +--ro default-speed?            string
  augment /ipi-interface:interfaces/ipi-interface:interface/ipi-if-ethernet:ethernet:
    +--rw storm-control {feature-list:HAVE_RATE_LIMIT}?
       +--rw broadcast {feature-list:HAVE_RATE_LIMIT}?
       |  +--rw config! {feature-list:HAVE_RATE_LIMIT}?
       |  |  +--rw bcast-value                ipi-if-types:if_rate_limit_t
       |  |  +--rw bcast-rate-limit-format    ipi-if-types:if_rate_limit_type
       |  |  +--rw bcast-burst-value          uint32
       |  +--ro state {feature-list:HAVE_RATE_LIMIT}?
       |     +--ro bcast-value                     ipi-if-types:if_rate_limit_t
       |     +--ro bcast-rate-limit-format         ipi-if-types:if_rate_limit_type
       |     +--ro bcast-burst-value               uint32
       |     +--ro hardware-applied-bcast-value?   decimal64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_RATE_LIMIT}?
       +--rw multicast {feature-list:HAVE_RATE_LIMIT}?
       |  +--rw config! {feature-list:HAVE_RATE_LIMIT}?
       |  |  +--rw mcast-value                ipi-if-types:if_rate_limit_t
       |  |  +--rw mcast-rate-limit-format    ipi-if-types:if_rate_limit_type
       |  |  +--rw mcast-burst-value          uint32
       |  +--ro state {feature-list:HAVE_RATE_LIMIT}?
       |     +--ro mcast-value                     ipi-if-types:if_rate_limit_t
       |     +--ro mcast-rate-limit-format         ipi-if-types:if_rate_limit_type
       |     +--ro mcast-burst-value               uint32
       |     +--ro hardware-applied-mcast-value?   decimal64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_RATE_LIMIT}?
       +--rw dlf-broadcast {feature-list:HAVE_RATE_LIMIT}?
          +--rw config! {feature-list:HAVE_RATE_LIMIT}?
          |  +--rw dlf-bcast-value                ipi-if-types:if_rate_limit_t
          |  +--rw dlf-bcast-rate-limit-format    ipi-if-types:if_rate_limit_type
          |  +--rw dlf-bcast-burst-value          uint32
          +--ro state {feature-list:HAVE_RATE_LIMIT}?
             +--ro dlf-bcast-value                     ipi-if-types:if_rate_limit_t
             +--ro dlf-bcast-rate-limit-format         ipi-if-types:if_rate_limit_type
             +--ro dlf-bcast-burst-value               uint32
             +--ro hardware-applied-dlf-bcast-value?   decimal64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_RATE_LIMIT}?
  augment /ipi-interface:interfaces/ipi-interface:interface/ipi-interface:state:
    +--ro custom-state
       +--ro current-bandwidth?   uint64
  augment /ipi-interface:interfaces/ipi-interface:interface/ipi-interface:state/ipi-interface:counters:
    +--ro extended-counters
       +--ro in-compressed?          yang:counter64
       +--ro out-compressed?         yang:counter64
       +--ro collisions?             yang:counter64
       +--ro unicast-rpf-discard?    yang:counter64
       +--ro in-length-errors?       yang:counter64
       +--ro in-oversize-errors?     yang:counter64
       +--ro in-crc-errors?          yang:counter64
       +--ro in-frame-errors?        yang:counter64
       +--ro in-fifo-errors?         yang:counter64
       +--ro in-missed-errors?       yang:counter64
       +--ro out-aborted-errors?     yang:counter64
       +--ro out-carrier-errors?     yang:counter64
       +--ro out-fifo-errors?        yang:counter64
       +--ro out-heartbeat-errors?   yang:counter64
       +--ro out-window-errors?      yang:counter64
       +--ro l2-protocol-pkt-stat* [l2cp-counter-type] {feature-list:HAVE_HAL,feature-list:HAVE_BROADCOM}?
       |  +--ro lacp-counters?       yang:counter64
       |  +--ro stp-counters?        yang:counter64
       |  +--ro lldp-counters?       yang:counter64
       |  +--ro efmCounters?         yang:counter64
       |  +--ro elmi-counters?       yang:counter64
       |  +--ro dot1x-counters?      yang:counter64
       |  +--ro synce-counters?      yang:counter64
       |  +--ro l2cp-counter-type    ipi-if-types:if_l2cp_stats_process_t
       +--ro error-disable-reason?   ipi-if-types:if_errdisable_state_t
  augment /ipi-interface:interfaces/ipi-interface:interface/ipi-if-ethernet:ethernet/ipi-if-ethernet:state/ipi-if-ethernet:counters:
    +--ro extended-ethernet-counters {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR,feature-list:NOT_HAVE_POND}?
       +--ro protocol-pkt-stats {feature-list:HAVE_HAL,feature-list:HAVE_BROADCOM}?
       |  +--ro in-bgp-pkts?             yang:counter32
       |  +--ro in-ospf-pkts?            yang:counter32
       |  +--ro in-isis-pkts?            yang:counter32
       |  +--ro in-ldp-rsvp-pkts?        yang:counter32
       |  +--ro in-arp-pkts?             yang:counter32
       |  +--ro in-evpn-pkts?            yang:counter32
       |  +--ro in-igmp-pkts?            yang:counter32
       |  +--ro in-pim-pkts?             yang:counter32
       |  +--ro in-bpdu-pkts?            yang:counter32 {feature-list:HAVE_DUNE}?
       |  +--ro in-oamp-pkts?            yang:counter32 {feature-list:HAVE_DUNE}?
       |  +--ro in-bfd-pkts?             yang:counter32 {feature-list:HAVE_DUNE}?
       |  +--ro in-vrrp-rip-dhcp-pkts?   yang:counter32 {feature-list:HAVE_DUNE}?
       |  +--ro in-rsvd-mc-pkts?         yang:counter32 {feature-list:HAVE_DUNE}?
       |  +--ro in-link-local-pkts?      yang:counter32 {feature-list:HAVE_DUNE}?
       |  +--ro in-icmp-pkts?            yang:counter32 {feature-list:HAVE_DUNE}?
       |  +--ro in-icmp-redirect-pkts?   yang:counter32 {feature-list:HAVE_DUNE}?
       |  +--ro in-misc-pkts?            yang:counter32 {feature-list:HAVE_DUNE}?
       |  +--ro in-total-pkts?           yang:counter32
       +--ro in-good-octets?                yang:counter64
       +--ro in-bad-octets?                 yang:counter64
       +--ro mac-transmit-error?            yang:counter64
       +--ro in-good-pkts?                  yang:counter64
       +--ro in-bad-pkts?                   yang:counter64
       +--ro out-good-octets?               yang:counter64
       +--ro out-good-pkts?                 yang:counter64
       +--ro excessive-collisions?          yang:counter64
       +--ro in-unrecognized-mac-control?   yang:counter64
       +--ro drop-events?                   yang:counter64
       +--ro in-mac-errors?                 yang:counter64
       +--ro in-dribble-errors?             yang:counter64
       +--ro collisions-state?              yang:counter64
       +--ro late-collisions?               yang:counter64
       +--ro deferred-tx?                   yang:counter64
       +--ro mtu-exceed-discards?           yang:counter64
       +--ro in-jumbo-frames?               yang:counter64
       +--ro out-jumbo-frames?              yang:counter64
       +--ro receive-pkt-rate?              yang:counter64
       +--ro receive-bit-rate?              yang:counter64
       +--ro send-pkt-rate?                 yang:counter64
       +--ro send-bit-rate?                 yang:counter64
  augment /ipi-interface:interfaces:
    +--rw global
       +--rw error-disable
          +--rw config
          |  +--rw reason?                         ipi-if-types:if_err_reason_t
          |  +--rw error-disable-stp-bpdu-guard?   boolean
          |  +--rw timeout-interval?               uint32 {feature-list:HAVE_L2}?
          |  +--rw link-flap-max-count?            uint32 {feature-list:HAVE_L2}?
          |  +--rw link-flap-timer-interval?       uint32 {feature-list:HAVE_L2}?
          |  +--rw mac-move-limit?                 uint32 {feature-list:HAVE_L2}?
          |  +--rw storm-control-max-count?        uint32 {feature-list:HAVE_RATE_LIMIT}?
          |  +--rw storm-control-timer-interval?   uint32 {feature-list:HAVE_RATE_LIMIT}?
          +--ro state
             +--ro reason?                                 ipi-if-types:if_err_reason_t
             +--ro error-disable-stp-bpdu-guard?           boolean
             +--ro timeout-interval?                       uint32 {feature-list:HAVE_L2}?
             +--ro link-flap-max-count?                    uint32 {feature-list:HAVE_L2}?
             +--ro link-flap-timer-interval?               uint32 {feature-list:HAVE_L2}?
             +--ro mac-move-limit?                         uint32 {feature-list:HAVE_L2}?
             +--ro storm-control-max-count?                uint32 {feature-list:HAVE_RATE_LIMIT}?
             +--ro storm-control-timer-interval?           uint32 {feature-list:HAVE_RATE_LIMIT}?
             +--ro default-link-flap-count?                uint32
             +--ro default-link-flap-timer-interval?       uint32
             +--ro default-storm-control-max-count?        uint32 {feature-list:HAVE_RATE_LIMIT}?
             +--ro default-storm-control-timer-interval?   uint32 {feature-list:HAVE_RATE_LIMIT}?
             +--ro link-flap-status?                       ipi-if-types:if_errdis_status_t
             +--ro storm-control-status?                   ipi-if-types:if_errdis_status_t
             +--ro lag-mismatch-status?                    ipi-if-types:if_errdis_status_t
             +--ro stp-bpdu-guard-status?                  ipi-if-types:if_errdis_status_t
             +--ro mac-move-limit-status?                  ipi-if-types:if_errdis_status_t
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw tunnel {feature-list:HAVE_TUNNEL}?
       +--rw config
       |  +--rw mode?                  ipi-if-types:if_tunnel_mode_t
       |  +--rw src?                   inet:ipv4-address
       |  +--rw multicast-interface?   string {feature-list:HAVE_VXLAN}?
       |  +--rw dst?                   inet:ipv4-address
       |  +--rw checksum-enable?       empty
       |  +--rw tos-byte?              uint16
       |  +--rw ttl?                   uint16
       |  +--rw path-mtu-enable?       empty
       |  +--rw dst-mac-address?       string {feature-list:HAVE_USER_HSL}?
       |  +--rw gre-key?               ipi-if-types:if_tunnel_key_t {feature-list:HAVE_GRE_KEY}?
       +--ro state
          +--ro mode?                  ipi-if-types:if_tunnel_mode_t
          +--ro src?                   inet:ipv4-address
          +--ro multicast-interface?   string {feature-list:HAVE_VXLAN}?
          +--ro dst?                   inet:ipv4-address
          +--ro checksum-enable?       empty
          +--ro tos-byte?              uint16
          +--ro ttl?                   uint16
          +--ro path-mtu-enable?       empty
          +--ro dst-mac-address?       string {feature-list:HAVE_USER_HSL}?
          +--ro gre-key?               ipi-if-types:if_tunnel_key_t {feature-list:HAVE_GRE_KEY}?
  augment /ipi-interface:interfaces:
    +--rw port-group-speed-map* [group-index] {feature-list:HAVE_DUNE,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       +--rw group-index    -> ../config/group-index
       +--rw config
       |  +--rw group-index?   uint8
       |  +--rw group-speed    ipi-if-types:if_port_group_speed_t {feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
       +--ro state
          +--ro group-index?   uint8
          +--ro group-speed    ipi-if-types:if_port_group_speed_t {feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
 
  rpcs:
    +---x clear-interface-forward-error-correction-counters
    |  +---w input
    |     +---w if-name    string
    +---x clear-interface-error-disable
    |  +---w input
    |     +---w if-name    string
    +---x interface-sniff-enable {feature-list:HAVE_SNIFF_INTF}?
    |  +---w input
    |     +---w interface-name    string
    |     +---w sniffTime         uint8
    |     +---w sniffAction       ipi-if-types:if_sniff_action_t
    |     +---w sniff1            boolean
    +---x interface-sniff-disable {feature-list:HAVE_SNIFF_INTF}?
       +---w input
          +---w interface-name    string
 
  notifications:
    +---n interface-error-disable-notification
    |  +--ro severity?               cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?             cml-data-types:cml_notif_class_t
    |  +--ro name?                   string
    |  +--ro error-disable-reason?   ipi-if-types:if_errdisable_state_t
    +---n interface-bandwidth-start
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro name?                string
    |  +--ro current-bandwidth?   uint64
    +---n interface-bandwidth-upgrade
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro name?                string
    |  +--ro current-bandwidth?   uint64
    +---n interface-bandwidth-downgrade
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro name?                string
    |  +--ro current-bandwidth?   uint64
    +---n interface-bandwidth-close
       +--ro severity?            cml-data-types:cml_notif_severity_t
       +--ro eventClass?          cml-data-types:cml_notif_class_t
       +--ro name?                string
       +--ro current-bandwidth?   uint64
 
module: ipi-if-flowspec
 
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw interface-flowspec
       +--rw ipv4
          +--rw config
          |  +--rw flowspec-disable?   empty
          +--ro state
             +--ro flowspec-disable?   empty
 
module: ipi-if-ip
  +--rw ip-global
     +--rw vrf* [vrf-name] {feature-list:HAVE_VRF}?
     |  +--rw vrf-name    -> ../config/vrf-name
     |  +--rw config
     |  |  +--rw vrf-name?                      -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |  |  +--rw disable-ip-vrf-forwarding?     empty
     |  |  +--rw disable-ipv6-vrf-forwarding?   empty {feature-list:HAVE_IPV6}?
     |  |  +--rw enable-icmp-broadcast?         empty
     |  +--ro state
     |     +--ro vrf-name?                      -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     +--ro disable-ip-vrf-forwarding?     empty
     |     +--ro disable-ipv6-vrf-forwarding?   empty {feature-list:HAVE_IPV6}?
     |     +--ro enable-icmp-broadcast?         empty
     +--rw config
     |  +--rw router-id?                           string
     |  +--rw enable-auto-router-id-selection?     empty
     |  +--rw disable-ip-forwarding?               empty
     |  +--rw disable-ipv6-forwarding?             empty {feature-list:HAVE_IPV6}?
     |  +--rw default-vrf-enable-icmp-broadcast?   empty
     +--ro state
        +--ro router-id?                           string
        +--ro enable-auto-router-id-selection?     empty
        +--ro disable-ip-forwarding?               empty
        +--ro disable-ipv6-forwarding?             empty {feature-list:HAVE_IPV6}?
        +--ro default-vrf-enable-icmp-broadcast?   empty
 
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw ipv4
       +--rw secondary-addresses* [ip-address]
       |  +--rw ip-address    -> ../config/ip-address
       |  +--rw config
       |  |  +--rw ip-address?          cml-data-types:cml_ipv4_prefix_t
       |  |  +--rw ip-label?            cml-data-types:cml_line_t
       |  |  +--rw secondary-anycast?   empty
       |  +--ro state
       |     +--ro ip-address?          cml-data-types:cml_ipv4_prefix_t
       |     +--ro ip-label?            cml-data-types:cml_line_t
       |     +--ro secondary-anycast?   empty
       +--rw config
       |  +--rw primary-ip-addr?           cml-data-types:cml_ipv4_prefix_t
       |  +--rw enable-dhcp-ip-address?    empty {feature-list:HAVE_DHCP_CLIENT}?
       |  +--rw prefix-length?             uint8
       |  +--rw ip-addr-label?             cml-data-types:cml_line_t
       |  +--rw ipv4-unnumbered-if-name?   string {feature-list:HAVE_NSM_IF_UNNUMBERED}?
       |  +--rw remote-address?            string {feature-list:HAVE_NSM_IF_UNNUMBERED}?
       |  +--rw primary-anycast?           empty
       +--ro state
          +--ro primary-ip-addr?           cml-data-types:cml_ipv4_prefix_t
          +--ro enable-dhcp-ip-address?    empty {feature-list:HAVE_DHCP_CLIENT}?
          +--ro prefix-length?             uint8
          +--ro ip-addr-label?             cml-data-types:cml_line_t
          +--ro ipv4-unnumbered-if-name?   string {feature-list:HAVE_NSM_IF_UNNUMBERED}?
          +--ro remote-address?            string {feature-list:HAVE_NSM_IF_UNNUMBERED}?
          +--ro primary-anycast?           empty
          +--ro dhcp-ip-adddress?          cml-data-types:cml_ipv4_prefix_t {feature-list:HAVE_DHCP_CLIENT}?
          +--ro ipv4-enabled-status?       boolean
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw ipv6 {feature-list:HAVE_IPV6}?
       +--rw addresses* [ipv6-address] {feature-list:HAVE_IPV6}?
       |  +--rw ipv6-address    -> ../config/ipv6-address
       |  +--rw config
       |  |  +--rw ipv6-address?   cml-data-types:cml_ipv6_prefix_t
       |  |  +--rw anycast?        empty
       |  +--ro state
       |     +--ro ipv6-address?   cml-data-types:cml_ipv6_prefix_t
       |     +--ro anycast?        empty
       +--rw config
       |  +--rw ipv6-unnumbered-if-name?              string {feature-list:HAVE_NSM_IF_UNNUMBERED,feature-list:HAVE_IPV6}?
       |  +--rw enable-dhcp-ipv6-address?             empty {feature-list:HAVE_DHCP_CLIENT}?
       |  +--rw enable-dhcp-temporary-ipv6-address?   empty {feature-list:HAVE_DHCP_CLIENT}?
       |  +--rw dhcp-address-prefix-length?           uint8 {feature-list:HAVE_DHCP_CLIENT}?
       |  +--rw enable-auto-config?                   boolean {feature-list:HAVE_IPV6}?
       |  +--rw max-autoconfig-address?               uint8
       +--ro state
       |  +--ro ipv6-unnumbered-if-name?              string {feature-list:HAVE_NSM_IF_UNNUMBERED,feature-list:HAVE_IPV6}?
       |  +--ro enable-dhcp-ipv6-address?             empty {feature-list:HAVE_DHCP_CLIENT}?
       |  +--ro enable-dhcp-temporary-ipv6-address?   empty {feature-list:HAVE_DHCP_CLIENT}?
       |  +--ro dhcp-address-prefix-length?           uint8 {feature-list:HAVE_DHCP_CLIENT}?
       |  +--ro enable-auto-config?                   boolean {feature-list:HAVE_IPV6}?
       |  +--ro max-autoconfig-address?               uint8
       |  +--ro dhcp-ipv6-adddress?                   cml-data-types:cml_ipv6_prefix_t {feature-list:HAVE_DHCP_CLIENT}?
       |  +--ro forwarding-status?                    boolean {feature-list:HAVE_IPV6}?
       +--ro auto-addresses {feature-list:HAVE_IPV6}?
          +--ro auto-address* [ipv6-address]
             +--ro ipv6-address    -> ../state/ipv6-address
             +--ro state
                +--ro ipv6-address?   cml-data-types:cml_ipv6_prefix_t
                +--ro anycast?        empty
                +--ro virtual?        empty
                +--ro vrrp?           empty {feature-list:HAVE_VRRP_V3}?
 
 
 
 
 
module: ipi-igmp-snooping
  +--rw igmp-snooping
     +--rw global
     |  +--rw config
     |  |  +--rw disable-igmp-snooping?        empty
     |  |  +--rw disable-report-suppression?   empty
     |  |  +--rw unknown-multicast-action?     ipi-igmp-snooping-types:igmp_snoop_unknown_mcast_action_t
     |  +--ro state
     |     +--ro disable-igmp-snooping?        empty
     |     +--ro disable-report-suppression?   empty
     |     +--ro unknown-multicast-action?     ipi-igmp-snooping-types:igmp_snoop_unknown_mcast_action_t
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-igmp-snooping-types:igmp_snoop_debug_options_t
     |  +--ro state
     |     +--ro options?                 ipi-igmp-snooping-types:igmp_snoop_debug_options_t
     |     +--ro terminal-debug-status?   ipi-igmp-snooping-types:igmp_snoop_debug_options_t
     +--rw interfaces
        +--rw interface* [name]
           +--rw name             -> ../config/name
           +--rw config
           |  +--rw name?                     -> /ipi-interface:interfaces/interface/name
           |  +--rw igmp-snooping?            cml-data-types:cml_enable_disable_t
           |  +--rw enable-fast-leave?        empty
           |  +--rw report-suppression?       cml-data-types:cml_enable_disable_t
           |  +--rw mrouter-interface-name*   -> /ipi-interface:interfaces/interface/name
           |  +--rw enable-querier?           empty
           +--ro state
           |  +--ro name?                     -> /ipi-interface:interfaces/interface/name
           |  +--ro igmp-snooping?            cml-data-types:cml_enable_disable_t
           |  +--ro enable-fast-leave?        empty
           |  +--ro report-suppression?       cml-data-types:cml_enable_disable_t
           |  +--ro mrouter-interface-name*   -> /ipi-interface:interfaces/interface/name
           |  +--ro enable-querier?           empty
           +--rw static-groups
              +--rw ssm-groups
              |  +--rw ssm-group* [group-address source-address interface-name]
              |     +--rw group-address     -> ../config/group-address
              |     +--rw source-address    -> ../config/source-address
              |     +--rw interface-name    -> ../config/interface-name
              |     +--rw config
              |     |  +--rw group-address?    inet:ipv4-address
              |     |  +--rw interface-name?   string
              |     |  +--rw source-address?   inet:ipv4-address
              |     +--ro state
              |        +--ro group-address?    inet:ipv4-address
              |        +--ro interface-name?   string
              |        +--ro source-address?   inet:ipv4-address
              +--rw asm-groups
                 +--rw asm-group* [group-address interface-name]
                    +--rw group-address     -> ../config/group-address
                    +--rw interface-name    -> ../config/interface-name
                    +--rw config
                    |  +--rw group-address?    inet:ipv4-address
                    |  +--rw interface-name?   string
                    +--ro state
                       +--ro group-address?    inet:ipv4-address
                       +--ro interface-name?   string
 
  rpcs:
    +---x igmp-snooping-clear-group-interface {feature-list:HAVE_L2MRIBD}?
    |  +---w input
    |     +---w group-address     inet:ipv4-address
    |     +---w interface-name    string
    +---x igmp-snooping-clear-interface {feature-list:HAVE_L2MRIBD}?
    |  +---w input
    |     +---w interface-name    string
    +---x igmp-snooping-clear-all {feature-list:HAVE_L2MRIBD}?
    +---x igmp-snooping-clear-group {feature-list:HAVE_L2MRIBD}?
    |  +---w input
    |     +---w group-address    inet:ipv4-address
    +---x igmp-snooping-terminal-debug-on {feature-list:HAVE_L2MRIBD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-igmp-snooping-types:igmp_snoop_debug_options_t
    +---x igmp-snooping-terminal-debug-off {feature-list:HAVE_L2MRIBD}?
       +---w input
          +---w terminal-debug-options    ipi-igmp-snooping-types:igmp_snoop_debug_options_t
 
 
module: ipi-igmp
  +--rw igmp
     +--rw vrfs
     |  +--rw vrf* [vrf-name]
     |     +--rw vrf-name                    -> ../config/vrf-name
     |     +--rw config
     |     |  +--rw vrf-name?            -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--rw disable-ssm-map?     empty
     |     |  +--rw disable-tos-check?   empty
     |     +--ro state
     |     |  +--ro vrf-name?            -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--ro disable-ssm-map?     empty
     |     |  +--ro disable-tos-check?   empty
     |     +--rw group-membership-control
     |     |  +--rw config
     |     |  |  +--rw member-limit?          uint32
     |     |  |  +--rw limit-exception-acl?   string
     |     |  +--ro state
     |     |     +--ro member-limit?           uint32
     |     |     +--ro limit-exception-acl?    string
     |     |     +--ro current-states-count?   uint32
     |     +--rw ssm
     |     |  +--rw static-mappings
     |     |     +--rw static-mapping* [group-ranges-acl source]
     |     |        +--rw group-ranges-acl    -> ../config/group-ranges-acl
     |     |        +--rw source              -> ../config/source
     |     |        +--rw config
     |     |        |  +--rw group-ranges-acl?   string
     |     |        |  +--rw source?             inet:ipv4-address
     |     |        +--ro state
     |     |           +--ro group-ranges-acl?   string
     |     |           +--ro source?             inet:ipv4-address
     |     +--rw debug
     |        +--rw config
     |        |  +--rw options?   ipi-igmp-types:igmp_debug_options_t
     |        +--ro state
     |           +--ro options?                 ipi-igmp-types:igmp_debug_options_t
     |           +--ro terminal-debug-status?   ipi-igmp-types:igmp_debug_options_t
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name                        -> ../config/name
     |     +--rw config
     |     |  +--rw name?                          -> /ipi-interface:interfaces/interface/name
     |     |  +--rw enabled?                       empty
     |     |  +--rw last-member-query-count?       uint8
     |     |  +--rw last-member-query-interval?    uint16
     |     |  +--rw querier-timeout?               uint16
     |     |  +--rw query-interval?                uint16
     |     |  +--rw query-max-response-time?       uint8
     |     |  +--rw startup-query-interval?        uint16
     |     |  +--rw startup-query-count?           uint8
     |     |  +--rw robustness-variable?           uint8
     |     |  +--rw version?                       uint8
     |     |  +--rw require-router-alert-option?   empty
     |     |  +--rw allow-offlink-host?            empty
     |     +--ro state
     |     |  +--ro counters
     |     |  |  +--ro v1-reports-received?     yang:counter32
     |     |  |  +--ro v2-reports-received?     yang:counter32
     |     |  |  +--ro v2-leaves-received?      yang:counter32
     |     |  |  +--ro v3-reports-received?     yang:counter32
     |     |  |  +--ro current-group-records?   yang:counter32
     |     |  +--ro internet-address?              inet:ipv4-address
     |     |  +--ro oper-status?                   ipi-igmp-types:igmp_if_oper_status_t
     |     |  +--ro host-version?                  uint8
     |     |  +--ro is-querier?                    boolean
     |     |  +--ro querying-router?               inet:ipv4-address
     |     |  +--ro group-membership-interval?     uint32
     |     |  +--ro name?                          -> /ipi-interface:interfaces/interface/name
     |     |  +--ro enabled?                       empty
     |     |  +--ro last-member-query-count?       uint8
     |     |  +--ro last-member-query-interval?    uint16
     |     |  +--ro querier-timeout?               uint16
     |     |  +--ro query-interval?                uint16
     |     |  +--ro query-max-response-time?       uint8
     |     |  +--ro startup-query-interval?        uint16
     |     |  +--ro startup-query-count?           uint8
     |     |  +--ro robustness-variable?           uint8
     |     |  +--ro version?                       uint8
     |     |  +--ro require-router-alert-option?   empty
     |     |  +--ro allow-offlink-host?            empty
     |     +--rw proxy
     |     |  +--rw config
     |     |  |  +--rw enable-proxy-service?          empty
     |     |  |  +--rw mroute-proxy-interface?        string
     |     |  |  +--rw unsolicited-report-interval?   uint16
     |     |  +--ro state
     |     |     +--ro enable-proxy-service?          empty
     |     |     +--ro mroute-proxy-interface?        string
     |     |     +--ro unsolicited-report-interval?   uint16
     |     |     +--ro oper-status?                   ipi-igmp-types:igmp_proxy_if_oper_status_t
     |     +--rw group-membership-control
     |     |  +--rw config
     |     |  |  +--rw access-group-name?             string
     |     |  |  +--rw immediate-leave-groups-list?   string
     |     |  |  +--rw member-limit?                  uint32
     |     |  |  +--rw limit-exception-acl?           string
     |     |  +--ro state
     |     |     +--ro access-group-name?             string
     |     |     +--ro immediate-leave-groups-list?   string
     |     |     +--ro member-limit?                  uint32
     |     |     +--ro limit-exception-acl?           string
     |     +--rw asm-static-groups
     |     |  +--rw asm-static-group* [group-address]
     |     |     +--rw group-address    -> ../config/group-address
     |     |     +--rw config
     |     |     |  +--rw group-address?   inet:ipv4-address
     |     |     +--ro state
     |     |        +--ro group-address?   inet:ipv4-address
     |     +--rw ssm-static-groups
     |     |  +--rw ssm-static-group* [group-address source]
     |     |     +--rw group-address    -> ../config/group-address
     |     |     +--rw source           -> ../config/source
     |     |     +--rw config
     |     |     |  +--rw group-address?   inet:ipv4-address
     |     |     |  +--rw source?          ipi-igmp-types:igmp_static_ssm_source_t
     |     |     +--ro state
     |     |        +--ro group-address?   inet:ipv4-address
     |     |        +--ro source?          ipi-igmp-types:igmp_static_ssm_source_t
     |     +--rw asm-join-groups
     |     |  +--rw asm-join-group* [group-address]
     |     |     +--rw group-address    -> ../config/group-address
     |     |     +--rw config
     |     |     |  +--rw group-address?   inet:ipv4-address
     |     |     +--ro state
     |     |        +--ro group-address?   inet:ipv4-address
     |     +--rw ssm-join-groups
     |        +--rw ssm-join-group* [group-address source]
     |           +--rw group-address    -> ../config/group-address
     |           +--rw source           -> ../config/source
     |           +--rw config
     |           |  +--rw group-address?   inet:ipv4-address
     |           |  +--rw source?          inet:ipv4-address
     |           +--ro state
     |              +--ro group-address?   inet:ipv4-address
     |              +--ro source?          inet:ipv4-address
     +--ro group-membership-tree
        +--ro igmp-instances
           +--ro igmp-instance* [vrf-name]
              +--ro vrf-name      -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
              +--ro interfaces
                 +--ro interface* [if-name]
                    +--ro if-name          -> /ipi-interface:interfaces/interface/name
                    +--ro member-groups
                    |  +--ro member-group* [group-address]
                    |     +--ro group-address      -> ../state/group-address
                    |     +--ro state
                    |     |  +--ro group-address?    inet:ipv4-address
                    |     |  +--ro dynamic-remote?   empty
                    |     |  +--ro static-group?     empty
                    |     |  +--ro local?            empty
                    |     |  +--ro ssm-mapped?       empty
                    |     |  +--ro static-source?    empty
                    |     |  +--ro up-time?          string
                    |     |  +--ro group-mode?       ipi-igmp-types:igmp_ssm_group_mode_t
                    |     |  +--ro expiry?           string
                    |     |  +--ro last-reporter?    inet:ipv4-address
                    |     +--ro include-sources
                    |     |  +--ro include-source* [source-address]
                    |     |     +--ro source-address    -> ../state/source-address
                    |     |     +--ro state
                    |     |        +--ro source-address?   inet:ipv4-address
                    |     |        +--ro dynamic-remote?   empty
                    |     |        +--ro static-source?    empty
                    |     |        +--ro local?            empty
                    |     |        +--ro ssm-mapped?       empty
                    |     |        +--ro up-time?          string
                    |     |        +--ro expiry?           string
                    |     |        +--ro is-forwarded?     ipi-igmp-types:igmp_yes_no_t
                    |     +--ro exclude-sources
                    |        +--ro exclude-source* [source-address]
                    |           +--ro source-address    -> ../state/source-address
                    |           +--ro state
                    |              +--ro source-address?   inet:ipv4-address
                    |              +--ro dynamic-remote?   empty
                    |              +--ro static-source?    empty
                    |              +--ro local?            empty
                    |              +--ro ssm-mapped?       empty
                    |              +--ro up-time?          string
                    |              +--ro expiry?           string
                    |              +--ro is-forwarded?     ipi-igmp-types:igmp_yes_no_t
                    +--ro proxy-groups
                       +--ro proxy-group* [group-address]
                          +--ro group-address    -> ../state/group-address
                          +--ro state
                             +--ro group-address?       inet:ipv4-address
                             +--ro proxy-interface?     string
                             +--ro group-mode?          ipi-igmp-types:igmp_ssm_group_mode_t
                             +--ro state?               ipi-igmp-types:igmp_if_state_t
                             +--ro membership-state?    ipi-igmp-types:igmp_proxy_grp_membership_state_t
                             +--ro multicast-sources*   inet:ipv4-address
 
  rpcs:
    +---x igmp-terminal-debug-on {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-igmp-types:igmp_debug_options_t
    +---x igmp-terminal-debug-off {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-igmp-types:igmp_debug_options_t
    +---x igmp-clear-all-groups {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?    string
    |     +---w clear-all    empty
    +---x igmp-clear-group-on-interface {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?        string
    |     +---w group-address    inet:ipv4-address
    |     +---w if-name          string
    +---x igmp-clear-all-groups-on-interface {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?   string
    |     +---w if-name     string
    +---x igmp-clear-group {feature-list:HAVE_MRIBD}?
       +---w input
          +---w vrf-name?        string
          +---w group-address    inet:ipv4-address
 
module: ipi-igp-te
  +--rw igp-te
     +--rw interfaces
        +--rw interface* [name]
           +--rw name        -> ../config/name
           +--rw config
           |  +--rw name?   -> /ipi-interface:interfaces/interface/name
           +--ro state
           |  +--ro name?   -> /ipi-interface:interfaces/interface/name
           +--rw uni-link
              +--rw config
              |  +--rw delay?             uint32
              |  +--rw delay-variation?   uint32
              |  +--rw loss-percentage?   decimal64
              +--ro state
              |  +--ro delay?             uint32
              |  +--ro delay-variation?   uint32
              |  +--ro loss-percentage?   decimal64
              +--rw twamp-loss-parameter {feature-list:HAVE_TWAMP}?
              |  +--rw config
              |  |  +--rw loss-dynamic?   empty
              |  +--ro state
              |     +--ro loss-dynamic?   empty
              +--rw irb-twamp-loss-parameter {feature-list:HAVE_TWAMP}?
              |  +--rw config
              |  |  +--rw loss-dynamic?   empty
              |  +--ro state
              |     +--ro loss-dynamic?   empty
              +--rw twamp-session-parameters {feature-list:HAVE_TWAMP}?
              |  +--rw twamp-session-parameter* [delay-dynamic-twamp reflector-ip]
              |  |  +--rw delay-dynamic-twamp    -> ../config/delay-dynamic-twamp
              |  |  +--rw reflector-ip           -> ../config/reflector-ip
              |  |  +--rw config
              |  |  |  +--rw delay-dynamic-twamp?   empty
              |  |  |  +--rw reflector-ip?          cml-data-types:cml_hostpname_t
              |  |  |  +--rw reflector-port?        uint16
              |  |  |  +--rw sender-ip?             cml-data-types:cml_hostpname_t
              |  |  |  +--rw sender-port?           uint16
              |  |  |  +--rw dscp?                  string
              |  |  +--ro state
              |  |  |  +--ro delay-dynamic-twamp?   empty
              |  |  |  +--ro reflector-ip?          cml-data-types:cml_hostpname_t
              |  |  |  +--ro reflector-port?        uint16
              |  |  |  +--ro sender-ip?             cml-data-types:cml_hostpname_t
              |  |  |  +--ro sender-port?           uint16
              |  |  |  +--ro dscp?                  string
              |  |  +--ro statistics
              |  |     +--ro state
              |  |        +--ro last-advertised-calculation-time?          yang:date-and-time
              |  |        +--ro last-advertised-minimum-delay?             uint64
              |  |        +--ro last-advertised-maximum-delay?             uint64
              |  |        +--ro last-advertised-average-delay?             uint64
              |  |        +--ro last-advertised-minimum-delay-variation?   uint64
              |  |        +--ro last-advertised-maximum-delay-variation?   uint64
              |  |        +--ro last-advertised-average-delay-variation?   uint64
              |  |        +--ro last-advertised-packets-sent?              yang:counter64
              |  |        +--ro last-advertised-packets-received?          yang:counter64
              |  |        +--ro last-advertised-packets-timeout?           yang:counter64
              |  |        +--ro last-advertised-packet-loss?               decimal64
              |  |        +--ro last-calculated-calculation-time?          yang:date-and-time
              |  |        +--ro last-calculated-minimum-delay?             uint64
              |  |        +--ro last-calculated-maximum-delay?             uint64
              |  |        +--ro last-calculated-average-delay?             uint64
              |  |        +--ro last-calculated-minimum-delay-variation?   uint64
              |  |        +--ro last-calculated-maximum-delay-variation?   uint64
              |  |        +--ro last-calculated-average-delay-variation?   uint64
              |  |        +--ro last-calculated-packets-sent?              yang:counter64
              |  |        +--ro last-calculated-packets-received?          yang:counter64
              |  |        +--ro last-calculated-packets-timeout?           yang:counter64
              |  |        +--ro last-calculated-packet-loss?               decimal64
              |  +--rw irb-twamp-session-parameter* [delay-dynamic-twamp reflector-ip]
              |     +--rw delay-dynamic-twamp    -> ../config/delay-dynamic-twamp
              |     +--rw reflector-ip           -> ../config/reflector-ip
              |     +--rw config
              |     |  +--rw delay-dynamic-twamp?   empty
              |     |  +--rw reflector-ip?          cml-data-types:cml_hostpname_t
              |     |  +--rw reflector-port?        uint16
              |     |  +--rw sender-ip?             cml-data-types:cml_hostpname_t
              |     |  +--rw sender-port?           uint16
              |     |  +--rw dscp?                  string
              |     +--ro state
              |     |  +--ro delay-dynamic-twamp?   empty
              |     |  +--ro reflector-ip?          cml-data-types:cml_hostpname_t
              |     |  +--ro reflector-port?        uint16
              |     |  +--ro sender-ip?             cml-data-types:cml_hostpname_t
              |     |  +--ro sender-port?           uint16
              |     |  +--ro dscp?                  string
              |     +--ro statistics
              |        +--ro state
              |           +--ro last-advertised-calculation-time?          yang:date-and-time
              |           +--ro last-advertised-minimum-delay?             uint64
              |           +--ro last-advertised-maximum-delay?             uint64
              |           +--ro last-advertised-average-delay?             uint64
              |           +--ro last-advertised-minimum-delay-variation?   uint64
              |           +--ro last-advertised-maximum-delay-variation?   uint64
              |           +--ro last-advertised-average-delay-variation?   uint64
              |           +--ro last-advertised-packets-sent?              yang:counter64
              |           +--ro last-advertised-packets-received?          yang:counter64
              |           +--ro last-advertised-packets-timeout?           yang:counter64
              |           +--ro last-advertised-packet-loss?               decimal64
              |           +--ro last-calculated-calculation-time?          yang:date-and-time
              |           +--ro last-calculated-minimum-delay?             uint64
              |           +--ro last-calculated-maximum-delay?             uint64
              |           +--ro last-calculated-average-delay?             uint64
              |           +--ro last-calculated-minimum-delay-variation?   uint64
              |           +--ro last-calculated-maximum-delay-variation?   uint64
              |           +--ro last-calculated-average-delay-variation?   uint64
              |           +--ro last-calculated-packets-sent?              yang:counter64
              |           +--ro last-calculated-packets-received?          yang:counter64
              |           +--ro last-calculated-packets-timeout?           yang:counter64
              |           +--ro last-calculated-packet-loss?               decimal64
              +--rw delay-threshold
              |  +--rw a-bit* [a-bit-min a-bit-max]
              |     +--rw a-bit-min    -> ../config/a-bit-min
              |     +--rw a-bit-max    -> ../config/a-bit-max
              |     +--rw config
              |     |  +--rw a-bit-min?   uint32
              |     |  +--rw a-bit-max?   uint32
              |     +--ro state
              |        +--ro a-bit-min?   uint32
              |        +--ro a-bit-max?   uint32
              +--rw min-max-delay
              |  +--rw delay* [min-value max-value]
              |     +--rw min-value    -> ../config/min-value
              |     +--rw max-value    -> ../config/max-value
              |     +--rw config
              |     |  +--rw min-value?   uint32
              |     |  +--rw max-value?   uint32
              |     +--ro state
              |        +--ro min-value?   uint32
              |        +--ro max-value?   uint32
              +--rw loss
              |  +--rw threshold* [loss-a-bit-min loss-a-bit-max]
              |     +--rw loss-a-bit-min    -> ../config/loss-a-bit-min
              |     +--rw loss-a-bit-max    -> ../config/loss-a-bit-max
              |     +--rw config
              |     |  +--rw loss-a-bit-min?   decimal64
              |     |  +--rw loss-a-bit-max?   decimal64
              |     +--ro state
              |        +--ro loss-a-bit-min?   decimal64
              |        +--ro loss-a-bit-max?   decimal64
              +--rw min-max-delay-threshold
                 +--rw a-bit* [a-bit-min-range-minimum a-bit-min-range-maximum a-bit-max-range-minimum a-bit-max-range-maximum]
                    +--rw a-bit-min-range-minimum    -> ../config/a-bit-min-range-minimum
                    +--rw a-bit-min-range-maximum    -> ../config/a-bit-min-range-maximum
                    +--rw a-bit-max-range-minimum    -> ../config/a-bit-max-range-minimum
                    +--rw a-bit-max-range-maximum    -> ../config/a-bit-max-range-maximum
                    +--rw config
                    |  +--rw a-bit-min-range-minimum?   uint32
                    |  +--rw a-bit-min-range-maximum?   uint32
                    |  +--rw a-bit-max-range-minimum?   uint32
                    |  +--rw a-bit-max-range-maximum?   uint32
                    +--ro state
                       +--ro a-bit-min-range-minimum?   uint32
                       +--ro a-bit-min-range-maximum?   uint32
                       +--ro a-bit-max-range-minimum?   uint32
                       +--ro a-bit-max-range-maximum?   uint32
 
  rpcs:
    +---x twamp-clear-measurement-intf {feature-list:HAVE_TWAMP}?
    |  +---w input
    |     +---w interface-name    string
    +---x twamp-clear-measurement-all {feature-list:HAVE_TWAMP}?
 
  notifications:
    +---n delay-measurement-status {feature-list:HAVE_TWAMP}?
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro message?      string
 
module: ipi-interface
  +--rw interfaces
     +--rw interface* [name]
        +--rw name                  -> ../config/name
        +--rw config
        |  +--rw name?                    string
        |  +--rw enable-switchport?       empty
        |  +--rw vrf-name?                -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
        |  +--rw vr-name?                 string {feature-list:HAVE_VR}?
        |  +--rw type?                    ipi-if-types:if_iana_if_type_t
        |  +--rw mtu?                     uint32
        |  +--rw dot1ad-ether-type?       string {feature-list:HAVE_VLAN_STACK,feature-list:NOT_HAVE_SWFWDR}?
        |  +--rw protected-port?          ipi-if-types:if_protected_port_type_t {feature-list:HAVE_DUNE}?
        |  +--rw bridge-domain-forward?   empty {feature-list:HAVE_DUNE}?
        |  +--rw description?             cml-data-types:cml_line_t
        |  +--rw shutdown?                empty
        +--ro state
        |  +--ro name?                    string
        |  +--ro enable-switchport?       empty
        |  +--ro vrf-name?                -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
        |  +--ro vr-name?                 string {feature-list:HAVE_VR}?
        |  +--ro type?                    ipi-if-types:if_iana_if_type_t
        |  +--ro mtu?                     uint32
        |  +--ro dot1ad-ether-type?       string {feature-list:HAVE_VLAN_STACK,feature-list:NOT_HAVE_SWFWDR}?
        |  +--ro protected-port?          ipi-if-types:if_protected_port_type_t {feature-list:HAVE_DUNE}?
        |  +--ro bridge-domain-forward?   empty {feature-list:HAVE_DUNE}?
        |  +--ro description?             cml-data-types:cml_line_t
        |  +--ro shutdown?                empty
        |  +--ro ifindex?                 uint32
        |  +--ro admin-status?            ipi-if-types:if_interface_admin_status_t
        |  +--ro oper-status?             ipi-if-types:if_interface_oper_status_t
        |  +--ro last-change?             yang:timeticks
        |  +--ro logical?                 boolean
        |  +--ro counters
        |     +--ro in-octets?            yang:counter64
        |     +--ro in-pkts?              yang:counter64
        |     +--ro in-unicast-pkts?      yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
        |     +--ro in-broadcast-pkts?    yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
        |     +--ro in-multicast-pkts?    yang:counter64
        |     +--ro in-discards?          yang:counter64
        |     +--ro in-errors?            yang:counter64
        |     +--ro in-fcs-errors?        yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
        |     +--ro out-octets?           yang:counter64
        |     +--ro out-pkts?             yang:counter64
        |     +--ro out-unicast-pkts?     yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
        |     +--ro out-broadcast-pkts?   yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
        |     +--ro out-multicast-pkts?   yang:counter64 {feature-list:HAVE_BROADCOM,feature-list:HAVE_HAL,feature-list:NOT_HAVE_SWFWDR}?
        |     +--ro out-discards?         yang:counter64
        |     +--ro out-errors?           yang:counter64
        |     +--ro last-clear?           ipi-if-types:if_last_clear_time_t
        +--rw interface-loopback
           +--rw config!
           |  +--rw if-loopback          ipi-if-types:if_loopback_dir_type_t
           |  +--rw if-loopback-level    ipi-if-types:if_loopback_type_t
           +--ro state
              +--ro if-loopback          ipi-if-types:if_loopback_dir_type_t
              +--ro if-loopback-level    ipi-if-types:if_loopback_type_t
 
  rpcs:
    +---x clear-interface-counters
       +---w input
          +---w name    string
 
  notifications:
    +---n interface-link-state-change-notification
       +--ro severity?      cml-data-types:cml_notif_severity_t
       +--ro eventClass?    cml-data-types:cml_notif_class_t
       +--ro name?          string
       +--ro oper-status?   ipi-if-types:if_interface_oper_status_t
 
module: ipi-ip-sla
  +--rw ip-sla
     +--rw processes
     |  +--rw process* [identifier]
     |     +--rw identifier             -> ../config/identifier
     |     +--rw config
     |     |  +--rw identifier?   uint16
     |     +--ro state
     |     |  +--ro identifier?   uint16
     |     +--ro ip-sla-statistics
     |     |  +--ro state
     |     |     +--ro start-time?                 yang:date-and-time
     |     |     +--ro elapsed-time?               uint64
     |     |     +--ro packets-sent?               uint32
     |     |     +--ro packets-received?           uint32
     |     |     +--ro packets-lost?               decimal64
     |     |     +--ro invalid-tests?              uint32
     |     |     +--ro minimum-round-trip-delay?   uint64
     |     |     +--ro maximum-round-trip-delay?   uint64
     |     |     +--ro average-round-trip-delay?   uint64
     |     +--rw icmp-echo-processes
     |        +--rw icmp-echo-process* [host]
     |           +--rw host      -> ../config/host
     |           +--rw config
     |           |  +--rw host?               ip_sla_hostname_t
     |           |  +--rw source-interface?   string
     |           |  +--rw frequency?          uint8
     |           |  +--rw timeout?            uint16
     |           |  +--rw threshold?          uint16
     |           +--ro state
     |              +--ro host?               ip_sla_hostname_t
     |              +--ro source-interface?   string
     |              +--ro frequency?          uint8
     |              +--ro timeout?            uint16
     |              +--ro threshold?          uint16
     +--rw scheduled-processes
        +--rw scheduled-process* [scheduled-pid time-range-name]
           +--rw scheduled-pid      -> ../config/scheduled-pid
           +--rw time-range-name    -> ../config/time-range-name
           +--rw config
           |  +--rw scheduled-pid?     uint16
           |  +--rw time-range-name?   string
           |  +--rw vrf-name?          string
           +--ro state
              +--ro scheduled-pid?     uint16
              +--ro time-range-name?   string
              +--ro vrf-name?          string
 
  rpcs:
    +---x ip-sla-clear-statistics {feature-list:HAVE_IPSLA,feature-list:HAVE_BFD}?
       +---w input
          +---w identifier    uint16
 
  notifications:
    +---n icmp-echo-threshold {feature-list:HAVE_IPSLA}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro host?         ip_sla_hostname_t
    |  +--ro identifier?   uint16
    |  +--ro threshold?    uint16
    +---n icmp-echo-timeout {feature-list:HAVE_IPSLA}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro host?         ip_sla_hostname_t
    |  +--ro identifier?   uint16
    |  +--ro timeout?      uint16
    +---n icmp-echo-disconnect {feature-list:HAVE_IPSLA}?
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro identifier?   uint16
 
 
 
module: ipi-ipsec
  +--rw ipsec {feature-list:HAVE_IPSEC}?
     +--rw transform-sets
     |  +--rw transform-set* [transform-set-name]
     |     +--rw transform-set-name    -> ../config/transform-set-name
     |     +--rw config
     |     |  +--rw transform-set-name?   string
     |     |  +--rw transform-set-mode?   ipi-ipsec-types:ipsec_ts_mode_t
     |     +--ro state
     |     |  +--ro transform-set-name?       string
     |     |  +--ro transform-set-mode?       ipi-ipsec-types:ipsec_ts_mode_t
     |     |  +--ro transform-set-protocol?   ipi-ipsec-types:ipsec_ts_protocol_t
     |     +--rw ah-auth
     |     |  +--rw config
     |     |  |  +--rw ah-authentication?   ipi-ipsec-types:ipsec_ah_authentication_t
     |     |  +--ro state
     |     |     +--ro ah-authentication?   ipi-ipsec-types:ipsec_ah_authentication_t
     |     +--rw esp-auth
     |        +--rw config!
     |        |  +--rw esp-authentication    ipi-ipsec-types:ipsec_esp_authentication_t
     |        |  +--rw esp-encryption        ipi-ipsec-types:ipsec_esp_encryption_t
     |        +--ro state
     |           +--ro esp-authentication    ipi-ipsec-types:ipsec_esp_authentication_t
     |           +--ro esp-encryption        ipi-ipsec-types:ipsec_esp_encryption_t
     +--rw crypto-maps
        +--rw crypto-map* [name]
           +--rw name        -> ../config/name
           +--rw config
           |  +--rw name?      string
           |  +--rw sa-type    ipi-ipsec-types:ipsec_sa_type_t
           +--ro state
           |  +--ro name?      string
           |  +--ro sa-type    ipi-ipsec-types:ipsec_sa_type_t
           +--rw sessions
              +--rw session* [sequence-id]
                 +--rw sequence-id       -> ../config/sequence-id
                 +--rw config
                 |  +--rw sequence-id?   uint16
                 +--ro state
                 |  +--ro sequence-id?   uint16
                 +--rw transform-sets
                 |  +--rw transform-set* [transform-set-name]
                 |     +--rw transform-set-name    -> ../config/transform-set-name
                 |     +--rw config
                 |     |  +--rw transform-set-name?   -> /ipsec/transform-sets/transform-set/transform-set-name
                 |     +--ro state
                 |        +--ro transform-set-name?   -> /ipsec/transform-sets/transform-set/transform-set-name
                 +--rw peer-addresses
                 |  +--rw peer-address* [peer]
                 |     +--rw peer      -> ../config/peer
                 |     +--rw config
                 |     |  +--rw peer?   inet:ip-address
                 |     |  +--rw spi     ipi-ipsec-types:ipsec_peer_spi_t
                 |     +--ro state
                 |        +--ro peer?   inet:ip-address
                 |        +--ro spi     ipi-ipsec-types:ipsec_peer_spi_t
                 +--rw session-keys
                    +--rw session-key* [direction protocol security-parameter-index]
                       +--rw direction                   -> ../config/direction
                       +--rw protocol                    -> ../config/protocol
                       +--rw security-parameter-index    -> ../config/security-parameter-index
                       +--rw config
                       |  +--rw direction?                  ipi-ipsec-types:ipsec_session_key_direction_t
                       |  +--rw protocol?                   ipi-ipsec-types:ipsec_session_key_protocol_t
                       |  +--rw security-parameter-index?   uint16
                       |  +--rw cipher                      string
                       |  +--rw authentication-key          string
                       +--ro state
                          +--ro direction?                  ipi-ipsec-types:ipsec_session_key_direction_t
                          +--ro protocol?                   ipi-ipsec-types:ipsec_session_key_protocol_t
                          +--ro security-parameter-index?   uint16
                          +--ro cipher                      string
                          +--ro authentication-key          string
 
module: ipi-ipv6-router-adv
  +--rw router-advertisement {feature-list:HAVE_RTADV}?
     +--rw interfaces
        +--rw interface* [name]
           +--rw name             -> ../config/name
           +--rw config
           |  +--rw name?                -> /ipi-interface:interfaces/interface/name
           |  +--rw suppress-ra?         empty
           |  +--rw suppress-ra-mtu?     empty
           |  +--rw managed-flag?        empty
           |  +--rw other-config-flag?   empty
           |  +--rw current-hop-limit?   uint8
           |  +--rw link-mtu?            uint32
           |  +--rw dad-attempts?        uint16
           +--ro state
           |  +--ro name?                -> /ipi-interface:interfaces/interface/name
           |  +--ro suppress-ra?         empty
           |  +--ro suppress-ra-mtu?     empty
           |  +--ro managed-flag?        empty
           |  +--ro other-config-flag?   empty
           |  +--ro current-hop-limit?   uint8
           |  +--ro link-mtu?            uint32
           |  +--ro dad-attempts?        uint16
           +--rw ipv6-prefixes
           |  +--rw config
           |  |  +--rw off-link?                empty
           |  |  +--rw no-auto-configuration?   empty
           |  |  +--rw valid-lifetime?          uint32
           |  |  +--rw preferred-lifetime?      uint32
           |  +--ro state
           |  |  +--ro off-link?                empty
           |  |  +--ro no-auto-configuration?   empty
           |  |  +--ro valid-lifetime?          uint32
           |  |  +--ro preferred-lifetime?      uint32
           |  +--rw ipv6-prefix* [ipv6-address]
           |     +--rw ipv6-address    -> ../config/ipv6-address
           |     +--rw config
           |     |  +--rw ipv6-address?            cml-data-types:cml_ipv6_prefix_t
           |     |  +--rw valid-lifetime?          uint32
           |     |  +--rw preferred-lifetime?      uint32
           |     |  +--rw off-link?                empty
           |     |  +--rw no-auto-configuration?   empty
           |     +--ro state
           |        +--ro ipv6-address?            cml-data-types:cml_ipv6_prefix_t
           |        +--ro valid-lifetime?          uint32
           |        +--ro preferred-lifetime?      uint32
           |        +--ro off-link?                empty
           |        +--ro no-auto-configuration?   empty
           +--rw timers
              +--rw config
              |  +--rw reachable-time?        uint32
              |  +--rw retransmission-time?   uint32
              |  +--rw router-lifetime?       uint16
              +--ro state
              |  +--ro reachable-time?        uint32
              |  +--ro retransmission-time?   uint32
              |  +--ro router-lifetime?       uint16
              |  +--ro random-interval?       uint32
              |  +--ro time-remaining?        uint32
              +--rw ra-interval
                 +--rw config!
                 |  +--rw max-ra-interval    uint32
                 |  +--rw min-ra-interval    uint32
                 +--ro state
                    +--ro max-ra-interval    uint32
                    +--ro min-ra-interval    uint32
 
 
 
 
 
 
 
 
 
 
 
module: ipi-isis
  +--rw isis
     +--rw isis-instances
     |  +--rw isis-instance* [instance]
     |     +--rw instance                               -> ../config/instance
     |     +--ro ipv4-route* [destination-prefix]
     |     |  +--ro destination-prefix    -> ../state/destination-prefix
     |     |  +--ro nexthop* [nexthop-ip]
     |     |  |  +--ro nexthop-ip    -> ../state/nexthop-ip
     |     |  |  +--ro state
     |     |  |     +--ro nexthop-ip?             inet:ipv4-address
     |     |  |     +--ro outgoing-interface?     string
     |     |  |     +--ro redistribute-map-tag?   uint32
     |     |  |     +--ro source-identifier?      string
     |     |  |     +--ro out-label?              uint32 {feature-list:HAVE_ISIS_SR}?
     |     |  +--ro state
     |     |     +--ro destination-prefix?                  cml-data-types:cml_ipv4_addr_prefix_t
     |     |     +--ro destination-path-metric?             uint32
     |     |     +--ro destination-path-type?               string
     |     |     +--ro is-destination-path-type-external?   boolean
     |     |     +--ro tunnel-lsp-metric?                   uint32 {feature-list:HAVE_MPLS}?
     |     |     +--ro tunnel-lsp-tunnel-identifier?        uint32 {feature-list:HAVE_MPLS}?
     |     |     +--ro tunnel-lsp-tunnel-endpoint?          cml-data-types:cml_ipv4_addr_prefix_t {feature-list:HAVE_MPLS}?
     |     |     +--ro ilm-id?                              uint32 {feature-list:HAVE_ISIS_SR}?
     |     |     +--ro ftn-id?                              uint32 {feature-list:HAVE_ISIS_SR}?
     |     |     +--ro in-label?                            uint32 {feature-list:HAVE_ISIS_SR}?
     |     +--ro ipv6-route* [destination-prefix]
     |     |  +--ro destination-prefix    -> ../state/destination-prefix
     |     |  +--ro nexthop* [nexthop-ip]
     |     |  |  +--ro nexthop-ip    -> ../state/nexthop-ip
     |     |  |  +--ro state
     |     |  |     +--ro nexthop-ip?             inet:ipv6-address
     |     |  |     +--ro outgoing-interface?     string
     |     |  |     +--ro redistribute-map-tag?   uint32
     |     |  +--ro state
     |     |     +--ro destination-prefix?                  cml-data-types:cml_ipv6_prefix_t
     |     |     +--ro destination-path-metric?             uint32
     |     |     +--ro destination-path-type?               string
     |     |     +--ro is-destination-path-type-external?   boolean
     |     +--rw config
     |     |  +--rw instance?                        string
     |     |  +--rw distance?                        uint8
     |     |  +--rw vrf-name                         -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--rw dynamic-host-name?               ipi-isis-types:isis_dynamic_hostanme_t
     |     |  +--rw disable-adjacency-check?         empty
     |     |  +--rw ignore-lsp-errors?               empty
     |     |  +--rw lfa-hold-timer?                  int32 {feature-list:HAVE_ISIS_LFA}?
     |     |  +--rw level-capability?                ipi-isis-types:isis_is_type_t
     |     |  +--rw authentication-send-only?        ipi-isis-types:isis_auth_level_type_t
     |     |  +--rw incremental-spf-levels?          ipi-isis-types:isis_is_type_t
     |     |  +--rw priority-tag?                    uint32 {feature-list:HAVE_WIDE_METRIC}?
     |     |  +--rw enable-cspf-capability?          empty {feature-list:HAVE_ISIS_CSPF}?
     |     |  +--rw disable-gr-capability?           empty {feature-list:HAVE_RESTART}?
     |     |  +--rw enable-bfd-all-interfaces?       empty {feature-list:HAVE_BFD}?
     |     |  +--rw maximum-area-addresses?          uint8
     |     |  +--rw distribute-bgp-ls?               ipi-isis-types:isis_bgp_ls_type_t {feature-list:HAVE_BGP_LS}?
     |     |  +--rw context-name?                    string {feature-list:HAVE_SNMP}?
     |     |  +--rw disable-asla-usage-flex-algo?    empty
     |     |  +--rw disable-asla-strict-flex-algo?   empty
     |     |  +--rw disable-flex-algo-usage?         empty
     |     +--ro state
     |     |  +--ro counters
     |     |  |  +--ro system-level-1-adjacency-count?   uint32
     |     |  |  +--ro system-level-2-adjacency-count?   uint32
     |     |  |  +--ro system-total-adjacency-count?     uint32
     |     |  +--ro next-global-update-level-1?      uint32
     |     |  +--ro next-global-update-level-2?      uint32
     |     |  +--ro overload?                        ipi-isis-types:isis_overload_state_t
     |     |  +--ro instance?                        string
     |     |  +--ro distance?                        uint8
     |     |  +--ro vrf-name                         -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--ro dynamic-host-name?               ipi-isis-types:isis_dynamic_hostanme_t
     |     |  +--ro disable-adjacency-check?         empty
     |     |  +--ro ignore-lsp-errors?               empty
     |     |  +--ro lfa-hold-timer?                  int32 {feature-list:HAVE_ISIS_LFA}?
     |     |  +--ro level-capability?                ipi-isis-types:isis_is_type_t
     |     |  +--ro authentication-send-only?        ipi-isis-types:isis_auth_level_type_t
     |     |  +--ro incremental-spf-levels?          ipi-isis-types:isis_is_type_t
     |     |  +--ro priority-tag?                    uint32 {feature-list:HAVE_WIDE_METRIC}?
     |     |  +--ro enable-cspf-capability?          empty {feature-list:HAVE_ISIS_CSPF}?
     |     |  +--ro disable-gr-capability?           empty {feature-list:HAVE_RESTART}?
     |     |  +--ro enable-bfd-all-interfaces?       empty {feature-list:HAVE_BFD}?
     |     |  +--ro maximum-area-addresses?          uint8
     |     |  +--ro distribute-bgp-ls?               ipi-isis-types:isis_bgp_ls_type_t {feature-list:HAVE_BGP_LS}?
     |     |  +--ro context-name?                    string {feature-list:HAVE_SNMP}?
     |     |  +--ro disable-asla-usage-flex-algo?    empty
     |     |  +--ro disable-asla-strict-flex-algo?   empty
     |     |  +--ro disable-flex-algo-usage?         empty
     |     +--ro vrf
     |     |  +--ro igp-shortcut-lsp* [index]
     |     |     +--ro index    -> ../state/index
     |     |     +--ro state
     |     |        +--ro index?             uint32
     |     |        +--ro metric?            uint16
     |     |        +--ro tunnel-id?         uint32
     |     |        +--ro tunnel-endpoint?   string
     |     |        +--ro lock?              uint16
     |     |        +--ro status?            ipi-isis-types:isis_igp_shortcut_lsp_status_t
     |     +--rw partial-route-computations
     |     |  +--rw partial-route-computation* [minimum-delay maximum-delay]
     |     |     +--rw minimum-delay    -> ../config/minimum-delay
     |     |     +--rw maximum-delay    -> ../config/maximum-delay
     |     |     +--rw config
     |     |     |  +--rw minimum-delay?   uint32
     |     |     |  +--rw maximum-delay?   uint32
     |     |     +--ro state
     |     |        +--ro minimum-delay?   uint32
     |     |        +--ro maximum-delay?   uint32
     |     +--rw area-authentication
     |     |  +--rw config!
     |     |  |  +--rw area-password             string
     |     |  |  +--rw sequence-number-packet?   ipi-isis-types:isis_snp_t
     |     |  +--ro state
     |     |     +--ro area-password             string
     |     |     +--ro sequence-number-packet?   ipi-isis-types:isis_snp_t
     |     +--rw network-entity-title
     |     |  +--rw config
     |     |  |  +--rw net*   string
     |     |  +--ro state
     |     |     +--ro net*   string
     |     +--rw domain-authentication
     |     |  +--rw config!
     |     |  |  +--rw domain-password    string
     |     |  |  +--rw domain-snp?        ipi-isis-types:isis_snp_t
     |     |  +--ro state
     |     |     +--ro domain-password    string
     |     |     +--ro domain-snp?        ipi-isis-types:isis_snp_t
     |     +--rw metric {feature-list:HAVE_WIDE_METRIC}?
     |     |  +--rw config
     |     |  |  +--rw style?          ipi-isis-types:isis_metric_style_t {feature-list:HAVE_WIDE_METRIC}?
     |     |  |  +--rw level-number?   ipi-isis-types:isis_level3_t {feature-list:HAVE_WIDE_METRIC}?
     |     |  +--ro state
     |     |     +--ro style?          ipi-isis-types:isis_metric_style_t {feature-list:HAVE_WIDE_METRIC}?
     |     |     +--ro level-number?   ipi-isis-types:isis_level3_t {feature-list:HAVE_WIDE_METRIC}?
     |     +--rw manual-area-addresses
     |     |  +--ro state
     |     |     +--ro address*   string
     |     +--rw receive-area-addresses
     |     |  +--ro state
     |     |     +--ro address*   string
     |     +--rw timers
     |     |  +--rw config
     |     |  |  +--rw lsp-refresh-interval?    uint16
     |     |  |  +--rw lsp-lifetime-interval?   uint16
     |     |  +--ro state
     |     |     +--ro lsp-refresh-interval?    uint16
     |     |     +--ro lsp-lifetime-interval?   uint16
     |     +--rw traffic-engineering
     |     |  +--rw config
     |     |  |  +--rw ipv4-router-id?   inet:ipv4-address {feature-list:HAVE_ISIS_TE}?
     |     |  |  +--rw ipv6-router-id?   inet:ipv6-address {feature-list:HAVE_ISIS_TE,feature-list:HAVE_IPV6}?
     |     |  +--ro state
     |     |     +--ro ipv4-router-id?   inet:ipv4-address {feature-list:HAVE_ISIS_TE}?
     |     |     +--ro ipv6-router-id?   inet:ipv6-address {feature-list:HAVE_ISIS_TE,feature-list:HAVE_IPV6}?
     |     +--rw address-family-ipv6
     |     |  +--rw level-1-into-2-redistributes
     |     |  |  +--rw redistribute-level-1-into-2* [enable]
     |     |  |     +--rw enable    -> ../config/enable
     |     |  |     +--rw config
     |     |  |     |  +--rw enable?        empty
     |     |  |     |  +--rw level-1-acl?   string
     |     |  |     +--ro state
     |     |  |        +--ro enable?        empty
     |     |  |        +--ro level-1-acl?   string
     |     |  +--rw level-2-into-1-redistributes
     |     |  |  +--rw redistribute-level-2-into-1* [enable]
     |     |  |     +--rw enable    -> ../config/enable
     |     |  |     +--rw config
     |     |  |     |  +--rw enable?        empty
     |     |  |     |  +--rw level-2-acl?   string
     |     |  |     +--ro state
     |     |  |        +--ro enable?        empty
     |     |  |        +--ro level-2-acl?   string
     |     |  +--rw default-route-informations
     |     |  |  +--rw default-route-information* [originate]
     |     |  |     +--rw originate    -> ../config/originate
     |     |  |     +--rw config
     |     |  |     |  +--rw originate?        ipi-isis-types:isis_origin_type_t
     |     |  |     |  +--rw route-map-name?   string
     |     |  |     +--ro state
     |     |  |        +--ro originate?        ipi-isis-types:isis_origin_type_t
     |     |  |        +--ro route-map-name?   string
     |     |  +--rw config!
     |     |  |  +--rw afi-name                   ipi-isis-types:isis_address_ipv6_t
     |     |  |  +--rw administrative-distance?   uint32
     |     |  |  +--rw disable-adjacency-check?   empty
     |     |  +--ro state
     |     |  |  +--ro afi-name                   ipi-isis-types:isis_address_ipv6_t
     |     |  |  +--ro administrative-distance?   uint32
     |     |  |  +--ro disable-adjacency-check?   empty
     |     |  +--rw redistributions
     |     |  |  +--rw redistribute* [ipv6-protocol-type]
     |     |  |     +--rw ipv6-protocol-type    -> ../config/ipv6-protocol-type
     |     |  |     +--rw config
     |     |  |     |  +--rw ipv6-protocol-type?   ipi-isis-types:isis_redistribute_t
     |     |  |     |  +--rw ipv6-level?           ipi-isis-types:isis_is_type3_t
     |     |  |     |  +--rw ipv6-metric-value?    uint32
     |     |  |     |  +--rw ipv6-metric-type?     ipi-isis-types:isis_metric_t
     |     |  |     |  +--rw ipv6-route-map?       string
     |     |  |     +--ro state
     |     |  |        +--ro ipv6-protocol-type?   ipi-isis-types:isis_redistribute_t
     |     |  |        +--ro ipv6-level?           ipi-isis-types:isis_is_type3_t
     |     |  |        +--ro ipv6-metric-value?    uint32
     |     |  |        +--ro ipv6-metric-type?     ipi-isis-types:isis_metric_t
     |     |  |        +--ro ipv6-route-map?       string
     |     |  +--rw summary-prefixes
     |     |  |  +--rw summary-prefix* [prefix]
     |     |  |     +--rw prefix    -> ../config/prefix
     |     |  |     +--rw config
     |     |  |     |  +--rw prefix?   cml-data-types:cml_ipv6_prefix_t
     |     |  |     |  +--rw level     ipi-isis-types:isis_summary_level_t
     |     |  |     |  +--rw metric?   uint8
     |     |  |     +--ro state
     |     |  |        +--ro prefix?   cml-data-types:cml_ipv6_prefix_t
     |     |  |        +--ro level     ipi-isis-types:isis_summary_level_t
     |     |  |        +--ro metric?   uint8
     |     |  +--rw multi-topologies
     |     |  |  +--rw multi-topology* [level] {feature-list:HAVE_MULTI_TOPOLOGY}?
     |     |  |     +--rw level     -> ../config/level
     |     |  |     +--rw config
     |     |  |     |  +--rw level?   ipi-isis-types:isis_multi_topology_level_type_t
     |     |  |     +--ro state
     |     |  |        +--ro level?   ipi-isis-types:isis_multi_topology_level_type_t
     |     |  +--rw isis-srv6 {feature-list:HAVE_SRV6}?
     |     |     +--rw config!
     |     |     |  +--rw isisSRv6enable    empty
     |     |     +--ro state
     |     |     |  +--ro isisSRv6enable    empty
     |     |     +--rw locator-lists
     |     |        +--rw locator-list* [isisSRv6LocatorName]
     |     |           +--rw isisSRv6LocatorName    -> ../config/isisSRv6LocatorName
     |     |           +--rw config
     |     |           |  +--rw isisSRv6LocatorName?   string
     |     |           +--ro state
     |     |              +--ro isisSRv6LocatorName?   string
     |     +--rw distances
     |     |  +--rw distance* [system-id]
     |     |     +--rw system-id    -> ../config/system-id
     |     |     +--rw config
     |     |     |  +--rw system-id?          string
     |     |     |  +--rw value               uint8
     |     |     |  +--rw access-list-name?   string
     |     |     +--ro state
     |     |        +--ro system-id?          string
     |     |        +--ro value               uint8
     |     |        +--ro access-list-name?   string
     |     +--rw lsp-over-load
     |     |  +--rw config!
     |     |  |  +--rw enabled            empty
     |     |  |  +--rw suppress-type?     ipi-isis-types:isis_suppress_t
     |     |  |  +--rw set-bit-on-boot?   ipi-isis-types:isis_onstartup_t
     |     |  +--ro state
     |     |     +--ro enabled            empty
     |     |     +--ro suppress-type?     ipi-isis-types:isis_suppress_t
     |     |     +--ro set-bit-on-boot?   ipi-isis-types:isis_onstartup_t
     |     +--rw address-family-ipv4
     |     |  +--ro state
     |     |  |  +--ro existence-state?            uint8
     |     |  |  +--ro redistribute-update?        int32
     |     |  |  +--ro redistribute-timer-value?   string
     |     |  +--rw level-1-into-2-redistributes
     |     |  |  +--rw redistribute-level-1-into-2* [enable]
     |     |  |     +--rw enable    -> ../config/enable
     |     |  |     +--rw config
     |     |  |     |  +--rw enable?        empty
     |     |  |     |  +--rw level-1-acl?   string
     |     |  |     +--ro state
     |     |  |        +--ro enable?        empty
     |     |  |        +--ro level-1-acl?   string
     |     |  +--rw level-2-into-1-redistributes
     |     |  |  +--rw redistribute-level-2-into-1* [enable]
     |     |  |     +--rw enable    -> ../config/enable
     |     |  |     +--rw config
     |     |  |     |  +--rw enable?        empty
     |     |  |     |  +--rw level-2-acl?   string
     |     |  |     +--ro state
     |     |  |        +--ro enable?        empty
     |     |  |        +--ro level-2-acl?   string
     |     |  +--rw default-route-informations
     |     |  |  +--rw default-route-information* [originate]
     |     |  |     +--rw originate    -> ../config/originate
     |     |  |     +--rw config
     |     |  |     |  +--rw originate?        ipi-isis-types:isis_origin_type_t
     |     |  |     |  +--rw route-map-name?   string
     |     |  |     +--ro state
     |     |  |        +--ro originate?        ipi-isis-types:isis_origin_type_t
     |     |  |        +--ro route-map-name?   string
     |     |  +--rw redistributions
     |     |  |  +--rw redistribute* [protocol-type]
     |     |  |     +--rw protocol-type    -> ../config/protocol-type
     |     |  |     +--rw config
     |     |  |     |  +--rw protocol-type?   ipi-isis-types:isis_redistribute_t
     |     |  |     |  +--rw level?           ipi-isis-types:isis_is_type3_t
     |     |  |     |  +--rw metric-value?    uint32
     |     |  |     |  +--rw metric-type?     ipi-isis-types:isis_metric_t
     |     |  |     |  +--rw route-map?       string
     |     |  |     +--ro state
     |     |  |        +--ro protocol-type?   ipi-isis-types:isis_redistribute_t
     |     |  |        +--ro level?           ipi-isis-types:isis_is_type3_t
     |     |  |        +--ro metric-value?    uint32
     |     |  |        +--ro metric-type?     ipi-isis-types:isis_metric_t
     |     |  |        +--ro route-map?       string
     |     |  +--rw summary-addresses
     |     |  |  +--rw summary-address* [prefix]
     |     |  |     +--rw prefix    -> ../config/prefix
     |     |  |     +--rw config
     |     |  |     |  +--rw prefix?   cml-data-types:cml_ipv4_prefix_t
     |     |  |     |  +--rw level     ipi-isis-types:isis_summary_level_t
     |     |  |     |  +--rw metric?   uint8
     |     |  |     +--ro state
     |     |  |        +--ro prefix?   cml-data-types:cml_ipv4_prefix_t
     |     |  |        +--ro level     ipi-isis-types:isis_summary_level_t
     |     |  |        +--ro metric?   uint8
     |     |  +--rw redistribute-isis-instances
     |     |     +--rw redistribute-isis-instance* [id]
     |     |        +--rw id        -> ../config/id
     |     |        +--rw config
     |     |        |  +--rw id?             string
     |     |        |  +--rw level?          ipi-isis-types:isis_is_type3_t
     |     |        |  +--rw metric-value?   uint32
     |     |        |  +--rw metric-type?    ipi-isis-types:isis_metric_t
     |     |        |  +--rw route-map?      string
     |     |        +--ro state
     |     |           +--ro id?             string
     |     |           +--ro level?          ipi-isis-types:isis_is_type3_t
     |     |           +--ro metric-value?   uint32
     |     |           +--ro metric-type?    ipi-isis-types:isis_metric_t
     |     |           +--ro route-map?      string
     |     +--rw passive-interfaces
     |     |  +--rw config
     |     |  |  +--rw passive-interface-all?   empty
     |     |  +--ro state
     |     |  |  +--ro passive-interface-all?   empty
     |     |  +--rw passive-interface* [name]
     |     |  |  +--rw name      -> ../config/name
     |     |  |  +--rw config
     |     |  |  |  +--rw name?   -> /ipi-interface:interfaces/interface/name
     |     |  |  +--ro state
     |     |  |     +--ro name?   -> /ipi-interface:interfaces/interface/name
     |     |  +--rw disable-passive-interfaces
     |     |     +--rw disable-passive-interface* [name]
     |     |        +--rw name      -> ../config/name
     |     |        +--rw config
     |     |        |  +--rw name?   -> /ipi-interface:interfaces/interface/name
     |     |        +--ro state
     |     |           +--ro name?   -> /ipi-interface:interfaces/interface/name
     |     +--rw microloop-avoidances {feature-list:HAVE_ISIS_LFA_OR_HAVE_ISIS_TI_LFA}?
     |     |  +--rw microloop-avoidance* [level-type]
     |     |     +--rw level-type    -> ../config/level-type
     |     |     +--rw config
     |     |     |  +--rw hold-timer?   uint8
     |     |     |  +--rw max-fib?      uint8
     |     |     |  +--rw level-type?   ipi-isis-types:isis_level2_t
     |     |     |  +--rw enable?       empty
     |     |     +--ro state
     |     |        +--ro hold-timer?   uint8
     |     |        +--ro max-fib?      uint8
     |     |        +--ro level-type?   ipi-isis-types:isis_level2_t
     |     |        +--ro enable?       empty
     |     +--rw mpls-traffic-engg
     |     |  +--rw config
     |     |  |  +--rw enable-level-1?   empty {feature-list:HAVE_ISIS_TE}?
     |     |  |  +--rw enable-level-2?   empty {feature-list:HAVE_ISIS_TE}?
     |     |  +--ro state
     |     |     +--ro enable-level-1?   empty {feature-list:HAVE_ISIS_TE}?
     |     |     +--ro enable-level-2?   empty {feature-list:HAVE_ISIS_TE}?
     |     +--ro extended-admin-groups
     |     |  +--ro extended-admin-group* [name id]
     |     |     +--ro name     -> ../state/name
     |     |     +--ro id       -> ../state/id
     |     |     +--ro state
     |     |        +--ro name?   string
     |     |        +--ro id?     uint16
     |     +--rw flexalgos
     |     |  +--rw flexalgo* [algo-number]
     |     |     +--rw algo-number                      -> ../config/algo-number
     |     |     +--rw config!
     |     |     |  +--rw algo-number?                        uint8
     |     |     |  +--rw metric-type?                        ipi-isis-types:isis_fad_metric_type_t
     |     |     |  +--rw calculation-type?                   ipi-isis-types:isis_fad_calculation_type_t
     |     |     |  +--rw priority?                           uint8
     |     |     |  +--rw exclude-minimum-bandwidth?          string
     |     |     |  +--rw exclude-maximum-delay?              uint32
     |     |     |  +--rw enable-intf-group-mode-bw-calc?     empty
     |     |     |  +--rw reference-bandwidth?                string
     |     |     |  +--rw granularity-bandwidth?              string
     |     |     |  +--rw enable-advertise-definition?        empty
     |     |     |  +--rw enable-participate?                 empty
     |     |     |  +--rw enable-fast-reroute?                empty
     |     |     |  +--rw enable-remote-lfa?                  empty
     |     |     |  +--rw enable-ti-lfa?                      empty
     |     |     |  +--rw enable-prefix-metric-flag?          empty
     |     |     |  +--rw fapm-metric?                        uint8
     |     |     |  +--rw affinity-eag-exclude-any*           string
     |     |     |  +--rw affinity-eag-include-any*           string
     |     |     |  +--rw affinity-eag-include-all*           string
     |     |     |  +--rw affinity-eag-reverse-exclude-any*   string
     |     |     |  +--rw affinity-eag-reverse-include-any*   string
     |     |     |  +--rw affinity-eag-reverse-include-all*   string
     |     |     |  +--rw affinity-ag-exclude-any*            string
     |     |     |  +--rw affinity-ag-include-any*            string
     |     |     |  +--rw affinity-ag-include-all*            string
     |     |     |  +--rw affinity-ag-reverse-exclude-any*    string
     |     |     |  +--rw affinity-ag-reverse-include-any*    string
     |     |     |  +--rw affinity-ag-reverse-include-all*    string
     |     |     |  +--rw exclude-srlg*                       uint32 {feature-list:HAVE_SRLG}?
     |     |     +--ro state
     |     |     |  +--ro algo-number?                        uint8
     |     |     |  +--ro metric-type?                        ipi-isis-types:isis_fad_metric_type_t
     |     |     |  +--ro calculation-type?                   ipi-isis-types:isis_fad_calculation_type_t
     |     |     |  +--ro priority?                           uint8
     |     |     |  +--ro exclude-minimum-bandwidth?          string
     |     |     |  +--ro exclude-maximum-delay?              uint32
     |     |     |  +--ro enable-intf-group-mode-bw-calc?     empty
     |     |     |  +--ro reference-bandwidth?                string
     |     |     |  +--ro granularity-bandwidth?              string
     |     |     |  +--ro enable-advertise-definition?        empty
     |     |     |  +--ro enable-participate?                 empty
     |     |     |  +--ro enable-fast-reroute?                empty
     |     |     |  +--ro enable-remote-lfa?                  empty
     |     |     |  +--ro enable-ti-lfa?                      empty
     |     |     |  +--ro enable-prefix-metric-flag?          empty
     |     |     |  +--ro fapm-metric?                        uint8
     |     |     |  +--ro affinity-eag-exclude-any*           string
     |     |     |  +--ro affinity-eag-include-any*           string
     |     |     |  +--ro affinity-eag-include-all*           string
     |     |     |  +--ro affinity-eag-reverse-exclude-any*   string
     |     |     |  +--ro affinity-eag-reverse-include-any*   string
     |     |     |  +--ro affinity-eag-reverse-include-all*   string
     |     |     |  +--ro affinity-ag-exclude-any*            string
     |     |     |  +--ro affinity-ag-include-any*            string
     |     |     |  +--ro affinity-ag-include-all*            string
     |     |     |  +--ro affinity-ag-reverse-exclude-any*    string
     |     |     |  +--ro affinity-ag-reverse-include-any*    string
     |     |     |  +--ro affinity-ag-reverse-include-all*    string
     |     |     |  +--ro exclude-srlg*                       uint32 {feature-list:HAVE_SRLG}?
     |     |     +--rw flexalgo-bandwidth-thresholds
     |     |     |  +--rw flexalgo-bandwidth-threshold* [bandwidth-threshold]
     |     |     |     +--rw bandwidth-threshold    -> ../config/bandwidth-threshold
     |     |     |     +--rw config
     |     |     |     |  +--rw bandwidth-threshold?   string
     |     |     |     |  +--rw threshold-metric?      uint32
     |     |     |     +--ro state
     |     |     |        +--ro bandwidth-threshold?   string
     |     |     |        +--ro threshold-metric?      uint32
     |     |     +--rw flexalgo-microloop-avoidances {feature-list:HAVE_ISIS_LFA_OR_HAVE_ISIS_TI_LFA}?
     |     |        +--rw flexalgo-microloop-avoidance* [level-type]
     |     |           +--rw level-type    -> ../config/level-type
     |     |           +--rw config
     |     |           |  +--rw level-type?   ipi-isis-types:isis_level2_t
     |     |           |  +--rw enable?       empty
     |     |           +--ro state
     |     |              +--ro level-type?   ipi-isis-types:isis_level2_t
     |     |              +--ro enable?       empty
     |     +--ro level-runtime* [type]
     |     |  +--ro type             -> ../state/type
     |     |  +--ro lspdb* [lsp-identifier]
     |     |  |  +--ro lsp-identifier    -> ../state/lsp-identifier
     |     |  |  +--ro tlvs* [index]
     |     |  |  |  +--ro index                                   -> ../state/index
     |     |  |  |  +--ro is-neighbors* [system-id]
     |     |  |  |  |  +--ro system-id    -> ../state/system-id
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro system-id?   string
     |     |  |  |  |     +--ro metric?      uint32
     |     |  |  |  +--ro es-neighbors* [system-id]
     |     |  |  |  |  +--ro system-id    -> ../state/system-id
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro system-id?   string
     |     |  |  |  |     +--ro metric?      uint32
     |     |  |  |  +--ro ip-internal-reachability-information* [prefix]
     |     |  |  |  |  +--ro prefix    -> ../state/prefix
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro prefix?   cml-data-types:cml_line_t
     |     |  |  |  |     +--ro metric?   string
     |     |  |  |  +--ro ip-external-reachability-information* [prefix]
     |     |  |  |  |  +--ro prefix    -> ../state/prefix
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro prefix?   cml-data-types:cml_line_t
     |     |  |  |  |     +--ro metric?   string
     |     |  |  |  +--ro extended-is-reachability* [extended-is-index] {feature-list:HAVE_WIDE_METRIC}?
     |     |  |  |  |  +--ro extended-is-index    -> ../state/extended-is-index
     |     |  |  |  |  +--ro subtlv* [subtlv-index]
     |     |  |  |  |  |  +--ro subtlv-index                  -> ../state/subtlv-index
     |     |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |  +--ro subtlv-index?   uint16
     |     |  |  |  |  |  +--ro protocols-supported {feature-list:HAVE_PROTOCOL_TOPOLOGY}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro nlp-id*   ipi-isis-types:isis_level_proto_t
     |     |  |  |  |  |  +--ro admin-group-info {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro admin-group?       string
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro ipv4-interface-address {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro address?           inet:ipv4-address
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro ipv4-neighbor-address {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro address?           inet:ipv4-address
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro ipv6-interface-address {feature-list:HAVE_ISIS_TE,feature-list:HAVE_IPV6}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro address?           inet:ipv6-address
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro ipv6-neighbor-address {feature-list:HAVE_ISIS_TE,feature-list:HAVE_IPV6}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro address?           inet:ipv6-address
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro max-link-bandwidth {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro bandwidth?         string
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro max-reserve-link-bandwidth {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro bandwidth?         ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro unreserved-bandwidth {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro bandwidth?         ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro te-default-metric {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro metric?            uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-link-delay {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro a-bit?             uint8
     |     |  |  |  |  |  |     +--ro value?             uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro min-max-uni-link-delay {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro a-bit?             uint8
     |     |  |  |  |  |  |     +--ro min-value?         uint32
     |     |  |  |  |  |  |     +--ro max-value?         uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-delay-variation {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro variation?         uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-link-loss {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro a-bit?             uint8
     |     |  |  |  |  |  |     +--ro loss?              decimal64
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-residual-bw {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro residual-bw?       ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-available-bw {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro available-bw?      ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-utilized-bw {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro utilized-bw?       ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro sr-te-adjacency-sid {feature-list:HAVE_ISIS_TE,feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro value?             uint32
     |     |  |  |  |  |  |     +--ro flag?              cml-data-types:cml_line_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro sr-te-lan-adjacency-sid {feature-list:HAVE_ISIS_TE,feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro system-id?         string
     |     |  |  |  |  |  |     +--ro value?             uint32
     |     |  |  |  |  |  |     +--ro flag?              cml-data-types:cml_line_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro link-ids {feature-list:HAVE_GMPLS}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro local?             uint32
     |     |  |  |  |  |  |     +--ro remote?            uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro link-protection-type {feature-list:HAVE_GMPLS}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro type?              string
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro link-switch-capability {feature-list:HAVE_GMPLS}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro type?                            string
     |     |  |  |  |  |  |     +--ro encoding-type?                   string
     |     |  |  |  |  |  |     +--ro max-lsp-bandwidth-at-priority?   ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro min-lsp-bandwidth?               ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro interface-mtu?                   string
     |     |  |  |  |  |  |     +--ro sonet-sdh-indication?            string
     |     |  |  |  |  |  |     +--ro mismatch-length?                 uint16
     |     |  |  |  |  |  +--ro endx-sid {feature-list:HAVE_SRV6}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro endx-sid?          inet:ipv6-address
     |     |  |  |  |  |  |     +--ro endx-algo?         uint32
     |     |  |  |  |  |  |     +--ro endx-flags?        uint32
     |     |  |  |  |  |  |     +--ro endx-behavior?     string
     |     |  |  |  |  |  |     +--ro endx-flavor?       uint32
     |     |  |  |  |  |  |     +--ro endx-weight?       uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro lan-endx-sid {feature-list:HAVE_SRV6}?
     |     |  |  |  |  |     +--ro state
     |     |  |  |  |  |        +--ro lan-endx-sid?        inet:ipv6-address
     |     |  |  |  |  |        +--ro lan-endx-behavior?   string
     |     |  |  |  |  |        +--ro lan-endx-flavor?     uint32
     |     |  |  |  |  |        +--ro lan-endx-sysid?      string
     |     |  |  |  |  |        +--ro lan-endx-algo?       uint32
     |     |  |  |  |  |        +--ro lan-endx-weight?     uint32
     |     |  |  |  |  |        +--ro mismatch-length?     uint16
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro extended-is-index?   uint32
     |     |  |  |  |     +--ro system-id?           string
     |     |  |  |  |     +--ro metric?              uint32
     |     |  |  |  +--ro extended-ipv4-reachability* [ipv4-reach-index] {feature-list:HAVE_WIDE_METRIC}?
     |     |  |  |  |  +--ro ipv4-reach-index    -> ../state/ipv4-reach-index
     |     |  |  |  |  +--ro subtlv* [stlv-reach-index]
     |     |  |  |  |  |  +--ro stlv-reach-index    -> ../state/stlv-reach-index
     |     |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |  +--ro stlv-reach-index?   uint16
     |     |  |  |  |  |  +--ro admin-tag-info
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro admin-tag?         uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro prefix-sid {feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |     +--ro state
     |     |  |  |  |  |        +--ro value?             uint32
     |     |  |  |  |  |        +--ro rnpev-flags?       cml-data-types:cml_line_t
     |     |  |  |  |  |        +--ro mismatch-length?   uint16
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro ipv4-reach-index?   uint32
     |     |  |  |  |     +--ro prefix?             cml-data-types:cml_ipv4_addr_prefix_t
     |     |  |  |  |     +--ro metric?             uint32
     |     |  |  |  +--ro ipv6-reachability* [ipv6-reach-index] {feature-list:HAVE_IPV6}?
     |     |  |  |  |  +--ro ipv6-reach-index    -> ../state/ipv6-reach-index
     |     |  |  |  |  +--ro subtlv* [stlv-reach-index]
     |     |  |  |  |  |  +--ro stlv-reach-index    -> ../state/stlv-reach-index
     |     |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |  +--ro stlv-reach-index?   uint16
     |     |  |  |  |  |  +--ro admin-tag-info
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro admin-tag?         uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro prefix-sid {feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |     +--ro state
     |     |  |  |  |  |        +--ro value?             uint32
     |     |  |  |  |  |        +--ro rnpev-flags?       cml-data-types:cml_line_t
     |     |  |  |  |  |        +--ro mismatch-length?   uint16
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro ipv6-reach-index?   uint32
     |     |  |  |  |     +--ro prefix?             cml-data-types:cml_ipv6_prefix_t
     |     |  |  |  |     +--ro metric?             cml-data-types:cml_line_t
     |     |  |  |  |     +--ro up-down?            boolean
     |     |  |  |  +--ro multi-topology* [id] {feature-list:HAVE_MULTI_TOPOLOGY}?
     |     |  |  |  |  +--ro id       -> ../state/id
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro id?   string
     |     |  |  |  +--ro multi-topology-is-reachability* [multi-is-index] {feature-list:HAVE_MULTI_TOPOLOGY}?
     |     |  |  |  |  +--ro multi-is-index    -> ../state/multi-is-index
     |     |  |  |  |  +--ro subtlv* [subtlv-index]
     |     |  |  |  |  |  +--ro subtlv-index                  -> ../state/subtlv-index
     |     |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |  +--ro subtlv-index?   uint16
     |     |  |  |  |  |  +--ro protocols-supported {feature-list:HAVE_PROTOCOL_TOPOLOGY}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro nlp-id*   ipi-isis-types:isis_level_proto_t
     |     |  |  |  |  |  +--ro admin-group-info {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro admin-group?       string
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro ipv4-interface-address {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro address?           inet:ipv4-address
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro ipv4-neighbor-address {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro address?           inet:ipv4-address
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro ipv6-interface-address {feature-list:HAVE_ISIS_TE,feature-list:HAVE_IPV6}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro address?           inet:ipv6-address
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro ipv6-neighbor-address {feature-list:HAVE_ISIS_TE,feature-list:HAVE_IPV6}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro address?           inet:ipv6-address
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro max-link-bandwidth {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro bandwidth?         string
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro max-reserve-link-bandwidth {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro bandwidth?         ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro unreserved-bandwidth {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro bandwidth?         ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro te-default-metric {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro metric?            uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-link-delay {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro a-bit?             uint8
     |     |  |  |  |  |  |     +--ro value?             uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro min-max-uni-link-delay {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro a-bit?             uint8
     |     |  |  |  |  |  |     +--ro min-value?         uint32
     |     |  |  |  |  |  |     +--ro max-value?         uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-delay-variation {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro variation?         uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-link-loss {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro a-bit?             uint8
     |     |  |  |  |  |  |     +--ro loss?              decimal64
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-residual-bw {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro residual-bw?       ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-available-bw {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro available-bw?      ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro uni-utilized-bw {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro utilized-bw?       ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro sr-te-adjacency-sid {feature-list:HAVE_ISIS_TE,feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro value?             uint32
     |     |  |  |  |  |  |     +--ro flag?              cml-data-types:cml_line_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro sr-te-lan-adjacency-sid {feature-list:HAVE_ISIS_TE,feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro system-id?         string
     |     |  |  |  |  |  |     +--ro value?             uint32
     |     |  |  |  |  |  |     +--ro flag?              cml-data-types:cml_line_t
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro link-ids {feature-list:HAVE_GMPLS}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro local?             uint32
     |     |  |  |  |  |  |     +--ro remote?            uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro link-protection-type {feature-list:HAVE_GMPLS}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro type?              string
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro link-switch-capability {feature-list:HAVE_GMPLS}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro type?                            string
     |     |  |  |  |  |  |     +--ro encoding-type?                   string
     |     |  |  |  |  |  |     +--ro max-lsp-bandwidth-at-priority?   ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro min-lsp-bandwidth?               ipi-isis-types:isis_ieee_float32_t
     |     |  |  |  |  |  |     +--ro interface-mtu?                   string
     |     |  |  |  |  |  |     +--ro sonet-sdh-indication?            string
     |     |  |  |  |  |  |     +--ro mismatch-length?                 uint16
     |     |  |  |  |  |  +--ro endx-sid {feature-list:HAVE_SRV6}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro endx-sid?          inet:ipv6-address
     |     |  |  |  |  |  |     +--ro endx-algo?         uint32
     |     |  |  |  |  |  |     +--ro endx-flags?        uint32
     |     |  |  |  |  |  |     +--ro endx-behavior?     string
     |     |  |  |  |  |  |     +--ro endx-flavor?       uint32
     |     |  |  |  |  |  |     +--ro endx-weight?       uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro lan-endx-sid {feature-list:HAVE_SRV6}?
     |     |  |  |  |  |     +--ro state
     |     |  |  |  |  |        +--ro lan-endx-sid?        inet:ipv6-address
     |     |  |  |  |  |        +--ro lan-endx-behavior?   string
     |     |  |  |  |  |        +--ro lan-endx-flavor?     uint32
     |     |  |  |  |  |        +--ro lan-endx-sysid?      string
     |     |  |  |  |  |        +--ro lan-endx-algo?       uint32
     |     |  |  |  |  |        +--ro lan-endx-weight?     uint32
     |     |  |  |  |  |        +--ro mismatch-length?     uint16
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro multi-is-index?   uint32
     |     |  |  |  |     +--ro system-id?        string
     |     |  |  |  |     +--ro metric?           uint32
     |     |  |  |  +--ro multi-topology-ipv6-reachability* [multi-ipv6-reach-index] {feature-list:HAVE_MULTI_TOPOLOGY,feature-list:HAVE_IPV6}?
     |     |  |  |  |  +--ro multi-ipv6-reach-index    -> ../state/multi-ipv6-reach-index
     |     |  |  |  |  +--ro subtlv* [stlv-reach-index]
     |     |  |  |  |  |  +--ro stlv-reach-index    -> ../state/stlv-reach-index
     |     |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |  +--ro stlv-reach-index?   uint16
     |     |  |  |  |  |  +--ro admin-tag-info
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro admin-tag?         uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro prefix-sid {feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |     +--ro state
     |     |  |  |  |  |        +--ro value?             uint32
     |     |  |  |  |  |        +--ro rnpev-flags?       cml-data-types:cml_line_t
     |     |  |  |  |  |        +--ro mismatch-length?   uint16
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro prefix?                   string
     |     |  |  |  |     +--ro metric?                   string
     |     |  |  |  |     +--ro up-down?                  boolean
     |     |  |  |  |     +--ro multi-ipv6-reach-index?   uint16
     |     |  |  |  |     +--ro id?                       uint16
     |     |  |  |  +--ro multi-topology-ipv4-reachability* [id] {feature-list:HAVE_MULTI_TOPOLOGY}?
     |     |  |  |  |  +--ro id        -> ../state/id
     |     |  |  |  |  +--ro subtlv* [stlv-reach-index]
     |     |  |  |  |  |  +--ro stlv-reach-index    -> ../state/stlv-reach-index
     |     |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |  +--ro stlv-reach-index?   uint16
     |     |  |  |  |  |  +--ro admin-tag-info
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro admin-tag?         uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro prefix-sid {feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |     +--ro state
     |     |  |  |  |  |        +--ro value?             uint32
     |     |  |  |  |  |        +--ro rnpev-flags?       cml-data-types:cml_line_t
     |     |  |  |  |  |        +--ro mismatch-length?   uint16
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro prefix?   inet:ipv4-address
     |     |  |  |  |     +--ro metric?   uint32
     |     |  |  |  |     +--ro id?       uint16
     |     |  |  |  +--ro state
     |     |  |  |  |  +--ro index?   uint32
     |     |  |  |  +--ro area-addresses
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro address*   string
     |     |  |  |  +--ro supported-protocol
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro nlp-id*   ipi-isis-types:isis_level_proto_t
     |     |  |  |  +--ro host-name
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro host-name?   string
     |     |  |  |  +--ro ipv4-interface-addresses
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro address?   inet:ipv4-address
     |     |  |  |  +--ro sid-label-binding {feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro ipv4-address?       string
     |     |  |  |  |     +--ro ipv6-address?       string {feature-list:HAVE_IPV6}?
     |     |  |  |  |     +--ro fmsda-flags?        cml-data-types:cml_line_t
     |     |  |  |  |     +--ro rnpev-flags?        cml-data-types:cml_line_t
     |     |  |  |  |     +--ro start-identifier?   uint32
     |     |  |  |  |     +--ro algorithm?          uint32
     |     |  |  |  |     +--ro range?              uint32
     |     |  |  |  +--ro ipv4-te-router-id {feature-list:HAVE_ISIS_TE}?
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro unknown-tlv-type?   uint8
     |     |  |  |  |     +--ro length?             uint8
     |     |  |  |  |     +--ro router-id?          string
     |     |  |  |  +--ro ipv4-shared-risk-link-group {feature-list:HAVE_WIDE_METRIC,feature-list:HAVE_GMPLS}?
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro value?              string
     |     |  |  |  |     +--ro neighbor-address?   inet:ipv4-address
     |     |  |  |  |     +--ro local-address?      inet:ipv4-address
     |     |  |  |  |     +--ro system-id?          string
     |     |  |  |  +--ro ipv6-te-router-id {feature-list:HAVE_ISIS_TE,feature-list:HAVE_IPV6}?
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro unknown-tlv-type?     uint8
     |     |  |  |  |     +--ro unknown-tlv-length?   uint8
     |     |  |  |  |     +--ro router-id?            inet:ipv6-address
     |     |  |  |  +--ro ipv6-interface-address {feature-list:HAVE_IPV6}?
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro address?   inet:ipv6-address
     |     |  |  |  +--ro router-capability {feature-list:HAVE_ISIS_SR_OR_HAVE_SRV6}?
     |     |  |  |  |  +--ro subtlv* [stlv-index]
     |     |  |  |  |  |  +--ro stlv-index                                   -> ../state/stlv-index
     |     |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |  +--ro stlv-index?   uint16
     |     |  |  |  |  |  +--ro segment-routing {feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro range?             uint32
     |     |  |  |  |  |  |     +--ro sid?               uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro segment-routing-algorithm {feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro sr-algorithm-vector*   ipi-isis-types:isis_sr_algo_choice_t
     |     |  |  |  |  |  |     +--ro mismatch-length?       uint16
     |     |  |  |  |  |  +--ro segment-routing-mapping-server-preference {feature-list:HAVE_ISIS_SR}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro preference?        uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro segment-routing-v6 {feature-list:HAVE_SRV6}?
     |     |  |  |  |  |  |  +--ro state
     |     |  |  |  |  |  |     +--ro srv6-flags?        uint32
     |     |  |  |  |  |  |     +--ro mismatch-length?   uint16
     |     |  |  |  |  |  +--ro max-sid-depth {feature-list:HAVE_SRV6}?
     |     |  |  |  |  |     +--ro state
     |     |  |  |  |  |        +--ro segments-left?     uint32
     |     |  |  |  |  |        +--ro end-pop?           uint32
     |     |  |  |  |  |        +--ro h-encaps?          uint32
     |     |  |  |  |  |        +--ro decap-sids?        uint32
     |     |  |  |  |  |        +--ro mismatch-length?   uint16
     |     |  |  |  |  +--ro state
     |     |  |  |  |     +--ro router-id?   inet:ipv4-address
     |     |  |  |  +--ro srv6-locator {feature-list:HAVE_SRV6}?
     |     |  |  |     +--ro subtlv* [stlv-index stlv-endpoint-function]
     |     |  |  |     |  +--ro stlv-index                -> ../state/stlv-index
     |     |  |  |     |  +--ro stlv-endpoint-function    -> ../state/stlv-endpoint-function
     |     |  |  |     |  +--ro state
     |     |  |  |     |  |  +--ro stlv-index?               uint16
     |     |  |  |     |  |  +--ro stlv-endpoint-function?   uint16
     |     |  |  |     |  +--ro srv6-end-sid {feature-list:HAVE_SRV6}?
     |     |  |  |     |     +--ro state
     |     |  |  |     |        +--ro end-sid?              inet:ipv6-address
     |     |  |  |     |        +--ro sid-flags?            uint32
     |     |  |  |     |        +--ro end-point-behavior?   string
     |     |  |  |     |        +--ro mismatch-length?      uint16
     |     |  |  |     +--ro state
     |     |  |  |        +--ro locator-algorithm?   uint32
     |     |  |  |        +--ro locator-flag?        uint32
     |     |  |  |        +--ro locator-metric?      uint32
     |     |  |  |        +--ro locator-prefix?      cml-data-types:cml_ipv6_prefix_t
     |     |  |  +--ro state
     |     |  |     +--ro lsp-identifier?       string
     |     |  |     +--ro is-self-lsp?          string
     |     |  |     +--ro checksum?             string
     |     |  |     +--ro remaining-lifetime?   uint16
     |     |  |     +--ro flags?                uint8
     |     |  |     +--ro partition-repair?     boolean
     |     |  |     +--ro over-loaded?          boolean
     |     |  |     +--ro sequence-number?      string
     |     |  |     +--ro pdu-length?           uint32
     |     |  +--ro protocol-data* [index]
     |     |  |  +--ro index     uint8
     |     |  |  +--ro vertex* [destination-system-id]
     |     |  |     +--ro destination-system-id    -> ../state/destination-system-id
     |     |  |     +--ro vertex-nexthop* [nexthop-interface nexthop-system-id]
     |     |  |     |  +--ro nexthop-interface    -> ../state/nexthop-interface
     |     |  |     |  +--ro nexthop-system-id    -> ../state/nexthop-system-id
     |     |  |     |  +--ro state
     |     |  |     |     +--ro nexthop-interface?   string
     |     |  |     |     +--ro nexthop-system-id?   string
     |     |  |     |     +--ro snpa-mac-address?    cml-data-types:cml_mac_addr_t
     |     |  |     +--ro state
     |     |  |        +--ro distance?                uint32
     |     |  |        +--ro destination-system-id?   string
     |     |  +--ro state
     |     |     +--ro counters
     |     |     |  +--ro authentication-type-fails?                    uint32
     |     |     |  +--ro authentication-fails?                         uint32
     |     |     |  +--ro corrupted-lsps?                               uint32
     |     |     |  +--ro database-overloads?                           uint32
     |     |     |  +--ro manual-address-drop-from-areas?               uint32
     |     |     |  +--ro attempt-to-exceed-maximum-sequence-numbers?   uint32
     |     |     |  +--ro sequence-number-skips?                        uint32
     |     |     |  +--ro own-lsp-purges?                               uint32
     |     |     |  +--ro lsp-sourced?                                  uint32
     |     |     |  +--ro maximum-area-address-mismatches?              uint32
     |     |     |  +--ro id-length-mismatch?                           uint32
     |     |     |  +--ro partition-changes?                            uint32
     |     |     |  +--ro spf-runs?                                     uint32
     |     |     |  +--ro partial-route-calculation-count?              uint32
     |     |     |  +--ro lan-designated-is-changes?                    uint32
     |     |     +--ro type?            ipi-isis-types:isis_level2_t
     |     |     +--ro topology-type?   uint8
     |     +--rw spf-levels
     |     |  +--rw spf-level* [level]
     |     |     +--rw level         -> ../config/level
     |     |     +--rw spf-delays
     |     |     |  +--rw spf-delay* [spf-min-delay spf-max-delay]
     |     |     |     +--rw spf-min-delay    -> ../config/spf-min-delay
     |     |     |     +--rw spf-max-delay    -> ../config/spf-max-delay
     |     |     |     +--rw config
     |     |     |     |  +--rw spf-min-delay?   uint32
     |     |     |     |  +--rw spf-max-delay?   uint32
     |     |     |     +--ro state
     |     |     |        +--ro spf-min-delay?   uint32
     |     |     |        +--ro spf-max-delay?   uint32
     |     |     +--rw config
     |     |     |  +--rw level?   ipi-isis-types:isis_level3_t
     |     |     +--ro state
     |     |        +--ro level?   ipi-isis-types:isis_level3_t
     |     +--rw levels
     |     |  +--rw level* [type]
     |     |     +--rw type              -> ../config/type
     |     |     +--rw config
     |     |     |  +--rw type?                    ipi-isis-types:isis_level3_t
     |     |     |  +--rw wait-timer?              uint16
     |     |     |  +--rw restart-timer?           uint16
     |     |     |  +--rw lsp-max-wait-interval?   uint32
     |     |     |  +--rw lsp-mtu-size?            uint16
     |     |     +--ro state
     |     |     |  +--ro type?                    ipi-isis-types:isis_level3_t
     |     |     |  +--ro wait-timer?              uint16
     |     |     |  +--ro restart-timer?           uint16
     |     |     |  +--ro lsp-max-wait-interval?   uint32
     |     |     |  +--ro lsp-mtu-size?            uint16
     |     |     +--rw authentication
     |     |        +--rw config!
     |     |        |  +--rw key-chain?   string
     |     |        |  +--rw mode         ipi-isis-types:isis_auth_mode_t
     |     |        +--ro state
     |     |           +--ro key-chain?   string
     |     |           +--ro mode         ipi-isis-types:isis_auth_mode_t
     |     +--ro cspf {feature-list:HAVE_ISIS_CSPF}?
     |     |  +--ro lsp* [setup-priority]
     |     |     +--ro setup-priority    -> ../state/setup-priority
     |     |     +--ro lsp-status* [lsp-id]
     |     |     |  +--ro lsp-id                     -> ../state/lsp-id
     |     |     |  +--ro path-constraint* [index]
     |     |     |  |  +--ro index    -> ../state/index
     |     |     |  |  +--ro state
     |     |     |  |     +--ro index?        uint32
     |     |     |  |     +--ro ip-address?   inet:ipv4-address
     |     |     |  |     +--ro path-type?    ipi-isis-types:isis_cspf_path_type_t
     |     |     |  +--ro exclude-path-constraint* [ip-address]
     |     |     |  |  +--ro ip-address    -> ../state/ip-address
     |     |     |  |  +--ro state
     |     |     |  |     +--ro ip-address?     inet:ipv4-address
     |     |     |  |     +--ro interface-id?   uint32 {feature-list:HAVE_GMPLS}?
     |     |     |  |     +--ro type?           ipi-isis-types:isis_cspf_constraint_type_t
     |     |     |  +--ro path-computed-ero* [local-ip-address]
     |     |     |  |  +--ro local-ip-address    -> ../state/local-ip-address
     |     |     |  |  +--ro state
     |     |     |  |     +--ro local-ip-address?    inet:ipv4-address
     |     |     |  |     +--ro remote-ip-address?   inet:ipv4-address
     |     |     |  +--ro state
     |     |     |     +--ro lsp-id?               uint32
     |     |     |     +--ro metric?               uint32
     |     |     |     +--ro retry-interval?       uint16
     |     |     |     +--ro retry-limit?          uint16
     |     |     |     +--ro tunnel-egress-ip?     inet:ipv4-address
     |     |     |     +--ro tunnel-ingress-ip?    inet:ipv4-address
     |     |     |     +--ro extended-tunnel-id?   inet:ipv4-address
     |     |     |     +--ro status?               string
     |     |     |     +--ro client-id?            uint8
     |     |     |     +--ro hop-limit?            int16
     |     |     |     +--ro include-mask?         int8
     |     |     |     +--ro exclude-mask?         int8
     |     |     |     +--ro hold-priority?        uint8
     |     |     |     +--ro retry-count?          uint16
     |     |     |     +--ro bandwidth?            string
     |     |     |     +--ro trunk-id?             uint32
     |     |     |     +--ro lsp-type?             ipi-isis-types:isis_cspf_lsp_type_t
     |     |     +--ro state
     |     |        +--ro setup-priority?   int8
     |     +--ro ipv4-lfa-route* [destination-prefix]
     |     |  +--ro destination-prefix    -> ../state/destination-prefix
     |     |  +--ro route-nexthop* [primary-nexthop nexthop-type]
     |     |  |  +--ro primary-nexthop    -> ../state/primary-nexthop
     |     |  |  +--ro nexthop-type       -> ../state/nexthop-type
     |     |  |  +--ro state
     |     |  |     +--ro primary-nexthop?                  inet:ipv4-address
     |     |  |     +--ro nexthop-type?                     ipi-isis-types:isis_lfa_nexthop_type_t
     |     |  |     +--ro primary-nexthop-interface-name?   string
     |     |  |     +--ro remote-router-id?                 inet:ipv4-address
     |     |  |     +--ro lfa-nexthop?                      inet:ipv4-address
     |     |  |     +--ro lfa-nexthop-interface-name?       string
     |     |  |     +--ro lfa-path-metric?                  uint32
     |     |  |     +--ro protection-provided?              cml-data-types:cml_line_t
     |     |  +--ro state
     |     |     +--ro destination-prefix?      cml-data-types:cml_ipv4_addr_prefix_t
     |     |     +--ro destination-path-type?   string
     |     +--ro ipv6-lfa-route* [destination-prefix]
     |     |  +--ro destination-prefix    -> ../state/destination-prefix
     |     |  +--ro route-nexthop* [primary-nexthop]
     |     |  |  +--ro primary-nexthop    -> ../state/primary-nexthop
     |     |  |  +--ro state
     |     |  |     +--ro primary-nexthop?                  inet:ipv6-address
     |     |  |     +--ro primary-nexthop-interface-name?   string
     |     |  |     +--ro lfa-nexthop?                      inet:ipv6-address
     |     |  |     +--ro lfa-nexthop-interface-name?       string
     |     |  |     +--ro lfa-path-metric?                  uint32
     |     |  |     +--ro protection-provided?              string
     |     |  +--ro state
     |     |     +--ro destination-prefix?      cml-data-types:cml_ipv6_prefix_t
     |     |     +--ro destination-path-type?   string
     |     +--rw fast-reroute-levels
     |     |  +--rw fast-reroute* [level-type]
     |     |     +--rw level-type           -> ../config/level-type
     |     |     +--rw config
     |     |     |  +--rw level-type?            ipi-isis-types:isis_level2_t
     |     |     |  +--rw remote-lfa-protocol*   ipi-isis-types:isis_lfa_level_proto_t {feature-list:HAVE_LDPD,feature-list:HAVE_ISIS_LFA}?
     |     |     +--ro state
     |     |     |  +--ro level-type?            ipi-isis-types:isis_level2_t
     |     |     |  +--ro remote-lfa-protocol*   ipi-isis-types:isis_lfa_level_proto_t {feature-list:HAVE_LDPD,feature-list:HAVE_ISIS_LFA}?
     |     |     +--rw route-maps
     |     |     |  +--rw route-map* [protocol] {feature-list:HAVE_ISIS_LFA}?
     |     |     |     +--rw protocol    -> ../config/protocol
     |     |     |     +--rw config
     |     |     |     |  +--rw protocol?              ipi-isis-types:isis_lfa_level_proto_t
     |     |     |     |  +--rw name?                  string
     |     |     |     |  +--rw enable-all-prefixes?   ipi-isis-types:isis_frr_enum_t
     |     |     |     +--ro state
     |     |     |        +--ro protocol?              ipi-isis-types:isis_lfa_level_proto_t
     |     |     |        +--ro name?                  string
     |     |     |        +--ro enable-all-prefixes?   ipi-isis-types:isis_frr_enum_t
     |     |     +--rw ti-lfas
     |     |     |  +--rw ti-lfa* [protocol] {feature-list:HAVE_ISIS_TI_LFA}?
     |     |     |     +--rw protocol    -> ../config/protocol
     |     |     |     +--rw config
     |     |     |     |  +--rw protocol?   ipi-isis-types:isis_lfa_level_proto_t
     |     |     |     +--ro state
     |     |     |        +--ro protocol?   ipi-isis-types:isis_lfa_level_proto_t
     |     |     +--rw protocols
     |     |     |  +--rw protocol* [lfa-protocol preference-value] {feature-list:HAVE_ISIS_LFA}?
     |     |     |     +--rw lfa-protocol        -> ../config/lfa-protocol
     |     |     |     +--rw preference-value    -> ../config/preference-value
     |     |     |     +--rw config
     |     |     |     |  +--rw lfa-protocol?       ipi-isis-types:isis_lfa_level_proto_t
     |     |     |     |  +--rw preference-value?   ipi-isis-types:isis_frr_tie_break_val_t
     |     |     |     |  +--rw preference-index    uint32
     |     |     |     +--ro state
     |     |     |        +--ro lfa-protocol?       ipi-isis-types:isis_lfa_level_proto_t
     |     |     |        +--ro preference-value?   ipi-isis-types:isis_frr_tie_break_val_t
     |     |     |        +--ro preference-index    uint32
     |     |     +--rw ipv4-tilfa-routes {feature-list:HAVE_ISIS_TI_LFA}?
     |     |     |  +--ro ipv4-tilfa-route* [destination-prefix]
     |     |     |     +--ro destination-prefix    -> ../state/destination-prefix
     |     |     |     +--ro state
     |     |     |     |  +--ro destination-prefix?   inet:ipv4-address
     |     |     |     |  +--ro path-type?            ipi-isis-types:isis_path_type_t
     |     |     |     |  +--ro ftn-index?            uint32
     |     |     |     |  +--ro ilm-index?            uint32
     |     |     |     +--ro nexthops
     |     |     |     |  +--ro nexthop* [primary-nexthop]
     |     |     |     |     +--ro primary-nexthop    -> ../state/primary-nexthop
     |     |     |     |     +--ro state
     |     |     |     |        +--ro primary-nexthop?              inet:ipv4-address
     |     |     |     |        +--ro primary-outgoing-interface?   string
     |     |     |     |        +--ro protection-type?              ipi-isis-types:isis_tilfa_protection_type_t
     |     |     |     |        +--ro pq-node-router-id?            inet:ipv4-address
     |     |     |     |        +--ro p-node?                       inet:ipv4-address
     |     |     |     |        +--ro q-node?                       inet:ipv4-address
     |     |     |     |        +--ro pq-trunk-id?                  uint32
     |     |     |     |        +--ro primary-outgoing-label?       uint32
     |     |     |     |        +--ro primary-incoming-label?       uint32
     |     |     |     |        +--ro backup-outgoing-label?        uint32
     |     |     |     |        +--ro backup-outgoing-interface?    string
     |     |     |     +--ro pq-trunks
     |     |     |        +--ro pq-trunk* [trunk-id]
     |     |     |           +--ro trunk-id    -> ../state/trunk-id
     |     |     |           +--ro state
     |     |     |              +--ro trunk-id?          uint32
     |     |     |              +--ro trunk-name?        string
     |     |     |              +--ro nexthop?           inet:ipv4-address
     |     |     |              +--ro outgoing-label?    uint32
     |     |     |              +--ro ftn-index?         uint32
     |     |     |              +--ro reference-count?   uint32
     |     |     +--rw tilfa-pq-nodes {feature-list:HAVE_ISIS_TI_LFA}?
     |     |        +--rw circuit-levels
     |     |           +--ro circuit-level* [level]
     |     |              +--ro level       -> ../state/level
     |     |              +--ro state
     |     |              |  +--ro level?   ipi-isis-types:isis_level2_t
     |     |              +--ro vertices
     |     |                 +--ro vertex* [destination-vertex]
     |     |                    +--ro destination-vertex    -> ../state/destination-vertex
     |     |                    +--ro state
     |     |                    |  +--ro destination-vertex?   string
     |     |                    +--ro interfaces
     |     |                       +--ro interface* [name]
     |     |                          +--ro name               -> ../state/name
     |     |                          +--ro state
     |     |                          |  +--ro name?   string
     |     |                          +--ro link-protection
     |     |                          |  +--ro state
     |     |                          |     +--ro pnodes*            string
     |     |                          |     +--ro qnodes*            string
     |     |                          |     +--ro pq-node?           string
     |     |                          |     +--ro p-node-disjoint?   string
     |     |                          |     +--ro q-node-disjoint?   string
     |     |                          +--ro node-protection
     |     |                             +--ro state
     |     |                                +--ro pnodes*            string
     |     |                                +--ro qnodes*            string
     |     |                                +--ro pq-node?           string
     |     |                                +--ro p-node-disjoint?   string
     |     |                                +--ro q-node-disjoint?   string
     |     +--ro segment-routing-capability* [advertising-router-ip]
     |     |  +--ro advertising-router-ip    -> ../state/advertising-router-ip
     |     |  +--ro range-info* [index]
     |     |  |  +--ro index    -> ../state/index
     |     |  |  +--ro state
     |     |  |     +--ro start?   uint32
     |     |  |     +--ro end?     uint32
     |     |  |     +--ro index?   uint32
     |     |  +--ro state
     |     |     +--ro advertising-router-ip?       inet:ipv4-address
     |     |     +--ro sr-algorithm-vector*         ipi-isis-types:isis_sr_algo_choice_t
     |     |     +--ro mapping-server-preference?   uint32
     |     |     +--ro total-sid-count?             uint32
     |     |     +--ro sid-range-list-count?        uint8
     |     +--ro segment-routing-mapping-server-ipv4* [type]
     |     |  +--ro type          -> ../state/type
     |     |  +--ro ipv4-table* [prefix-length]
     |     |  |  +--ro prefix-length    -> ../state/prefix-length
     |     |  |  +--ro entry* [index]
     |     |  |  |  +--ro index    -> ../state/index
     |     |  |  |  +--ro state
     |     |  |  |     +--ro index?                  uint32
     |     |  |  |     +--ro label-options?          uint8
     |     |  |  |     +--ro system-id?              string
     |     |  |  |     +--ro status?                 string
     |     |  |  |     +--ro preference?             uint8
     |     |  |  |     +--ro attached?               string
     |     |  |  |     +--ro last-system-id-index?   uint32
     |     |  |  |     +--ro last-prefix?            cml-data-types:cml_ip_prefix_addr_t
     |     |  |  |     +--ro prefix-range?           uint32
     |     |  |  |     +--ro entry-prefix?           cml-data-types:cml_ip_prefix_addr_t
     |     |  |  +--ro state
     |     |  |     +--ro prefix-length?   uint32
     |     |  +--ro state
     |     |     +--ro type?                         ipi-isis-types:isis_srms_type_t
     |     |     +--ro entry-count?                  uint32
     |     |     +--ro conflict-resolution-policy?   string
     |     +--ro segment-routing-mapping-server-ipv6* [type]
     |     |  +--ro type          -> ../state/type
     |     |  +--ro ipv6-table* [prefix-length]
     |     |  |  +--ro prefix-length    -> ../state/prefix-length
     |     |  |  +--ro entry* [index]
     |     |  |  |  +--ro index    -> ../state/index
     |     |  |  |  +--ro state
     |     |  |  |     +--ro index?                  uint32
     |     |  |  |     +--ro label-options?          uint8
     |     |  |  |     +--ro system-id?              string
     |     |  |  |     +--ro status?                 string
     |     |  |  |     +--ro preference?             uint8
     |     |  |  |     +--ro attached?               string
     |     |  |  |     +--ro last-system-id-index?   uint32
     |     |  |  |     +--ro last-prefix?            cml-data-types:cml_ip_prefix_addr_t
     |     |  |  |     +--ro prefix-range?           uint32
     |     |  |  |     +--ro entry-prefix?           cml-data-types:cml_ip_prefix_addr_t
     |     |  |  +--ro state
     |     |  |     +--ro prefix-length?   uint32
     |     |  +--ro state
     |     |     +--ro type?                         ipi-isis-types:isis_srms_type_t
     |     |     +--ro entry-count?                  uint32
     |     |     +--ro conflict-resolution-policy?   string
     |     +--rw segment-routing
     |        +--rw config!
     |        |  +--rw enabled            empty {feature-list:HAVE_ISIS_SR}?
     |        |  +--rw advertise-local?   empty {feature-list:HAVE_ISIS_SR}?
     |        |  +--rw receive-disable?   empty {feature-list:HAVE_ISIS_SR}?
     |        +--ro state
     |        |  +--ro enabled            empty {feature-list:HAVE_ISIS_SR}?
     |        |  +--ro advertise-local?   empty {feature-list:HAVE_ISIS_SR}?
     |        |  +--ro receive-disable?   empty {feature-list:HAVE_ISIS_SR}?
     |        +--rw global-blocks
     |        |  +--rw global-block* [global-block-base global-block-range]
     |        |     +--rw global-block-base     -> ../config/global-block-base
     |        |     +--rw global-block-range    -> ../config/global-block-range
     |        |     +--rw config
     |        |     |  +--rw global-block-base?    int32
     |        |     |  +--rw global-block-range?   int32 {feature-list:HAVE_ISIS_SR}?
     |        |     +--ro state
     |        |        +--ro global-block-base?    int32
     |        |        +--ro global-block-range?   int32 {feature-list:HAVE_ISIS_SR}?
     |        +--rw sr-capability-entropy {feature-list:HAVE_ISIS_SR}?
     |           +--rw config
     |           |  +--rw entropy-label?   empty
     |           +--ro state
     |              +--ro entropy-label?   empty
     +--rw debug
     |  +--rw config
     |  |  +--rw options?           ipi-isis-types:isis_debug_t
     |  |  +--rw enable-hello?      empty
     |  |  +--rw interface-hello*   string
     |  |  +--rw system-id-hello*   string
     |  |  +--rw cspf?              ipi-isis-types:isis_cspf_debug_t {feature-list:HAVE_ISIS_CSPF}?
     |  +--ro state
     |     +--ro options?           ipi-isis-types:isis_debug_t
     |     +--ro enable-hello?      empty
     |     +--ro interface-hello*   string
     |     +--ro system-id-hello*   string
     |     +--ro cspf?              ipi-isis-types:isis_cspf_debug_t {feature-list:HAVE_ISIS_CSPF}?
     |     +--ro terminal-debug
     |        +--ro terminal-debug-status?                   ipi-isis-types:isis_debug_t
     |        +--ro terminal-debug-status-hello?             cml-data-types:cml_on_off_t
     |        +--ro terminal-debug-status-interface-hello*   string
     |        +--ro terminal-debug-status-system-id-hello*   string
     |        +--ro terminal-debug-status-cspf?              ipi-isis-types:isis_cspf_debug_t {feature-list:HAVE_ISIS_CSPF}?
     +--ro state
     |  +--ro host-name*            string
     |  +--ro lsp-identifier?       -> /isis/isis-instances/isis-instance/level-runtime/lspdb/state/lsp-identifier
     |  +--ro overload?             -> /isis/isis-instances/isis-instance/state/overload
     |  +--ro pdu-length?           -> /isis/isis-instances/isis-instance/level-runtime/lspdb/state/pdu-length
     |  +--ro raw-pdu?              string
     |  +--ro pdu-field-len?        uint8
     |  +--ro max-area-addresses?   uint8
     |  +--ro protocol-version?     uint8
     |  +--ro reason?               string
     |  +--ro protocols?            uint8
     |  +--ro error-offset?         uint32
     |  +--ro tlv-type?             uint8
     |  +--ro global-block-base?    int32 {feature-list:HAVE_ISIS_SR}?
     |  +--ro global-block-range?   int32 {feature-list:HAVE_ISIS_SR}?
     |  +--ro received-index?       uint32 {feature-list:HAVE_ISIS_SR}?
     |  +--ro routing-protocol?     string {feature-list:HAVE_ISIS_SR}?
     +--rw graceful-restart
     |  +--rw config
     |  |  +--rw grace-period?         uint16
     |  |  +--rw enable-helper-only?   empty
     |  |  +--rw suppress-adjacency?   empty
     |  +--ro state
     |     +--ro grace-period?         uint16
     |     +--ro enable-helper-only?   empty
     |     +--ro suppress-adjacency?   empty
     +--rw interfaces
        +--rw interface* [name]
           +--rw name                    -> ../config/name
           +--ro bandwidth-priority* [priority]
           |  +--ro priority    -> ../state/priority
           |  +--ro state
           |     +--ro priority?              uint8
           |     +--ro available-bandwidth?   string
           +--ro neighbor-lan* [system-id]
           |  +--ro system-id         -> ../state/system-id
           |  +--ro adjacency* [level]
           |  |  +--ro level    -> ../state/level
           |  |  +--ro state
           |  |     +--ro level?                 ipi-isis-types:isis_level_t
           |  |     +--ro adjacency-state?       ipi-isis-types:isis_state_t
           |  |     +--ro adjacency-id?          uint32
           |  |     +--ro remaining-hold-time?   string
           |  |     +--ro priority?              uint8
           |  +--ro state
           |  |  +--ro system-id?                 string
           |  |  +--ro adjacency-type?            ipi-isis-types:isis_level_t
           |  |  +--ro adjacency-advertisement?   ipi-isis-types:isis_nbr_adj_t
           |  |  +--ro neighbor-snpa?             string
           |  |  +--ro level-1-nlp-id*            ipi-isis-types:isis_level_proto_t
           |  |  +--ro level-2-nlp-id*            ipi-isis-types:isis_level_proto_t
           |  |  +--ro multi-topology-type?       ipi-isis-types:isis_multi_topology_types_t
           |  |  +--ro up-time?                   string
           |  |  +--ro adjacency-sid?             uint32 {feature-list:HAVE_ISIS_SR}?
           |  |  +--ro ilm-id?                    uint32 {feature-list:HAVE_ISIS_SR}?
           |  |  +--ro bypass-trunk-id?           uint32 {feature-list:HAVE_ISIS_SR}?
           |  |  +--ro backup-ilm-id?             uint32 {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |  |  +--ro backup-ilm-msg-id?         uint32 {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |  |  +--ro p-router-id?               inet:ipv4-address {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |  |  +--ro q-router-id?               inet:ipv4-address {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |  |  +--ro pq-router-id?              inet:ipv4-address {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |  |  +--ro neighbor-protocol?         ipi-isis-types:isis_neighbour_protocol_t
           |  |  +--ro area-address*              string
           |  +--ro ipv4-addresses
           |  |  +--ro state
           |  |     +--ro address*   inet:ipv4-address
           |  +--ro ipv6-addresses
           |     +--ro state
           |        +--ro address*   inet:ipv6-address
           +--ro level* [level-number]
           |  +--ro level-number                    -> ../state/level-number
           |  +--ro state
           |  |  +--ro level-number?                  ipi-isis-types:isis_iflevel_t
           |  |  +--ro next-hello-interval?           cml-data-types:cml_line_t
           |  |  +--ro mtu?                           uint32
           |  |  +--ro circuit-id?                    string
           |  |  +--ro active-adjancency-count?       int32
           |  |  +--ro csnp-interval?                 cml-data-types:cml_line_t
           |  |  +--ro adjacency-changes?             uint32
           |  |  +--ro adjacency-number?              uint32
           |  |  +--ro init-fails?                    uint32
           |  |  +--ro rejected-adjacency?            uint32
           |  |  +--ro id-field-length-mismatches?    uint32
           |  |  +--ro max-area-address-mismatches?   uint32
           |  |  +--ro authentication-type-fails?     uint32
           |  |  +--ro authentication-fails?          uint32
           |  |  +--ro lan-dis-changes?               uint32
           |  +--ro isis-hellos
           |  |  +--ro state
           |  |     +--ro received?   uint32
           |  |     +--ro sent?       uint32
           |  +--ro link-state-pdu
           |  |  +--ro state
           |  |     +--ro received?   uint32
           |  |     +--ro sent?       uint32
           |  +--ro complete-sequence-number-pdu
           |  |  +--ro state
           |  |     +--ro received?   uint32
           |  |     +--ro sent?       uint32
           |  +--ro partial-sequence-number-pdu
           |  |  +--ro state
           |  |     +--ro received?   uint32
           |  |     +--ro sent?       uint32
           |  +--ro unknown
           |     +--ro state
           |        +--ro received?   uint32
           |        +--ro sent?       uint32
           +--rw config
           |  +--rw name?                           -> /ipi-interface:interfaces/interface/name
           |  +--rw minimal?                        ipi-isis-types:isis_auth_level_type_t
           |  +--rw send-only?                      ipi-isis-types:isis_auth_level_type_t
           |  +--rw maximum-bandwidth-flex-algo?    string
           |  +--rw disable-asla-usage-flex-algo?   empty
           +--ro state
           |  +--ro name?                           -> /ipi-interface:interfaces/interface/name
           |  +--ro minimal?                        ipi-isis-types:isis_auth_level_type_t
           |  +--ro send-only?                      ipi-isis-types:isis_auth_level_type_t
           |  +--ro maximum-bandwidth-flex-algo?    string
           |  +--ro disable-asla-usage-flex-algo?   empty
           |  +--ro isis-tag?                       string
           |  +--ro network-type?                   string
           |  +--ro circuit-type?                   ipi-isis-types:isis_circuit_type_t
           |  +--ro local-circuit-id?               string
           |  +--ro extended-circuit-id?            string
           |  +--ro local-snpa?                     cml-data-types:cml_mac_addr_t
           +--ro bandwidth
           |  +--ro state
           |     +--ro value?                string {feature-list:HAVE_ISIS_TE}?
           |     +--ro maximum-resverable?   string {feature-list:HAVE_ISIS_TE}?
           +--ro p2p-circuit-counters
           |  +--ro state
           |     +--ro adjacency-changes?             uint32
           |     +--ro adjacency-number?              uint32
           |     +--ro init-fails?                    uint32
           |     +--ro rejected-adjacency?            uint32
           |     +--ro id-field-length-mismatches?    uint32
           |     +--ro max-area-address-mismatches?   uint32
           |     +--ro authentication-type-fails?     uint32
           |     +--ro authentication-fails?          uint32
           |     +--ro lan-dis-changes?               uint32
           +--rw connected-ipv4
           |  +--ro state
           |     +--ro address*   cml-data-types:cml_ipv4_addr_prefix_t
           +--rw connected-ipv6
           |  +--ro state
           |     +--ro address*   cml-data-types:cml_ipv6_prefix_t
           +--ro neighbor-P2P
           |  +--ro ipv4-addresses* [address]
           |  |  +--ro address    -> ../state/address
           |  |  +--ro state
           |  |     +--ro address*   inet:ipv4-address
           |  +--ro ipv6-addresses* [address]
           |  |  +--ro address    -> ../state/address
           |  |  +--ro state
           |  |     +--ro address*   inet:ipv6-address
           |  +--ro state
           |     +--ro system-id?                 string
           |     +--ro circuit-id?                string
           |     +--ro adjacency-state?           ipi-isis-types:isis_state_t
           |     +--ro remaining-hold-time?       string
           |     +--ro adjacency-type?            string
           |     +--ro adjacency-advertisement?   ipi-isis-types:isis_nbr_adj_t
           |     +--ro neighbor-snpa?             string
           |     +--ro level-1-nlp-id*            ipi-isis-types:isis_level_proto_t
           |     +--ro level-2-nlp-id*            ipi-isis-types:isis_level_proto_t
           |     +--ro multi-topology-type?       ipi-isis-types:isis_multi_topology_types_t
           |     +--ro up-time?                   string
           |     +--ro adjacency-sid?             uint32 {feature-list:HAVE_ISIS_SR}?
           |     +--ro ilm-id?                    uint32 {feature-list:HAVE_ISIS_SR}?
           |     +--ro bypass-trunk-id?           uint32 {feature-list:HAVE_ISIS_SR}?
           |     +--ro backup-ilm-id?             uint32 {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |     +--ro backup-ilm-msg-id?         uint32 {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |     +--ro p-router-id?               inet:ipv4-address {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |     +--ro q-router-id?               inet:ipv4-address {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |     +--ro pq-router-id?              inet:ipv4-address {feature-list:HAVE_ISIS_SR,feature-list:HAVE_ISIS_TI_LFA}?
           |     +--ro neighbor-protocol?         ipi-isis-types:isis_neighbour_protocol_t
           |     +--ro area-address*              string
           +--rw interface-parameters
           |  +--rw config
           |  |  +--rw network-type?          ipi-isis-types:isis_network_t
           |  |  +--rw circuit-type?          ipi-isis-types:isis_circuit_type_t
           |  |  +--rw ipv4-instance-tag?     string
           |  |  +--rw ipv6-instance-tag?     string {feature-list:HAVE_IPV6}?
           |  |  +--rw lsp-interval?          uint32
           |  |  +--rw retransmit-interval?   uint16
           |  |  +--rw disable-padding?       empty
           |  |  +--rw mesh-group-id?         ipi-isis-types:isis_mesh_type_t
           |  +--ro state
           |  |  +--ro network-type?          ipi-isis-types:isis_network_t
           |  |  +--ro circuit-type?          ipi-isis-types:isis_circuit_type_t
           |  |  +--ro ipv4-instance-tag?     string
           |  |  +--ro ipv6-instance-tag?     string {feature-list:HAVE_IPV6}?
           |  |  +--ro lsp-interval?          uint32
           |  |  +--ro retransmit-interval?   uint16
           |  |  +--ro disable-padding?       empty
           |  |  +--ro mesh-group-id?         ipi-isis-types:isis_mesh_type_t
           |  +--rw bfd {feature-list:HAVE_BFD}?
           |  |  +--rw config
           |  |  |  +--rw enable?    empty
           |  |  |  +--rw disable?   empty
           |  |  +--ro state
           |  |     +--ro enable?    empty
           |  |     +--ro disable?   empty
           |  +--rw fast-re-route
           |  |  +--rw config
           |  |  |  +--rw disable-level-1?   empty {feature-list:HAVE_ISIS_LFA}?
           |  |  |  +--rw disable-level-2?   empty {feature-list:HAVE_ISIS_LFA}?
           |  |  +--ro state
           |  |     +--ro disable-level-1?   empty {feature-list:HAVE_ISIS_LFA}?
           |  |     +--ro disable-level-2?   empty {feature-list:HAVE_ISIS_LFA}?
           |  +--rw level-infos
           |     +--rw level-info* [level]
           |        +--rw level             -> ../config/level
           |        +--rw config
           |        |  +--rw te-metric-flex-algo-ipv4?                 uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--rw te-metric-flex-algo-ipv6?                 uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--rw bandwidth-metric-flex-algo-ipv4?          uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--rw bandwidth-metric-flex-algo-ipv6?          uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--rw te-minimum-delay?                         uint32
           |        |  +--rw te-maximum-delay?                         uint32
           |        |  +--rw te-minimum-delay-flex-algo?               uint32
           |        |  +--rw te-maximum-delay-flex-algo?               uint32
           |        |  +--rw extended-admin-group-flex-algo*           string {feature-list:HAVE_ISIS_TE}?
           |        |  +--rw extended-admin-group-flex-algo-anomaly*   string {feature-list:HAVE_ISIS_TE}?
           |        |  +--rw admin-group-flex-algo*                    string {feature-list:HAVE_ISIS_TE}?
           |        |  +--rw admin-group-flex-algo-anomaly*            string {feature-list:HAVE_ISIS_TE}?
           |        |  +--rw shared-risk-link-group-flex-algo*         uint32 {feature-list:HAVE_SRLG}?
           |        |  +--rw level?                                    ipi-isis-types:isis_level_t
           |        |  +--rw hello-interval?                           uint16
           |        |  +--rw hello-multiplier?                         uint8
           |        |  +--rw csnp-interval?                            uint16
           |        |  +--rw priority?                                 uint8
           |        |  +--rw metric?                                   uint8
           |        |  +--rw password?                                 string
           |        |  +--rw tag?                                      uint32
           |        |  +--rw wide-metric?                              uint32
           |        |  +--rw te-metric?                                uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--rw restart-hello-interval?                   uint16
           |        +--ro state
           |        |  +--ro te-metric-flex-algo-ipv4?                 uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--ro te-metric-flex-algo-ipv6?                 uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--ro bandwidth-metric-flex-algo-ipv4?          uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--ro bandwidth-metric-flex-algo-ipv6?          uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--ro te-minimum-delay?                         uint32
           |        |  +--ro te-maximum-delay?                         uint32
           |        |  +--ro te-minimum-delay-flex-algo?               uint32
           |        |  +--ro te-maximum-delay-flex-algo?               uint32
           |        |  +--ro extended-admin-group-flex-algo*           string {feature-list:HAVE_ISIS_TE}?
           |        |  +--ro extended-admin-group-flex-algo-anomaly*   string {feature-list:HAVE_ISIS_TE}?
           |        |  +--ro admin-group-flex-algo*                    string {feature-list:HAVE_ISIS_TE}?
           |        |  +--ro admin-group-flex-algo-anomaly*            string {feature-list:HAVE_ISIS_TE}?
           |        |  +--ro shared-risk-link-group-flex-algo*         uint32 {feature-list:HAVE_SRLG}?
           |        |  +--ro level?                                    ipi-isis-types:isis_level_t
           |        |  +--ro hello-interval?                           uint16
           |        |  +--ro hello-multiplier?                         uint8
           |        |  +--ro csnp-interval?                            uint16
           |        |  +--ro priority?                                 uint8
           |        |  +--ro metric?                                   uint8
           |        |  +--ro password?                                 string
           |        |  +--ro tag?                                      uint32
           |        |  +--ro wide-metric?                              uint32
           |        |  +--ro te-metric?                                uint32 {feature-list:HAVE_ISIS_TE}?
           |        |  +--ro restart-hello-interval?                   uint16
           |        +--rw authentication
           |           +--rw config!
           |           |  +--rw mode         ipi-isis-types:isis_auth_mode_t
           |           |  +--rw key-chain?   string
           |           +--ro state
           |              +--ro mode         ipi-isis-types:isis_auth_mode_t
           |              +--ro key-chain?   string
           +--rw igp-ldp-sync {feature-list:HAVE_LDPD}?
              +--rw config!
              |  +--rw level         ipi-isis-types:isis_level_igp_sync_t
              |  +--rw hold-timer    uint32
              +--ro state
                 +--ro level             ipi-isis-types:isis_level_igp_sync_t
                 +--ro hold-timer        uint32
                 +--ro interface-name?   string
 
  rpcs:
    +---x isis-restart-graceful {feature-list:HAVE_RESTART}?
    |  +---w input
    |     +---w grace-period?   uint16
    +---x isis-clear-interface-counters {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w name?   string
    +---x isis-clear-is-neighbors {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w system-id    string
    +---x isis-clear-clns-neighbors {feature-list:HAVE_ISISD}?
    +---x isis-clear-ip-route {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w instance?     string
    |     +---w ipv4-route    ipi-isis-types:isis_route_t
    +---x isis-clear-ipv6-route {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w instance?     string
    |     +---w ipv6-route    ipi-isis-types:isis_route_t
    +---x isis-process-clear {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w instance    string
    +---x isis-clear-counters {feature-list:HAVE_ISISD}?
    +---x isis-clear-adjacency-all {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w adjacency-vrf-name?   string
    +---x isis-process-clear-adjacency-all {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w tag-name              string
    |     +---w adjacency-vrf-name?   string
    +---x isis-process-clear-adjacency-interface {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w tag-name              string
    |     +---w tag-if-name?          string
    |     +---w adjacency-vrf-name?   string
    +---x isis-clear-adjacency-interface {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w adjacency-if-name?    string
    |     +---w adjacency-vrf-name?   string
    +---x isis-process-clear-adjacency-system-id {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w tag-name         string
    |     +---w tag-system-id    ipi-isis-types:isis_systemid_t
    |     +---w tag-vrf-name?    string
    +---x isis-clear-adjacency-system-id {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w adjacency-system-id    ipi-isis-types:isis_systemid_t
    |     +---w adjacency-vrf-name?    string
    +---x isis-restart-snmp {feature-list:HAVE_SNMP}?
    +---x isis-terminal-debug-all-on {feature-list:HAVE_ISISD}?
    +---x isis-terminal-debug-all-off {feature-list:HAVE_ISISD}?
    +---x isis-terminal-debug-on {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-isis-types:isis_debug_t
    +---x isis-debug-off {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-isis-types:isis_debug_t
    +---x isis-debug-hello-on {feature-list:HAVE_ISISD}?
    +---x isis-debug-hello-off {feature-list:HAVE_ISISD}?
    +---x isis-debug-interface-hello-on {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w interface    string
    +---x isis-debug-interface-hello-off {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w interface    string
    +---x isis-debug-system-id-hello-on {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w system-id    string
    +---x isis-debug-system-id-hello-off {feature-list:HAVE_ISISD}?
    |  +---w input
    |     +---w system-id    string
    +---x isis-all-debug-off {feature-list:HAVE_ISISD}?
    +---x isis-debug-cspf-on {feature-list:HAVE_ISIS_CSPF}?
    |  +---w input
    |     +---w cspf-debug    ipi-isis-types:isis_cspf_debug_t
    +---x isis-debug-cspf-off {feature-list:HAVE_ISIS_CSPF}?
       +---w input
          +---w cspf-debug    ipi-isis-types:isis_cspf_debug_t
 
  notifications:
    +---n isis-database-overload
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro overload?     ipi-isis-types:isis_overload_state_t
    +---n isis-lsp-too-large
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro lsp-identifier?   string
    |  +--ro pdu-length?       uint32
    +---n isis-corrupted-lsp-detected
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro lsp-identifier?   string
    +---n isis-attempt-to-exceed-max-sequence
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro lsp-identifier?   string
    +---n isis-id-len-mismatch
    |  +--ro severity?        cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?      cml-data-types:cml_notif_class_t
    |  +--ro pdu-field-len?   uint8
    |  +--ro raw-pdu?         string
    +---n isis-max-area-addresses-mismatch
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro max-area-addresses?   uint8
    |  +--ro raw-pdu?              string
    +---n isis-own-lsp-purge
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro lsp-identifier?   string
    +---n isis-sequence-number-skipped
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro lsp-identifier?   string
    +---n isis-authentication-type-failure
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro raw-pdu?      string
    +---n isis-authentication-failure
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro raw-pdu?      string
    +---n isis-version-skew
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro protocol-version?   uint8
    |  +--ro raw-pdu?            string
    +---n isis-area-mismatch
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro raw-pdu?      string
    +---n isis-rejected-adjacency
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro raw-pdu?      string
    |  +--ro reason?       string
    +---n isis-protocols-supported-mismatch
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro raw-pdu?      string
    |  +--ro protocols?    uint8
    +---n isis-lsp-error-detected
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro lsp-identifier?   string
    |  +--ro raw-pdu?          string
    |  +--ro error-offset?     uint32
    |  +--ro tlv-type?         uint8
    +---n isis-segment-routing-index-out-of-range {feature-list:HAVE_ISIS_SR}?
       +--ro severity?             cml-data-types:cml_notif_severity_t
       +--ro eventClass?           cml-data-types:cml_notif_class_t
       +--ro global-block-base?    int32
       +--ro global-block-range?   int32
       +--ro received-index?       uint32
       +--ro routing-protocol?     string
 
module: ipi-keychain
  +--rw key-chains
     +--rw key-chain* [name]
        +--rw name      -> ../config/name
        +--rw config
        |  +--rw name?   string
        +--ro state
        |  +--ro name?   string
        +--rw keys
           +--rw key-list* [key-id]
              +--rw key-id             -> ../config/key-id
              +--rw config
              |  +--rw key-id?             uint32
              |  +--rw (key-style)?
              |     +--:(key-string)
              |     |  +--rw key-string?   string
              |     +--:(hexadecimal)
              |        +--rw encrypted?    keychain_hex_string_t
              +--ro state
              |  +--ro key-id?             uint32
              |  +--ro (key-style)?
              |     +--:(key-string)
              |     |  +--ro key-string?   string
              |     +--:(hexadecimal)
              |        +--ro encrypted?    keychain_hex_string_t
              +--rw accept-lifetime
              |  +--rw config
              |  |  +--rw start-date-time-for-accept?       keychain_date_time_t
              |  |  +--rw (end-time)?
              |  |     +--:(end-time)
              |  |     |  +--rw end-date-time-for-accept?   keychain_date_time_t
              |  |     +--:(infinite)
              |  |     |  +--rw infinite-for-accept?        empty
              |  |     +--:(duration)
              |  |        +--rw duration-for-accept?        uint32
              |  +--ro state
              |     +--ro start-date-time-for-accept?       keychain_date_time_t
              |     +--ro (end-time)?
              |        +--:(end-time)
              |        |  +--ro end-date-time-for-accept?   keychain_date_time_t
              |        +--:(infinite)
              |        |  +--ro infinite-for-accept?        empty
              |        +--:(duration)
              |           +--ro duration-for-accept?        uint32
              +--rw send-lifetime
                 +--rw config
                 |  +--rw start-date-time-for-send?       keychain_date_time_t
                 |  +--rw (end-time)?
                 |     +--:(end-time)
                 |     |  +--rw end-date-time-for-send?   keychain_date_time_t
                 |     +--:(infinite)
                 |     |  +--rw infinite-for-send?        empty
                 |     +--:(duration)
                 |        +--rw duration-for-send?        uint32
                 +--ro state
                    +--ro start-date-time-for-send?       keychain_date_time_t
                    +--ro (end-time)?
                       +--:(end-time)
                       |  +--ro end-date-time-for-send?   keychain_date_time_t
                       +--:(infinite)
                       |  +--ro infinite-for-send?        empty
                       +--:(duration)
                          +--ro duration-for-send?        uint32
 
module: ipi-l2vpn-vpls
  +--rw vpls
     +--rw attachment-circuit
     |  +--rw service-template-mappings
     |     +--rw service-template-mapping* [interface-name vpls-name service-template-name]
     |        +--rw interface-name                 -> ../config/interface-name
     |        +--rw vpls-name                      -> ../config/vpls-name
     |        +--rw service-template-name          -> ../config/service-template-name
     |        +--rw config
     |        |  +--rw interface-name?                   -> /ipi-interface:interfaces/interface/name
     |        |  +--rw service-template-name?            -> /ipi-mpls:mpls/l2vpn/customer-service-templates/customer-service-template/config/name
     |        |  +--rw vpls-name?                        string
     |        |  +--rw admin-status?                     ipi-vpls-types:vpls_ac_admin_status_t
     |        |  +--rw attachment-circuit-description?   cml-data-types:cml_line_t
     |        |  +--rw mac-learning?                     ipi-vpls-types:vpls_mac_learning_t
     |        |  +--rw split-horizon?                    ipi-if-types:if_split_horizon_t {feature-list:HAVE_CUSTOM2_MPLS}?
     |        |  +--rw static-mac-address*               cml-data-types:cml_mac_addr_t
     |        +--ro state
     |        |  +--ro interface-name?                   -> /ipi-interface:interfaces/interface/name
     |        |  +--ro service-template-name?            -> /ipi-mpls:mpls/l2vpn/customer-service-templates/customer-service-template/config/name
     |        |  +--ro vpls-name?                        string
     |        |  +--ro admin-status?                     ipi-vpls-types:vpls_ac_admin_status_t
     |        |  +--ro attachment-circuit-description?   cml-data-types:cml_line_t
     |        |  +--ro mac-learning?                     ipi-vpls-types:vpls_mac_learning_t
     |        |  +--ro split-horizon?                    ipi-if-types:if_split_horizon_t {feature-list:HAVE_CUSTOM2_MPLS}?
     |        |  +--ro static-mac-address*               cml-data-types:cml_mac_addr_t
     |        +--rw quality-of-service-profiles
     |           +--rw quality-of-service-profile* [profile-type profile-name] {feature-list:HAVE_QOS}?
     |              +--rw profile-type    -> ../config/profile-type
     |              +--rw profile-name    -> ../config/profile-name
     |              +--rw config
     |              |  +--rw profile-type?   ipi-vpls-types:vpls_qos_map_profile_type_t
     |              |  +--rw profile-name?   string
     |              +--ro state
     |                 +--ro profile-type?   ipi-vpls-types:vpls_qos_map_profile_type_t
     |                 +--ro profile-name?   string
     +--rw static-forwarding
     |  +--rw vpls-entries
     |  |  +--rw vpls-entry* [vpls-identifier peer-address]
     |  |     +--rw vpls-identifier    -> ../config/vpls-identifier
     |  |     +--rw peer-address       -> ../config/peer-address
     |  |     +--rw config
     |  |     |  +--rw in-label              uint32
     |  |     |  +--rw out-label             uint32
     |  |     |  +--rw out-interface-name    string
     |  |     |  +--rw vpls-identifier?      -> /ipi-network-instance:network-instances/network-instance/vpls-instance/config/vpls-identifier
     |  |     |  +--rw peer-address?         -> /ipi-network-instance:network-instances/network-instance/vpls-instance/vpls-peers/vpls-peer/config/peer-address
     |  |     +--ro state
     |  |        +--ro in-label              uint32
     |  |        +--ro out-label             uint32
     |  |        +--ro out-interface-name    string
     |  |        +--ro vpls-identifier?      -> /ipi-network-instance:network-instances/network-instance/vpls-instance/config/vpls-identifier
     |  |        +--ro peer-address?         -> /ipi-network-instance:network-instances/network-instance/vpls-instance/vpls-peers/vpls-peer/config/peer-address
     |  +--rw hierarchical-vpls-entries
     |     +--rw hierarchical-vpls-entry* [vpls-identifier spoke-pseudowire-name]
     |        +--rw vpls-identifier          -> ../config/vpls-identifier
     |        +--rw spoke-pseudowire-name    -> ../config/spoke-pseudowire-name
     |        +--rw config
     |        |  +--rw in-label                 uint32
     |        |  +--rw out-label                uint32
     |        |  +--rw out-interface-name       string
     |        |  +--rw vpls-identifier?         -> /ipi-network-instance:network-instances/network-instance/vpls-instance/config/vpls-identifier
     |        |  +--rw spoke-pseudowire-name?   -> /ipi-network-instance:network-instances/network-instance/vpls-instance/spoke-pseudowires/spoke-pseudowire/config/pseudowire-name
     |        +--ro state
     |           +--ro in-label                 uint32
     |           +--ro out-label                uint32
     |           +--ro out-interface-name       string
     |           +--ro vpls-identifier?         -> /ipi-network-instance:network-instances/network-instance/vpls-instance/config/vpls-identifier
     |           +--ro spoke-pseudowire-name?   -> /ipi-network-instance:network-instances/network-instance/vpls-instance/spoke-pseudowires/spoke-pseudowire/config/pseudowire-name
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name           -> ../config/name
     |     +--rw config
     |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
     |     +--ro state
     |     |  +--ro name?   -> /ipi-interface:interfaces/interface/name
     |     +--rw vpls-access {feature-list:HAVE_SUBINTERFACE}?
     |        +--rw config!
     |        |  +--rw enable                  empty
     |        |  +--rw vpls-name?              string
     |        |  +--rw disable-mac-learning?   empty
     |        |  +--rw static-mac-address*     cml-data-types:cml_mac_addr_t
     |        +--ro state
     |           +--ro enable                  empty
     |           +--ro vpls-name?              string
     |           +--ro disable-mac-learning?   empty
     |           +--ro static-mac-address*     cml-data-types:cml_mac_addr_t
     +--rw global
        +--ro state
           +--ro counters
              +--ro total-instances?           yang:counter32
              +--ro total-peers?               yang:counter32
              +--ro active-peer-instances?     yang:counter32
              +--ro inactive-peer-instances?   yang:counter32
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance:
    +--rw vpls-instance
       +--rw config!
       |  +--rw vpls-identifier                  uint32
       |  +--rw service-transport-identifier?    ipi-vpls-types:vpls_svc_tpid_t
       |  +--rw maximum-transmission-unit?       uint16
       |  +--rw vpls-description?                cml-data-types:cml_line_t
       |  +--rw control-word?                    empty
       |  +--rw mac-learning-disable?            empty
       |  +--rw mac-learning-limit?              uint32 {feature-list:NOT_HAVE_TRIDENT2,feature-list:NOT_HAVE_TRIDENT2PLUS}?
       |  +--rw attachment-circuit-group-name?   -> /ipi-mpls:mpls/l2vpn/access-circuit-groups/access-circuit-group/config/group-name
       +--ro state
       |  +--ro vpls-identifier                  uint32
       |  +--ro service-transport-identifier?    ipi-vpls-types:vpls_svc_tpid_t
       |  +--ro maximum-transmission-unit?       uint16
       |  +--ro vpls-description?                cml-data-types:cml_line_t
       |  +--ro control-word?                    empty
       |  +--ro mac-learning-disable?            empty
       |  +--ro mac-learning-limit?              uint32 {feature-list:NOT_HAVE_TRIDENT2,feature-list:NOT_HAVE_TRIDENT2PLUS}?
       |  +--ro attachment-circuit-group-name?   -> /ipi-mpls:mpls/l2vpn/access-circuit-groups/access-circuit-group/config/group-name
       |  +--ro signaling-protocol?              ipi-vpls-types:vpls_signaling_type_t
       |  +--ro route-distinguisher?             string
       |  +--ro route-target?                    string
       |  +--ro vpls-edge-id?                    uint32
       |  +--ro attachment-circuit-status?       ipi-vpls-types:vpls_ac_status_t
       |  +--ro vpls-type?                       ipi-vpls-types:vpls_vc_type_t
       |  +--ro service-vlan-id?                 uint16
       |  +--ro group-identifier?                uint32
       |  +--ro total-mac-addresses-learnt?      uint32
       +--rw spoke-pseudowires
       |  +--rw spoke-pseudowire* [pseudowire-name]
       |     +--rw pseudowire-name    -> ../config/pseudowire-name
       |     +--rw config
       |     |  +--rw pseudowire-name?             string
       |     |  +--rw secondary-pseudowire-name?   string
       |     |  +--rw split-horizon?               ipi-if-types:if_split_horizon_t {feature-list:HAVE_CUSTOM2_MPLS}?
       |     +--ro state
       |        +--ro pseudowire-name?             string
       |        +--ro secondary-pseudowire-name?   string
       |        +--ro split-horizon?               ipi-if-types:if_split_horizon_t {feature-list:HAVE_CUSTOM2_MPLS}?
       +--rw fat-label
       |  +--rw config!
       |  |  +--rw enable-flow-label                 empty
       |  |  +--rw flow-label-direction?             ipi-vpls-types:vpls_mpls_flow_label_direction_t
       |  |  +--rw enable-static-flow-label?         empty
       |  |  +--rw enable-interface-parameter-tlv?   empty
       |  +--ro state
       |     +--ro enable-flow-label                 empty
       |     +--ro flow-label-direction?             ipi-vpls-types:vpls_mpls_flow_label_direction_t
       |     +--ro enable-static-flow-label?         empty
       |     +--ro enable-interface-parameter-tlv?   empty
       +--rw vpls-peers
       |  +--rw vpls-peer* [peer-address]
       |  |  +--rw peer-address    -> ../config/peer-address
       |  |  +--rw config
       |  |  |  +--rw peer-address?        inet:ipv4-address
       |  |  |  +--rw tunnel-name?         string
       |  |  |  +--rw tunnel-policy?       string {feature-list:HAVE_SERVICE_MAPPING}?
       |  |  |  +--rw tunnel-identifier?   uint32
       |  |  |  +--rw peer-type?           ipi-vpls-types:vpls_peer_type_t
       |  |  |  +--rw vpls-type?           ipi-vpls-types:vpls_vc_type_t
       |  |  +--ro state
       |  |  |  +--ro peer-address?        inet:ipv4-address
       |  |  |  +--ro tunnel-name?         string
       |  |  |  +--ro tunnel-policy?       string {feature-list:HAVE_SERVICE_MAPPING}?
       |  |  |  +--ro tunnel-identifier?   uint32
       |  |  |  +--ro peer-type?           ipi-vpls-types:vpls_peer_type_t
       |  |  |  +--ro vpls-type?           ipi-vpls-types:vpls_vc_type_t
       |  |  +--rw fec129s
       |  |     +--rw fec129* [attachment-group-identifier source-attachment-individual-identifier target-attachment-individual-identifier]
       |  |        +--rw attachment-group-identifier                -> ../config/attachment-group-identifier
       |  |        +--rw source-attachment-individual-identifier    -> ../config/source-attachment-individual-identifier
       |  |        +--rw target-attachment-individual-identifier    -> ../config/target-attachment-individual-identifier
       |  |        +--rw config
       |  |        |  +--rw attachment-group-identifier?               string
       |  |        |  +--rw source-attachment-individual-identifier?   string
       |  |        |  +--rw target-attachment-individual-identifier?   string
       |  |        |  +--rw tunnel-name?                               string
       |  |        |  +--rw tunnel-policy?                             string {feature-list:HAVE_SERVICE_MAPPING}?
       |  |        |  +--rw tunnel-identifier?                         string
       |  |        +--ro state
       |  |           +--ro attachment-group-identifier?               string
       |  |           +--ro source-attachment-individual-identifier?   string
       |  |           +--ro target-attachment-individual-identifier?   string
       |  |           +--ro tunnel-name?                               string
       |  |           +--ro tunnel-policy?                             string {feature-list:HAVE_SERVICE_MAPPING}?
       |  |           +--ro tunnel-identifier?                         string
       |  +--rw config!
       |  |  +--rw signaling-protocol-ldp     empty
       |  |  +--rw disable-mac-withdrawal?    empty
       |  |  +--rw vpls-ac-treatment-type?    ipi-vpls-types:cml_nsm_vpls_ac_treat_type_t
       |  |  +--rw vpls-encapsulation-type?   ipi-vpls-types:vpls_vc_type_t
       |  +--ro state
       |     +--ro signaling-protocol-ldp     empty
       |     +--ro disable-mac-withdrawal?    empty
       |     +--ro vpls-ac-treatment-type?    ipi-vpls-types:cml_nsm_vpls_ac_treat_type_t
       |     +--ro vpls-encapsulation-type?   ipi-vpls-types:vpls_vc_type_t
       +--rw bgp-signaling {feature-list:HAVE_BGP_VPLS}?
       |  +--rw config!
       |  |  +--rw signaling-protocol-bgp    empty
       |  |  +--rw vpls-edge-identifier?     uint16
       |  |  +--rw tunnel-policy?            string {feature-list:HAVE_SERVICE_MAPPING}?
       |  +--ro state
       |     +--ro signaling-protocol-bgp    empty
       |     +--ro vpls-edge-identifier?     uint16
       |     +--ro tunnel-policy?            string {feature-list:HAVE_SERVICE_MAPPING}?
       +--rw quality-of-service-profiles
       |  +--rw quality-of-service-profile* [profile-type profile-name] {feature-list:HAVE_QOS}?
       |     +--rw profile-type    -> ../config/profile-type
       |     +--rw profile-name    -> ../config/profile-name
       |     +--rw config
       |     |  +--rw profile-type?   ipi-vpls-types:vpls_qos_map_profile_type_t
       |     |  +--rw profile-name?   string
       |     +--ro state
       |        +--ro profile-type?   ipi-vpls-types:vpls_qos_map_profile_type_t
       |        +--ro profile-name?   string
       +--ro mac-learning-table* [mac-address]
       |  +--ro mac-address    -> ../state/mac-address
       |  +--ro state
       |     +--ro mac-address?                 cml-data-types:cml_mac_addr_t
       |     +--ro vpls-identifier?             uint32
       |     +--ro learning-source-interface?   string
       |     +--ro matched-vlan?                uint16
       |     +--ro peer-address?                inet:ipv4-address
       |     +--ro ageing-timeout?              uint32
       +--ro peer-list* [peer-address]
       |  +--ro peer-address    -> ../state/peer-address
       |  +--ro state
       |     +--ro peer-address?           inet:ipv4-address
       |     +--ro vpls-identifier?        uint32
       |     +--ro tunnel-label?           uint32
       |     +--ro pseudowire-in-label?    uint32
       |     +--ro pseudowire-out-label?   uint32
       |     +--ro peer-state?             ipi-vpls-types:vpls_peer_state_t
       |     +--ro pseudowire-status?      ipi-vpls-types:vpls_pseudowire_status_t
       |     +--ro peer-vpls-type?         ipi-vpls-types:vpls_vc_type_t
       |     +--ro network-interface?      string
       |     +--ro signaling-protocol?     ipi-vpls-types:vpls_signaling_type_t
       +--ro access-interface-counters* [interface-name] {feature-list:HAVE_MPLS_STATS}?
       |  +--ro interface-name    -> ../state/interface-name
       |  +--ro state
       |     +--ro interface-name?          -> /ipi-interface:interfaces/interface/name
       |     +--ro vpls-identifier?         uint32
       |     +--ro service-template-name?   string
       |     +--ro in-packets?              uint64
       |     +--ro in-bytes?                uint64
       |     +--ro out-packets?             uint64
       |     +--ro out-bytes?               uint64
       +--ro network-interface-counters* [peer-address] {feature-list:HAVE_MPLS_STATS}?
          +--ro peer-address    -> ../state/peer-address
          +--ro state
             +--ro peer-address?      inet:ipv4-address
             +--ro vpls-identifier?   uint32
             +--ro peer-state?        ipi-vpls-types:vpls_peer_state_t
             +--ro interface-name?    -> /ipi-interface:interfaces/interface/name
             +--ro in-packets?        uint64
             +--ro in-bytes?          uint64
             +--ro out-packets?       uint64
             +--ro out-bytes?         uint64
 
  rpcs:
    +---x clear-mpls-vpls-name-statistics-port-type {feature-list:HAVE_MPLS_STATS,feature-list:HAVE_VPLS}?
    |  +---w input
    |     +---w port-type            ipi-vpls-types:vpls_port_type_t
    |     +---w port-circuit-name    string
    +---x clear-mpls-vpls-name-statistics-network-port-peer {feature-list:HAVE_MPLS_STATS,feature-list:HAVE_VPLS}?
    |  +---w input
    |     +---w port-circuit-name    string
    |     +---w vc-circuit-type      ipi-vpls-types:vpls_peer_address_type_t
    +---x clear-mpls-vpls-name-statistics-network-port-spoke {feature-list:HAVE_MPLS_STATS,feature-list:HAVE_VPLS}?
    |  +---w input
    |     +---w port-circuit-name    string
    |     +---w vc-circuit-type      ipi-vpls-types:vpls_spoke_vc_type_t
    +---x clear-mpls-vpls-name-statistics-access-port {feature-list:HAVE_MPLS_STATS,feature-list:HAVE_VPLS}?
    |  +---w input
    |     +---w port-circuit-name    string
    |     +---w vc-interface-name    string
    |     +---w vc-access-type       ipi-vpls-types:vpls_mpls_access_type_t
    +---x clear-mpls-vpls-name-statistics {feature-list:HAVE_VPLS,feature-list:HAVE_MPLS_STATS}?
    |  +---w input
    |     +---w vpls-circuit-name    string
    +---x clear-mpls-vpls-mac-addresses-for-instance {feature-list:HAVE_VPLS}?
    |  +---w input
    |     +---w name    string
    +---x clear-mpls-vpls-mac-addresses-all {feature-list:HAVE_VPLS}?
 
module: ipi-l2vpn-vpws
  +--rw vpws
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name                         -> ../config/name
     |     +--rw config
     |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
     |     +--ro state
     |     |  +--ro name?   -> /ipi-interface:interfaces/interface/name
     |     +--rw pseudowire-modes
     |     |  +--rw pseudowire-mode* [service-template]
     |     |     +--rw service-template    -> ../config/service-template
     |     |     +--rw config
     |     |     |  +--rw service-template?   string
     |     |     |  +--rw mode                ipi-vpws-types:vpws_mpls_vcmode_t
     |     |     +--ro state
     |     |        +--ro service-template?   string
     |     |        +--ro mode                ipi-vpws-types:vpws_mpls_vcmode_t
     |     +--rw vpws-access {feature-list:HAVE_SUBINTERFACE}?
     |     |  +--rw config!
     |     |  |  +--rw enable                   empty
     |     |  |  +--rw enable-revertive-mode?   empty
     |     |  +--ro state
     |     |  |  +--ro enable                   empty
     |     |  |  +--ro enable-revertive-mode?   empty
     |     |  +--rw bindings
     |     |     +--rw binding* [vpws-name]
     |     |        +--rw vpws-name    -> ../config/vpws-name
     |     |        +--rw config
     |     |        |  +--rw vpws-name?              string
     |     |        |  +--rw pseudowire-link-mode    ipi-vpws-types:vpws_mpls_vclinkmode_t
     |     |        +--ro state
     |     |           +--ro vpws-name?              string
     |     |           +--ro pseudowire-link-mode    ipi-vpws-types:vpws_mpls_vclinkmode_t
     |     +--rw service-template-mappings
     |        +--rw service-template-mapping* [pseudowire-name]
     |           +--rw pseudowire-name    -> ../config/pseudowire-name
     |           +--rw config
     |           |  +--rw pseudowire-name?             string
     |           |  +--rw service-template-name        -> /ipi-mpls:mpls/l2vpn/customer-service-templates/customer-service-template/name
     |           |  +--rw pseudowire-link-mode         ipi-vpws-types:vpws_mpls_vclinkmode_t
     |           |  +--rw cos-to-queue-profile-name?   string {feature-list:HAVE_QOS_MAPPING_PROFILE}?
     |           |  +--rw queue-to-cos-profile-name?   string {feature-list:HAVE_QOS_MAPPING_PROFILE,feature-list:NOT_HAVE_CUSTOM1_MPLS}?
     |           +--ro state
     |              +--ro pseudowire-name?             string
     |              +--ro service-template-name        -> /ipi-mpls:mpls/l2vpn/customer-service-templates/customer-service-template/name
     |              +--ro pseudowire-link-mode         ipi-vpws-types:vpws_mpls_vclinkmode_t
     |              +--ro cos-to-queue-profile-name?   string {feature-list:HAVE_QOS_MAPPING_PROFILE}?
     |              +--ro queue-to-cos-profile-name?   string {feature-list:HAVE_QOS_MAPPING_PROFILE,feature-list:NOT_HAVE_CUSTOM1_MPLS}?
     +--rw static-forwarding
     |  +--rw forwarding-information-bases
     |     +--rw forwarding-information-base* [pseudowire-identifier]
     |        +--rw pseudowire-identifier    -> ../config/pseudowire-identifier
     |        +--rw config
     |        |  +--rw pseudowire-identifier?     -> /ipi-network-instance:network-instances/network-instance/vpws-instance/pseudowires/pseudowire/config/pseudowire-identifier
     |        |  +--rw incoming-label             uint32
     |        |  +--rw outgoing-label             uint32
     |        |  +--rw nexthop-address            inet:ip-address
     |        |  +--rw provider-interface-name    -> /ipi-interface:interfaces/interface/name
     |        |  +--rw access-interface-name      -> /vpws/interfaces/interface/name
     |        +--ro state
     |           +--ro pseudowire-identifier?     -> /ipi-network-instance:network-instances/network-instance/vpws-instance/pseudowires/pseudowire/config/pseudowire-identifier
     |           +--ro incoming-label             uint32
     |           +--ro outgoing-label             uint32
     |           +--ro nexthop-address            inet:ip-address
     |           +--ro provider-interface-name    -> /ipi-interface:interfaces/interface/name
     |           +--ro access-interface-name      -> /vpws/interfaces/interface/name
     +--ro global
        +--ro state
           +--ro counters
              +--ro total-pseudowires?      uint32
              +--ro active-pseudowires?     uint32
              +--ro inactive-pseudowires?   uint32
              +--ro oam-pseudowires?        uint32
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance:
    +--rw vpws-instance
       +--rw pseudowires
       |  +--rw pseudowire* [pseudowire-identifier peer-address]
       |     +--rw pseudowire-identifier    -> ../config/pseudowire-identifier
       |     +--rw peer-address             -> ../config/peer-address
       |     +--rw config
       |     |  +--rw pseudowire-identifier?   uint32
       |     |  +--rw peer-address?            ipi-vpws-types:vpws_ip_addr_t
       |     +--ro state
       |     |  +--ro pseudowire-identifier?            uint32
       |     |  +--ro peer-address?                     ipi-vpws-types:vpws_ip_addr_t
       |     |  +--ro vc-admin-status?                  ipi-vpws-types:vpws_mpls_vc_admin_status_t {feature-list:HAVE_UNI_CLI}?
       |     |  +--ro up-time?                          yang:date-and-time
       |     |  +--ro last-change-time?                 yang:date-and-time
       |     |  +--ro create-time?                      yang:date-and-time
       |     |  +--ro owner?                            ipi-vpws-types:vpws_mpls_vc_owner_t
       |     |  +--ro non-te-mapping-direction?         ipi-vpws-types:vpws_mpls_mapping_dir_t
       |     |  +--ro remote-pseudowire-status?         ipi-vpws-types:vpws_mpls_pw_status_t
       |     |  +--ro pseudowire-state?                 ipi-vpws-types:vpws_mpls_pw_state_t
       |     |  +--ro pseudowire-index?                 uint32
       |     |  +--ro pseudowire-type?                  ipi-vpws-types:vpws_mpls_pw_type_t
       |     |  +--ro pseudowire-mode?                  ipi-vpws-types:vpws_mpls_pw_mode_t
       |     |  +--ro pseudowire-label?                 uint32
       |     |  +--ro tunnel-label?                     uint32
       |     |  +--ro network-interface-name?           string
       |     |  +--ro customer-service-template-name?   string
       |     |  +--ro ldp-ecmp-svc?                     string {feature-list:HAVE_MPLS_ECMP}?
       |     |  +--ro rsvp-multipath-svc?               string {feature-list:HAVE_RSVP_MULTIPATH}?
       |     |  +--ro down-reason?                      cml-data-types:cml_line_t
       |     +--rw default-tagged
       |     |  +--rw config!
       |     |  |  +--rw group-name?                       string
       |     |  |  +--rw group-identifier?                 uint32
       |     |  |  +--rw enable-control-word?              empty
       |     |  |  +--rw tunnel-name?                      string
       |     |  |  +--rw tunnel-policy?                    string {feature-list:HAVE_SERVICE_MAPPING}?
       |     |  |  +--rw tunnel-identifier?                uint32
       |     |  |  +--rw enable-default-tagged-mode        empty
       |     |  |  +--rw enable-flow-label?                empty
       |     |  |  +--rw flow-label-direction?             ipi-vpws-types:vpws_mpls_flow_label_direction_t
       |     |  |  +--rw enable-static-flow-label?         empty
       |     |  |  +--rw enable-interface-parameter-tlv?   empty
       |     |  |  +--rw service-tpid?                     ipi-vpws-types:vpws_svc_tpid_t
       |     |  |  +--rw enable-manual-pseudowire?         empty
       |     |  |  +--rw control-channel-type?             ipi-vpws-types:vpws_mpls_vccv_cc_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |     |  |  +--rw control-verification-type?        ipi-vpws-types:vpws_mpls_vccv_cv_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |     |  +--ro state
       |     |     +--ro group-name?                       string
       |     |     +--ro group-identifier?                 uint32
       |     |     +--ro enable-control-word?              empty
       |     |     +--ro tunnel-name?                      string
       |     |     +--ro tunnel-policy?                    string {feature-list:HAVE_SERVICE_MAPPING}?
       |     |     +--ro tunnel-identifier?                uint32
       |     |     +--ro enable-default-tagged-mode        empty
       |     |     +--ro enable-flow-label?                empty
       |     |     +--ro flow-label-direction?             ipi-vpws-types:vpws_mpls_flow_label_direction_t
       |     |     +--ro enable-static-flow-label?         empty
       |     |     +--ro enable-interface-parameter-tlv?   empty
       |     |     +--ro service-tpid?                     ipi-vpws-types:vpws_svc_tpid_t
       |     |     +--ro enable-manual-pseudowire?         empty
       |     |     +--ro control-channel-type?             ipi-vpws-types:vpws_mpls_vccv_cc_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |     |     +--ro control-verification-type?        ipi-vpws-types:vpws_mpls_vccv_cv_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |     +--rw tagged
       |     |  +--rw config!
       |     |  |  +--rw group-name?                       string
       |     |  |  +--rw group-identifier?                 uint32
       |     |  |  +--rw enable-control-word?              empty
       |     |  |  +--rw tunnel-name?                      string
       |     |  |  +--rw tunnel-policy?                    string {feature-list:HAVE_SERVICE_MAPPING}?
       |     |  |  +--rw tunnel-identifier?                uint32
       |     |  |  +--rw enable-flow-label?                empty
       |     |  |  +--rw flow-label-direction?             ipi-vpws-types:vpws_mpls_flow_label_direction_t
       |     |  |  +--rw enable-static-flow-label?         empty
       |     |  |  +--rw enable-interface-parameter-tlv?   empty
       |     |  |  +--rw enable-manual-pseudowire?         empty
       |     |  |  +--rw enable-tagged-mode                empty
       |     |  |  +--rw control-channel-type?             ipi-vpws-types:vpws_mpls_vccv_cc_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |     |  |  +--rw control-verification-type?        ipi-vpws-types:vpws_mpls_vccv_cv_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |     |  +--ro state
       |     |     +--ro group-name?                       string
       |     |     +--ro group-identifier?                 uint32
       |     |     +--ro enable-control-word?              empty
       |     |     +--ro tunnel-name?                      string
       |     |     +--ro tunnel-policy?                    string {feature-list:HAVE_SERVICE_MAPPING}?
       |     |     +--ro tunnel-identifier?                uint32
       |     |     +--ro enable-flow-label?                empty
       |     |     +--ro flow-label-direction?             ipi-vpws-types:vpws_mpls_flow_label_direction_t
       |     |     +--ro enable-static-flow-label?         empty
       |     |     +--ro enable-interface-parameter-tlv?   empty
       |     |     +--ro enable-manual-pseudowire?         empty
       |     |     +--ro enable-tagged-mode                empty
       |     |     +--ro control-channel-type?             ipi-vpws-types:vpws_mpls_vccv_cc_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |     |     +--ro control-verification-type?        ipi-vpws-types:vpws_mpls_vccv_cv_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |     +--rw raw
       |        +--rw config!
       |        |  +--rw group-name?                       string
       |        |  +--rw group-identifier?                 uint32
       |        |  +--rw enable-control-word?              empty
       |        |  +--rw tunnel-name?                      string
       |        |  +--rw tunnel-policy?                    string {feature-list:HAVE_SERVICE_MAPPING}?
       |        |  +--rw tunnel-identifier?                uint32
       |        |  +--rw enable-flow-label?                empty
       |        |  +--rw flow-label-direction?             ipi-vpws-types:vpws_mpls_flow_label_direction_t
       |        |  +--rw enable-static-flow-label?         empty
       |        |  +--rw enable-interface-parameter-tlv?   empty
       |        |  +--rw enable-raw-mode                   empty
       |        |  +--rw enable-manual-pseudowire?         empty
       |        |  +--rw control-channel-type?             ipi-vpws-types:vpws_mpls_vccv_cc_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |        |  +--rw control-verification-type?        ipi-vpws-types:vpws_mpls_vccv_cv_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |        +--ro state
       |           +--ro group-name?                       string
       |           +--ro group-identifier?                 uint32
       |           +--ro enable-control-word?              empty
       |           +--ro tunnel-name?                      string
       |           +--ro tunnel-policy?                    string {feature-list:HAVE_SERVICE_MAPPING}?
       |           +--ro tunnel-identifier?                uint32
       |           +--ro enable-flow-label?                empty
       |           +--ro flow-label-direction?             ipi-vpws-types:vpws_mpls_flow_label_direction_t
       |           +--ro enable-static-flow-label?         empty
       |           +--ro enable-interface-parameter-tlv?   empty
       |           +--ro enable-raw-mode                   empty
       |           +--ro enable-manual-pseudowire?         empty
       |           +--ro control-channel-type?             ipi-vpws-types:vpws_mpls_vccv_cc_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       |           +--ro control-verification-type?        ipi-vpws-types:vpws_mpls_vccv_cv_type_t {feature-list:HAVE_VCCV,feature-list:HAVE_CUSTOM1_MPLS_BFD}?
       +--ro access-interface-counters* [interface-name] {feature-list:HAVE_MPLS_STATS}?
       |  +--ro interface-name    -> ../state/interface-name
       |  +--ro state
       |     +--ro interface-name?          -> /ipi-interface:interfaces/interface/name
       |     +--ro pseudowire-identifier?   uint32
       |     +--ro service-template-name?   string
       |     +--ro in-packets?              uint64
       |     +--ro in-bytes?                uint64
       |     +--ro out-packets?             uint64
       |     +--ro out-bytes?               uint64
       +--ro network-interface-counters* [peer-address] {feature-list:HAVE_MPLS_STATS}?
          +--ro peer-address    -> ../state/peer-address
          +--ro state
             +--ro peer-address?            inet:ipv4-address
             +--ro pseudowire-identifier?   uint32
             +--ro interface-name?          -> /ipi-interface:interfaces/interface/name
             +--ro in-packets?              uint64
             +--ro in-bytes?                uint64
             +--ro out-packets?             uint64
             +--ro out-bytes?               uint64
 
  rpcs:
    +---x pseudowire-trap-configuration {feature-list:HAVE_SNMP}?
    |  +---w input
    |     +---w status-notification       boolean
    |     +---w delete-notification       boolean
    |     +---w configure-notification    cml-data-types:cml_enable_disable_t
    +---x clear-mpls-l2-circuit-statistics {feature-list:HAVE_MPLS_STATS,feature-list:HAVE_MPLS_VC}?
    |  +---w input
    |     +---w pseudowire-name    string
    +---x clear-mpls-l2-circuit-port-statistics {feature-list:HAVE_MPLS_STATS,feature-list:HAVE_MPLS_VC}?
    |  +---w input
    |     +---w port-type               ipi-vpws-types:vpws_mpls_port_type_t
    |     +---w port-pseudowire-name    string
    +---x pseudowire-manual-switchover {feature-list:HAVE_MPLS_VC}?
       +---w input
          +---w primary-pseudowire      string
          +---w secondary-pseudowire    string
 
  notifications:
    +---n mpls-pseudowire-up
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro pseudowire-identifier?   uint32
    |  +--ro peer-address?            ipi-vpws-types:vpws_ip_addr_t
    |  +--ro instance-type?           ipi-network-instance-types:net_inst_type_t
    |  +--ro instance-name?           string
    |  +--ro pseudowire-state?        ipi-vpws-types:vpws_mpls_pw_state_t
    +---n mpls-pseudowire-down
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro pseudowire-identifier?   uint32
    |  +--ro peer-address?            ipi-vpws-types:vpws_ip_addr_t
    |  +--ro instance-type?           ipi-network-instance-types:net_inst_type_t
    |  +--ro instance-name?           string
    |  +--ro pseudowire-state?        ipi-vpws-types:vpws_mpls_pw_state_t
    +---n mpls-pseudowire-deleted
       +--ro severity?                cml-data-types:cml_notif_severity_t
       +--ro eventClass?              cml-data-types:cml_notif_class_t
       +--ro pseudowire-identifier?   uint32
       +--ro peer-address?            ipi-vpws-types:vpws_ip_addr_t
       +--ro instance-type?           ipi-network-instance-types:net_inst_type_t
       +--ro instance-name?           string
       +--ro pseudowire-state?        ipi-vpws-types:vpws_mpls_pw_state_t
 
 
module: ipi-lacp
  +--rw lacp
     +--rw global
     |  +--rw config
     |  |  +--rw system-priority?   uint32
     |  +--ro state
     |     +--ro system-priority?   uint32
     |     +--ro system-id?         cml-data-types:cml_mac_addr_t
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-lacp-types:lacp_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-lacp-types:lacp_debug_t
     |     +--ro terminal-debug-status?   ipi-lacp-types:lacp_debug_t
     +--ro aggregators
     |  +--ro aggregator* [agg-name]
     |     +--ro agg-name    -> ../state/agg-name
     |     +--ro state
     |     |  +--ro agg-name?                string
     |     |  +--ro interface-index?         uint32
     |     |  +--ro type?                    ipi-lag-types:lag_aggregator_type_t
     |     |  +--ro mac-address?             cml-data-types:cml_mac_addr_t
     |     |  +--ro rx-link-count?           yang:counter32
     |     |  +--ro tx-link-count?           yang:counter32
     |     |  +--ro individual-aggregator?   ipi-lacp-types:lacp_individual_aggregator_t
     |     |  +--ro aggregator-ready?        empty
     |     +--ro actor
     |     |  +--ro state
     |     |     +--ro admin-key?         uint16
     |     |     +--ro oper-key?          uint16
     |     |     +--ro system-priority?   uint16
     |     |     +--ro system-id?         cml-data-types:cml_mac_addr_t
     |     +--ro partner
     |     |  +--ro state
     |     |     +--ro oper-key?          uint16
     |     |     +--ro system-priority?   uint16
     |     |     +--ro system-id?         cml-data-types:cml_mac_addr_t
     |     +--ro members
     |        +--ro member* [link-name]
     |           +--ro link-name    -> ../state/link-name
     |           +--ro state
     |           |  +--ro link-name?                     string
     |           |  +--ro sync-state?                    ipi-lacp-types:lacp_synchronization_type_t
     |           |  +--ro receive-state?                 ipi-lacp-types:lacp_rcv_state_t
     |           |  +--ro periodic-transmission-state?   ipi-lacp-types:lacp_periodic_tx_state_t
     |           |  +--ro mux-machine-state?             ipi-lacp-types:lacp_mux_state_t
     |           |  +--ro admin-key?                     uint16
     |           |  +--ro counters
     |           |     +--ro lacp-out-pkts?                  yang:counter32
     |           |     +--ro lacp-in-pkts?                   yang:counter32
     |           |     +--ro lacp-in-marker-pdu?             yang:counter32
     |           |     +--ro lacp-out-marker-pdu?            yang:counter32
     |           |     +--ro lacp-tx-errors?                 yang:counter32
     |           |     +--ro lacp-rx-errors?                 yang:counter32
     |           |     +--ro lacp-in-marker-pdu-response?    yang:counter32
     |           |     +--ro lacp-out-marker-pdu-response?   yang:counter32
     |           +--ro actor
     |           |  +--ro state
     |           |     +--ro operational
     |           |     |  +--ro activity?          ipi-lacp-types:lacp_activity_type_t
     |           |     |  +--ro timeout?           ipi-lacp-types:lacp_timeout_type_t
     |           |     |  +--ro aggregatable?      boolean
     |           |     |  +--ro synchronization?   ipi-lacp-types:lacp_synchronization_type_t
     |           |     |  +--ro collecting?        boolean
     |           |     |  +--ro distributing?      boolean
     |           |     |  +--ro defaulted?         boolean
     |           |     |  +--ro expired?           boolean
     |           |     |  +--ro port-key?          uint16
     |           |     +--ro admin
     |           |     |  +--ro activity?          ipi-lacp-types:lacp_activity_type_t
     |           |     |  +--ro timeout?           ipi-lacp-types:lacp_timeout_type_t
     |           |     |  +--ro aggregatable?      boolean
     |           |     |  +--ro synchronization?   ipi-lacp-types:lacp_synchronization_type_t
     |           |     |  +--ro collecting?        boolean
     |           |     |  +--ro distributing?      boolean
     |           |     |  +--ro defaulted?         boolean
     |           |     |  +--ro expired?           boolean
     |           |     |  +--ro port-key?          uint16
     |           |     +--ro system-id?         cml-data-types:cml_mac_addr_t
     |           |     +--ro system-priority?   uint16
     |           |     +--ro port-number?       uint16
     |           |     +--ro port-priority?     uint16
     |           +--ro partner
     |              +--ro state
     |                 +--ro operational
     |                 |  +--ro activity?          ipi-lacp-types:lacp_activity_type_t
     |                 |  +--ro timeout?           ipi-lacp-types:lacp_timeout_type_t
     |                 |  +--ro aggregatable?      boolean
     |                 |  +--ro synchronization?   ipi-lacp-types:lacp_synchronization_type_t
     |                 |  +--ro collecting?        boolean
     |                 |  +--ro distributing?      boolean
     |                 |  +--ro defaulted?         boolean
     |                 |  +--ro expired?           boolean
     |                 |  +--ro system-id?         cml-data-types:cml_mac_addr_t
     |                 |  +--ro system-priority?   uint16
     |                 |  +--ro port-number?       uint16
     |                 |  +--ro port-priority?     uint16
     |                 |  +--ro port-key?          uint16
     |                 +--ro admin
     |                    +--ro activity?          ipi-lacp-types:lacp_activity_type_t
     |                    +--ro timeout?           ipi-lacp-types:lacp_timeout_type_t
     |                    +--ro aggregatable?      boolean
     |                    +--ro synchronization?   ipi-lacp-types:lacp_synchronization_type_t
     |                    +--ro collecting?        boolean
     |                    +--ro distributing?      boolean
     |                    +--ro defaulted?         boolean
     |                    +--ro expired?           boolean
     |                    +--ro system-id?         cml-data-types:cml_mac_addr_t
     |                    +--ro system-priority?   uint16
     |                    +--ro port-number?       uint16
     |                    +--ro port-priority?     uint16
     +--rw interfaces
        +--rw interface* [name]
           +--rw name                  -> ../config/name
           +--rw config
           |  +--rw name?   -> /ipi-interface:interfaces/interface/name
           +--ro state
           |  +--ro name?   -> /ipi-interface:interfaces/interface/name
           +--rw member-aggregation
           |  +--rw config
           |  |  +--rw port-priority?   uint32
           |  |  +--rw timeout?         ipi-lacp-types:lacp_timeout_type_t
           |  |  +--rw bridge-type?     ipi-lacp-types:lacp_bridgetype_t
           |  |  +--rw force-up?        empty
           |  |  +--rw agg-force-up?    empty
           |  +--ro state
           |     +--ro port-priority?   uint32
           |     +--ro timeout?         ipi-lacp-types:lacp_timeout_type_t
           |     +--ro bridge-type?     ipi-lacp-types:lacp_bridgetype_t
           |     +--ro force-up?        empty
           |     +--ro agg-force-up?    empty
           +--rw aggregator
              +--rw config
              +--ro state
 
  rpcs:
    +---x lacp-snmp-restart {feature-list:HAVE_SNMP}?
    +---x clear-lacp-counters {feature-list:HAVE_LAGD}?
    |  +---w input
    |     +---w aggregate-id    uint16
    +---x lacp-terminal-debug-on {feature-list:HAVE_LAGD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-lacp-types:lacp_debug_t
    +---x lacp-terminal-debug-off {feature-list:HAVE_LAGD}?
       +---w input
          +---w terminal-debug-options    ipi-lacp-types:lacp_debug_t
 
 
 
 
 
 
 
module: ipi-ldp
  +--rw ldp
     +--rw global
     |  +--rw config!
     |  |  +--rw ldp-instance                          ipi-ldp-types:ldp_instance_t
     |  |  +--rw router-identifier?                    inet:ipv4-address
     |  |  +--rw pseudowire-status-tlv?                boolean {feature-list:HAVE_MPLS_VC}?
     |  |  +--rw rlfa-ilm-optimization?                boolean
     |  |  +--rw entropy-label-capability-enable?      boolean {feature-list:NOT_HAVE_CUSTOM1_MPLS}?
     |  |  +--rw multicast-hello-disable?              empty
     |  |  +--rw advertise-label-for-default-route?    empty
     |  |  +--rw import-bgp-routes?                    boolean
     |  |  +--rw ldp-optimization?                     boolean
     |  |  +--rw explicit-null?                        boolean
     |  |  +--rw global-merge?                         ipi-ldp-types:ldp_merge_capable_t
     |  |  +--rw propagate-release?                    boolean
     |  |  +--rw fast-reroute?                         empty {feature-list:HAVE_LDP_LFA}?
     |  |  +--rw auto-targeted-session?                empty {feature-list:HAVE_LDP_LFA}?
     |  |  +--rw prefer-tunnel-in-tunnel?              empty {feature-list:HAVE_LDP_TUNNELING}?
     |  |  +--rw ignore-mac-withdraw-bad-pdu-length?   boolean {feature-list:HAVE_MPLS_VC}?
     |  +--ro state
     |  |  +--ro ldp-instance                          ipi-ldp-types:ldp_instance_t
     |  |  +--ro router-identifier?                    inet:ipv4-address
     |  |  +--ro pseudowire-status-tlv?                boolean {feature-list:HAVE_MPLS_VC}?
     |  |  +--ro rlfa-ilm-optimization?                boolean
     |  |  +--ro entropy-label-capability-enable?      boolean {feature-list:NOT_HAVE_CUSTOM1_MPLS}?
     |  |  +--ro multicast-hello-disable?              empty
     |  |  +--ro advertise-label-for-default-route?    empty
     |  |  +--ro import-bgp-routes?                    boolean
     |  |  +--ro ldp-optimization?                     boolean
     |  |  +--ro explicit-null?                        boolean
     |  |  +--ro global-merge?                         ipi-ldp-types:ldp_merge_capable_t
     |  |  +--ro propagate-release?                    boolean
     |  |  +--ro fast-reroute?                         empty {feature-list:HAVE_LDP_LFA}?
     |  |  +--ro auto-targeted-session?                empty {feature-list:HAVE_LDP_LFA}?
     |  |  +--ro prefer-tunnel-in-tunnel?              empty {feature-list:HAVE_LDP_TUNNELING}?
     |  |  +--ro ignore-mac-withdraw-bad-pdu-length?   boolean {feature-list:HAVE_MPLS_VC}?
     |  +--rw label-management
     |  |  +--rw config
     |  |  |  +--rw control-mode?         ipi-ldp-types:ldp_controlmode_t
     |  |  |  +--rw retention-mode?       ipi-ldp-types:ldp_retention_mode_t
     |  |  |  +--rw advertisement-mode?   ipi-ldp-types:ldp_advertise_mode_t
     |  |  +--ro state
     |  |     +--ro control-mode?         ipi-ldp-types:ldp_controlmode_t
     |  |     +--ro retention-mode?       ipi-ldp-types:ldp_retention_mode_t
     |  |     +--ro advertisement-mode?   ipi-ldp-types:ldp_advertise_mode_t
     |  +--rw timers
     |  |  +--rw config
     |  |  |  +--rw hello-interval?       uint16
     |  |  |  +--rw hello-holdtime?       uint16
     |  |  |  +--rw keepalive-timeout?    uint16
     |  |  |  +--rw keepalive-interval?   uint16
     |  |  +--ro state
     |  |     +--ro hello-interval?       uint16
     |  |     +--ro hello-holdtime?       uint16
     |  |     +--ro keepalive-timeout?    uint16
     |  |     +--ro keepalive-interval?   uint16
     |  +--rw label-request-policy
     |  |  +--rw config
     |  |  |  +--rw request-retry-timeout?       uint16
     |  |  |  +--rw request-retry?               boolean
     |  |  |  +--rw label-request-policy-ipv4?   string
     |  |  +--ro state
     |  |     +--ro request-retry-timeout?       uint16
     |  |     +--ro request-retry?               boolean
     |  |     +--ro label-request-policy-ipv4?   string
     |  +--rw loop-detection-policy
     |  |  +--rw config!
     |  |  |  +--rw loop-detection-enable    empty
     |  |  |  +--rw path-vector-limit?       uint32
     |  |  |  +--rw hop-count-limit?         uint32
     |  |  +--ro state
     |  |     +--ro loop-detection-enable    empty
     |  |     +--ro path-vector-limit?       uint32
     |  |     +--ro hop-count-limit?         uint32
     |  +--rw session-protection {feature-list:HAVE_LDP_SESS_PROT}?
     |     +--rw config!
     |     |  +--rw session-protection-enable              empty
     |     |  +--rw duration?                              ipi-ldp-types:ldp_sess_prot_duration_t
     |     |  +--rw session-protection-prefix-list-name?   ipi-ldp-types:ldp_sess_prot_pfx_lst_t
     |     +--ro state
     |        +--ro session-protection-enable              empty
     |        +--ro duration?                              ipi-ldp-types:ldp_sess_prot_duration_t
     |        +--ro session-protection-prefix-list-name?   ipi-ldp-types:ldp_sess_prot_pfx_lst_t
     +--rw debug
     |  +--rw config
     |  |  +--rw ldp?   ipi-ldp-types:ldp_debug_t
     |  +--ro state
     |     +--ro ldp?                      ipi-ldp-types:ldp_debug_t
     |     +--ro terminal-debug-options?   ipi-ldp-types:ldp_debug_t
     +--rw graceful-restart {feature-list:HAVE_RESTART}?
     |  +--rw config!
     |  |  +--rw enable                    ipi-ldp-types:ldp_gr_mode_t
     |  |  +--rw neighbor-liveness-time?   uint16
     |  |  +--rw max-recovery-time?        uint16
     |  +--ro state
     |     +--ro enable                    ipi-ldp-types:ldp_gr_mode_t
     |     +--ro neighbor-liveness-time?   uint16
     |     +--ro max-recovery-time?        uint16
     |     +--ro restart-count?            uint32
     +--ro ldp-tunnels {feature-list:HAVE_LDP_TUNNELING}?
     |  +--ro ldp-tunnel* [tunnel-endpoint]
     |     +--ro tunnel-endpoint    -> ../state/tunnel-endpoint
     |     +--ro state
     |     |  +--ro tunnel-endpoint?   cml-data-types:cml_ipv4_addr_prefix_t
     |     +--ro tunnel-lists
     |        +--ro tunnel-list* [tunnel-name]
     |           +--ro tunnel-name    -> ../state/tunnel-name
     |           +--ro state
     |           |  +--ro tunnel-name?   string
     |           |  +--ro cost?          uint32
     |           |  +--ro owner?         string
     |           |  +--ro status?        string
     |           |  +--ro fec-count?     uint8
     |           +--ro fec-lists
     |              +--ro fec-list* [fec-prefix]
     |                 +--ro fec-prefix    -> ../state/fec-prefix
     |                 +--ro state
     |                    +--ro fec-prefix?      cml-data-types:cml_ipv4_addr_prefix_t
     |                    +--ro upstream-peer?   inet:ipv4-address
     |                    +--ro in-label?        string
     |                    +--ro out-label?       string
     +--rw lfa {feature-list:HAVE_LDP_LFA}?
     |  +--ro fecs
     |     +--ro fec* [prefix-address]
     |        +--ro prefix-address    -> ../state/prefix-address
     |        +--ro state
     |        |  +--ro prefix-address?   inet:ip-address
     |        +--ro primary-paths
     |           +--ro primary-path* [nexthop-address nexthop-interface-name]
     |              +--ro nexthop-address           -> ../state/nexthop-address
     |              +--ro nexthop-interface-name    -> ../state/nexthop-interface-name
     |              +--ro state
     |              |  +--ro nexthop-address?          inet:ip-address
     |              |  +--ro nexthop-interface-name?   string
     |              +--ro backup-path
     |                 +--ro state
     |                    +--ro backup-address?          inet:ip-address
     |                    +--ro backup-interface-name?   string
     +--rw transport-addresses
     |  +--rw transport-address* [label-space-identifier]
     |     +--rw label-space-identifier    -> ../config/label-space-identifier
     |     +--rw config
     |     |  +--rw label-space-identifier?   ipi-ldp-types:ldp_label_space_identifier_t
     |     |  +--rw transport-address-ipv4?   inet:ipv4-address
     |     +--ro state
     |        +--ro label-space-identifier?   ipi-ldp-types:ldp_label_space_identifier_t
     |        +--ro transport-address-ipv4?   inet:ipv4-address
     +--rw peer-authentication
     |  +--rw peer-authentication-lists
     |  |  +--rw peer-authentication-list* [peer-address] {feature-list:HAVE_TCP_MD5SIG}?
     |  |     +--rw peer-address    -> ../config/peer-address
     |  |     +--rw config
     |  |     |  +--rw peer-address?    ipi-ldp-types:ldp_auth_neighbor_type_t
     |  |     |  +--rw password-type    ipi-ldp-types:ldp_md5_encrypt_password_t
     |  |     |  +--rw password         ipi-ldp-types:ldp_md5_password_t
     |  |     +--ro state
     |  |        +--ro peer-address?    ipi-ldp-types:ldp_auth_neighbor_type_t
     |  |        +--ro password-type    ipi-ldp-types:ldp_md5_encrypt_password_t
     |  |        +--ro password         ipi-ldp-types:ldp_md5_password_t
     |  +--rw authentication-exclusions
     |  |  +--rw config
     |  |  |  +--rw peer-address*   inet:ipv4-address
     |  |  +--ro state
     |  |     +--ro peer-address*   inet:ipv4-address
     |  +--rw authentication-groups
     |     +--rw authentication-group* [group-name]
     |        +--rw group-name    -> ../config/group-name
     |        +--rw config
     |        |  +--rw group-name?                       string
     |        |  +--rw prefix-list?                      string
     |        |  +--rw authentication-group-passwords
     |        |     +--rw authentication-group-password* [auth]
     |        |        +--rw auth      -> ../config/auth
     |        |        +--rw config
     |        |        |  +--rw auth?            ipi-ldp-types:ldp_auth_group_type_t
     |        |        |  +--rw password-type    ipi-ldp-types:ldp_md5_encrypt_password_t
     |        |        |  +--rw password         ipi-ldp-types:ldp_md5_password_t
     |        |        +--ro state
     |        |           +--ro auth?            ipi-ldp-types:ldp_auth_group_type_t
     |        |           +--ro password-type    ipi-ldp-types:ldp_md5_encrypt_password_t
     |        |           +--ro password         ipi-ldp-types:ldp_md5_password_t
     |        +--ro state
     |           +--ro group-name?    string
     |           +--ro prefix-list?   string
     +--rw label-mapping-access-lists
     |  +--rw label-mapping-access-list* [peer-access-control-list-name prefix-access-control-list-name]
     |     +--rw peer-access-control-list-name      -> ../config/peer-access-control-list-name
     |     +--rw prefix-access-control-list-name    -> ../config/prefix-access-control-list-name
     |     +--rw config
     |     |  +--rw prefix-access-control-list-name?   string
     |     |  +--rw peer-access-control-list-name?     string
     |     +--ro state
     |     |  +--ro prefix-access-control-list-name?   string
     |     |  +--ro peer-access-control-list-name?     string
     |     |  +--ro advertisement-type?                ipi-ldp-types:ldp_advertisement_type_t
     |     +--ro statistics
     |        +--ro state
     |           +--ro label-deny-mapping?   uint32
     |           +--ro label-deny-request?   uint32
     +--rw tcp-mss-lists
     |  +--rw tcp-mss-list* [peer-address]
     |     +--rw peer-address    -> ../config/peer-address
     |     +--rw config
     |     |  +--rw peer-address?    ipi-ldp-types:ldp_neighbor_type_t
     |     |  +--rw tcp-mss-range?   uint32
     |     +--ro state
     |        +--ro peer-address?    ipi-ldp-types:ldp_neighbor_type_t
     |        +--ro tcp-mss-range?   uint32
     +--rw received-label-control-lists
     |  +--rw received-label-control-list* [peer-control-list-name prefix-control-list-name]
     |     +--rw peer-control-list-name      -> ../config/peer-control-list-name
     |     +--rw prefix-control-list-name    -> ../config/prefix-control-list-name
     |     +--rw config
     |     |  +--rw peer-control-list-name?     string
     |     |  +--rw prefix-control-list-name?   string
     |     +--ro state
     |        +--ro peer-control-list-name?     string
     |        +--ro prefix-control-list-name?   string
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name                -> ../config/name
     |     +--rw config
     |     |  +--rw name?                          -> /ipi-interface:interfaces/interface/name
     |     |  +--rw enable-ldp-ipv4?               empty
     |     |  +--rw multicast-hello-disable?       empty
     |     |  +--rw maximum-pdu-length?            uint32
     |     |  +--rw ldp-igp-sync-delay-interval?   uint32
     |     +--ro state
     |     |  +--ro name?                          -> /ipi-interface:interfaces/interface/name
     |     |  +--ro enable-ldp-ipv4?               empty
     |     |  +--ro multicast-hello-disable?       empty
     |     |  +--ro maximum-pdu-length?            uint32
     |     |  +--ro ldp-igp-sync-delay-interval?   uint32
     |     |  +--ro primary-address-ipv4?          string
     |     |  +--ro primary-address-ipv6?          string
     |     |  +--ro counters
     |     |     +--ro packets
     |     |     |  +--ro received
     |     |     |  |  +--ro notification?       yang:counter32
     |     |     |  |  +--ro hello?              yang:counter32
     |     |     |  |  +--ro initialization?     yang:counter32
     |     |     |  |  +--ro keepalive?          yang:counter32
     |     |     |  |  +--ro address-message?    yang:counter32
     |     |     |  |  +--ro address-withdraw?   yang:counter32
     |     |     |  |  +--ro label-mapping?      yang:counter32
     |     |     |  |  +--ro label-request?      yang:counter32
     |     |     |  |  +--ro label-withdraw?     yang:counter32
     |     |     |  |  +--ro label-release?      yang:counter32
     |     |     |  |  +--ro request-abort?      yang:counter32
     |     |     |  +--ro sent
     |     |     |     +--ro notification?       yang:counter32
     |     |     |     +--ro hello?              yang:counter32
     |     |     |     +--ro initialization?     yang:counter32
     |     |     |     +--ro keepalive?          yang:counter32
     |     |     |     +--ro address-message?    yang:counter32
     |     |     |     +--ro address-withdraw?   yang:counter32
     |     |     |     +--ro label-mapping?      yang:counter32
     |     |     |     +--ro label-request?      yang:counter32
     |     |     |     +--ro label-withdraw?     yang:counter32
     |     |     |     +--ro label-release?      yang:counter32
     |     |     |     +--ro request-abort?      yang:counter32
     |     |     +--ro events
     |     |        +--ro ldp-shutdown-notification-received?          yang:counter32
     |     |        +--ro ldp-shutdown-notification-sent?              yang:counter32
     |     |        +--ro ldp-sessions-attempted?                      yang:counter32
     |     |        +--ro ldp-session-rejected-no-hello-errors?        yang:counter32
     |     |        +--ro ldp-session-rejected-advertisement-errors?   yang:counter32
     |     |        +--ro ldp-session-rejected-maximum-pdu-errors?     yang:counter32
     |     |        +--ro ldp-session-rejected-label-range-errors?     yang:counter32
     |     |        +--ro ldp-bad-ldp-identifier-errors?               yang:counter32
     |     |        +--ro ldp-bad-pdu-length-errors?                   yang:counter32
     |     |        +--ro ldp-bad-message-length-errors?               yang:counter32
     |     |        +--ro ldp-bad-tlv-length-errors?                   yang:counter32
     |     |        +--ro ldp-malformed-tlv-value-errors?              yang:counter32
     |     |        +--ro ldp-keepalive-timer-expired-errors?          yang:counter32
     |     +--rw hello-timers
     |     |  +--rw config
     |     |  |  +--rw hello-interval?   uint16
     |     |  |  +--rw hello-holdtime?   uint16
     |     |  +--ro state
     |     |     +--ro hello-interval?   uint16
     |     |     +--ro hello-holdtime?   uint16
     |     +--rw session-timers
     |     |  +--rw config
     |     |  |  +--rw keepalive-timeout?    uint16
     |     |  |  +--rw keepalive-interval?   uint16
     |     |  +--ro state
     |     |     +--ro keepalive-timeout?    uint16
     |     |     +--ro keepalive-interval?   uint16
     |     +--rw label-management
     |        +--rw config
     |        |  +--rw interface-advertisement-mode?   ipi-ldp-types:ldp_advertise_mode_t
     |        |  +--rw interface-retention-mode?       ipi-ldp-types:ldp_retention_mode_t
     |        +--ro state
     |           +--ro interface-advertisement-mode?   ipi-ldp-types:ldp_advertise_mode_t
     |           +--ro interface-retention-mode?       ipi-ldp-types:ldp_retention_mode_t
     |           +--ro label-merge-capability?         ipi-ldp-types:ldp_label_merge_capability_t
     |           +--ro ldp-identifier?                 string
     +--ro l2vpn
     |  +--ro vpls-list* [vpls-identifier] {feature-list:HAVE_VPLS}?
     |  |  +--ro vpls-identifier         -> ../state/vpls-identifier
     |  |  +--ro state
     |  |  |  +--ro vpls-identifier?   uint32
     |  |  |  +--ro mesh-vc-count?     uint32
     |  |  +--ro virtual-circuit-list* [neighbor-address]
     |  |     +--ro neighbor-address    -> ../state/neighbor-address
     |  |     +--ro state
     |  |        +--ro virtual-circuit-identifier?       uint32
     |  |        +--ro neighbor-address?                 inet:ipv4-address
     |  |        +--ro virtual-circuit-state?            ipi-ldp-types:ldp_vc_state_t
     |  |        +--ro local-pw-status-capability?       uint32
     |  |        +--ro remote-pw-status-capability?      uint32
     |  |        +--ro current-pw-status-tlv?            uint32
     |  |        +--ro local-pseudowire-status?          string
     |  |        +--ro remote-pseudowire-status?         string
     |  |        +--ro virtual-circuit-label-sent?       uint32
     |  |        +--ro virtual-circuit-label-received?   uint32
     |  +--ro state
     |  |  +--ro counters {feature-list:HAVE_VPLS}?
     |  |     +--ro total-vpls-instances?                 yang:counter32
     |  |     +--ro total-virtual-circuit-instances?      yang:counter32
     |  |     +--ro active-virtual-circuit-instances?     yang:counter32
     |  |     +--ro inactive-virtual-circuit-instances?   yang:counter32
     |  +--ro virtual-circuit-list* [virtual-circuit-identifier] {feature-list:HAVE_MPLS_VC}?
     |     +--ro virtual-circuit-identifier    -> ../state/virtual-circuit-identifier
     |     +--ro state
     |        +--ro virtual-circuit-identifier?       uint32
     |        +--ro neighbor-address?                 inet:ipv4-address
     |        +--ro virtual-circuit-state?            ipi-ldp-types:ldp_vc_state_t
     |        +--ro local-pw-status-capability?       uint32
     |        +--ro remote-pw-status-capability?      uint32
     |        +--ro current-pw-status-tlv?            uint32
     |        +--ro local-pseudowire-status?          string
     |        +--ro remote-pseudowire-status?         string
     |        +--ro virtual-circuit-label-sent?       uint32
     |        +--ro virtual-circuit-label-received?   uint32
     +--rw targeted-peers
     |  +--rw global-timers
     |  |  +--rw config
     |  |  |  +--rw targeted-global-hello-interval?   uint16
     |  |  |  +--rw targeted-global-hello-holdtime?   uint16
     |  |  +--ro state
     |  |     +--ro targeted-global-hello-interval?   uint16
     |  |     +--ro targeted-global-hello-holdtime?   uint16
     |  +--rw targeted-peer* [target-address]
     |     +--rw target-address    -> ../config/target-address
     |     +--rw config
     |     |  +--rw target-address?   ipi-ldp-types:ldp_ip_addr_t
     |     |  +--rw tunnel?           empty
     |     |  +--rw hello-interval?   uint16
     |     |  +--rw hello-holdtime?   uint16
     |     +--ro state
     |        +--ro target-address?   ipi-ldp-types:ldp_ip_addr_t
     |        +--ro tunnel?           empty
     |        +--ro hello-interval?   uint16
     |        +--ro hello-holdtime?   uint16
     |        +--ro counters
     |           +--ro packets
     |           |  +--ro received
     |           |  |  +--ro notification?       yang:counter32
     |           |  |  +--ro hello?              yang:counter32
     |           |  |  +--ro initialization?     yang:counter32
     |           |  |  +--ro keepalive?          yang:counter32
     |           |  |  +--ro address-message?    yang:counter32
     |           |  |  +--ro address-withdraw?   yang:counter32
     |           |  |  +--ro label-mapping?      yang:counter32
     |           |  |  +--ro label-request?      yang:counter32
     |           |  |  +--ro label-withdraw?     yang:counter32
     |           |  |  +--ro label-release?      yang:counter32
     |           |  |  +--ro request-abort?      yang:counter32
     |           |  +--ro sent
     |           |     +--ro notification?       yang:counter32
     |           |     +--ro hello?              yang:counter32
     |           |     +--ro initialization?     yang:counter32
     |           |     +--ro keepalive?          yang:counter32
     |           |     +--ro address-message?    yang:counter32
     |           |     +--ro address-withdraw?   yang:counter32
     |           |     +--ro label-mapping?      yang:counter32
     |           |     +--ro label-request?      yang:counter32
     |           |     +--ro label-withdraw?     yang:counter32
     |           |     +--ro label-release?      yang:counter32
     |           |     +--ro request-abort?      yang:counter32
     |           +--ro events
     |              +--ro ldp-shutdown-notification-received?          yang:counter32
     |              +--ro ldp-shutdown-notification-sent?              yang:counter32
     |              +--ro ldp-sessions-attempted?                      yang:counter32
     |              +--ro ldp-session-rejected-no-hello-errors?        yang:counter32
     |              +--ro ldp-session-rejected-advertisement-errors?   yang:counter32
     |              +--ro ldp-session-rejected-maximum-pdu-errors?     yang:counter32
     |              +--ro ldp-session-rejected-label-range-errors?     yang:counter32
     |              +--ro ldp-bad-ldp-identifier-errors?               yang:counter32
     |              +--ro ldp-bad-pdu-length-errors?                   yang:counter32
     |              +--ro ldp-bad-message-length-errors?               yang:counter32
     |              +--ro ldp-bad-tlv-length-errors?                   yang:counter32
     |              +--ro ldp-malformed-tlv-value-errors?              yang:counter32
     |              +--ro ldp-keepalive-timer-expired-errors?          yang:counter32
     +--ro peers
        +--ro peer* [peer-address]
           +--ro peer-address           -> ../state/peer-address
           +--ro adjacency-list* [adjacency-prefix]
           |  +--ro adjacency-prefix    -> ../state/adjacency-prefix
           |  +--ro state
           |     +--ro adjacency-prefix?   inet:ipv4-address
           |     +--ro is-targeted-peer?   boolean
           |     +--ro name?               -> /ipi-interface:interfaces/interface/name
           |     +--ro local-address?      inet:ipv4-address
           +--ro received-label-list* [fec-prefix]
           |  +--ro fec-prefix    -> ../state/fec-prefix
           |  +--ro state
           |     +--ro fec-prefix?   cml-data-types:cml_ipv4_addr_prefix_t
           |     +--ro label?        string
           +--ro sent-label-list* [fec-prefix]
           |  +--ro fec-prefix    -> ../state/fec-prefix
           |  +--ro state
           |     +--ro fec-prefix?   cml-data-types:cml_ipv4_addr_prefix_t
           |     +--ro label?        string
           +--ro state
              +--ro peer-address?                             inet:ipv4-address
              +--ro ldp-identifier?                           string
              +--ro label-space?                              uint16
              +--ro keepalive-timeout?                        uint32
              +--ro session-up-time?                          string
              +--ro session-state?                            ipi-ldp-types:ldp_session_state_t
              +--ro session-role?                             ipi-ldp-types:ldp_session_role_t
              +--ro advertisement-mode?                       ipi-ldp-types:ldp_advertise_mode_t
              +--ro retention-mode?                           ipi-ldp-types:ldp_retention_mode_t
              +--ro tcp-established?                          ipi-ldp-types:ldp_tcp_status_t
              +--ro ldp-interface-name?                       string
              +--ro discontinuity-time?                       uint32
              +--ro unknown-message-type-errors?              uint32
              +--ro unknown-tlv-type-errors?                  uint32
              +--ro initialization-session-threshold-limit?   uint32
              +--ro entity-path-vector-limit?                 uint32
              +--ro peer-path-vector-limit?                   uint32
              +--ro session-protection-status?                ipi-ldp-types:ldp_sess_prot_status_t {feature-list:HAVE_LDP_SESS_PROT}?
 
  rpcs:
    +---x clear-ldp-statistics {feature-list:HAVE_LDPD}?
    +---x clear-ldp-statistics-advertise-labels {feature-list:HAVE_LDPD}?
    +---x clear-ldp-statistics-advertise-labels-prefix {feature-list:HAVE_LDPD}?
    |  +---w input
    |     +---w prefix    string
    +---x clear-ldp-statistics-advertise-labels-prefix-peer {feature-list:HAVE_LDPD}?
    |  +---w input
    |     +---w prefix    string
    |     +---w peer      string
    +---x clear-ldp-session-all {feature-list:HAVE_LDPD}?
    +---x clear-ldp-session-ipv4 {feature-list:HAVE_LDPD}?
    |  +---w input
    |     +---w addr    inet:ipv4-address
    +---x clear-ldp-adjacency-all {feature-list:HAVE_LDPD}?
    +---x clear-ldp-adjacency-ipv4 {feature-list:HAVE_LDPD}?
    |  +---w input
    |     +---w addr    inet:ipv4-address
    +---x snmp-restart-ldp {feature-list:HAVE_SNMP}?
    +---x ldp-terminal-debug-on {feature-list:HAVE_LDPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-ldp-types:ldp_debug_t
    +---x ldp-terminal-debug-off {feature-list:HAVE_LDPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-ldp-types:ldp_debug_t
    +---x restart-ldp-graceful {feature-list:HAVE_RESTART}?
 
  notifications:
    +---n mpls-ldp-session-up
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro peer-address?                  inet:ipv4-address
    |  +--ro session-state?                 ipi-ldp-types:ldp_session_state_t
    |  +--ro discontinuity-time?            uint32
    |  +--ro unknown-message-type-errors?   uint32
    |  +--ro unknown-tlv-type-errors?       uint32
    +---n mpls-ldp-session-down
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro peer-address?                  inet:ipv4-address
    |  +--ro session-state?                 ipi-ldp-types:ldp_session_state_t
    |  +--ro discontinuity-time?            uint32
    |  +--ro unknown-message-type-errors?   uint32
    |  +--ro unknown-tlv-type-errors?       uint32
    +---n mpls-ldp-init-session-threshold-exceeded
    |  +--ro severity?                                 cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                               cml-data-types:cml_notif_class_t
    |  +--ro peer-address?                             inet:ipv4-address
    |  +--ro initialization-session-threshold-limit?   uint32
    +---n mpls-ldp-path-vector-limit-mismatch
       +--ro severity?                   cml-data-types:cml_notif_severity_t
       +--ro eventClass?                 cml-data-types:cml_notif_class_t
       +--ro peer-address?               inet:ipv4-address
       +--ro entity-path-vector-limit?   uint32
       +--ro peer-path-vector-limit?     uint32
 
 
 
module: ipi-lldpv2
  +--rw lldp
     +--rw global
     |  +--rw config
     |  |  +--rw enable?                  empty
     |  |  +--rw notification-interval?   uint16 {feature-list:HAVE_SNMP}?
     |  +--ro state
     |  |  +--ro enable?                        empty
     |  |  +--ro notification-interval?         uint16 {feature-list:HAVE_SNMP}?
     |  |  +--ro system-capabilities-enabled?   cml-data-types:cml_line_t
     |  |  +--ro host-name-information?         string
     |  |  +--ro counters
     |  |     +--ro remote-inserts?   yang:counter32
     |  |     +--ro remote-deletes?   yang:counter32
     |  |     +--ro remote-drops?     yang:counter32
     |  |     +--ro remote-ageouts?   yang:counter32
     |  +--rw global-tlv-control
     |  |  +--rw global-basic-management
     |  |  |  +--rw config
     |  |  |  |  +--rw port-description?      empty
     |  |  |  |  +--rw system-description?    empty
     |  |  |  |  +--rw system-name?           empty
     |  |  |  |  +--rw system-capabilities?   empty
     |  |  |  |  +--rw management-address?    empty
     |  |  |  +--ro state
     |  |  |     +--ro port-description?      empty
     |  |  |     +--ro system-description?    empty
     |  |  |     +--ro system-name?           empty
     |  |  |     +--ro system-capabilities?   empty
     |  |  |     +--ro management-address?    empty
     |  |  +--rw global-ieee-8021-org-specific
     |  |  |  +--rw config
     |  |  |  |  +--rw port-vlan-id?            empty
     |  |  |  |  +--rw port-protocol-vlan-id?   empty
     |  |  |  |  +--rw vlan-name?               empty
     |  |  |  |  +--rw protocol-identifier?     empty
     |  |  |  |  +--rw vid-digest?              empty
     |  |  |  |  +--rw management-vlan-id?      empty
     |  |  |  |  +--rw link-aggregation?        empty
     |  |  |  +--ro state
     |  |  |     +--ro port-vlan-id?            empty
     |  |  |     +--ro port-protocol-vlan-id?   empty
     |  |  |     +--ro vlan-name?               empty
     |  |  |     +--ro protocol-identifier?     empty
     |  |  |     +--ro vid-digest?              empty
     |  |  |     +--ro management-vlan-id?      empty
     |  |  |     +--ro link-aggregation?        empty
     |  |  +--rw global-ieee-8023-org-specific
     |  |     +--rw config
     |  |     |  +--rw mac-phy?        empty
     |  |     |  +--rw max-mtu-size?   empty
     |  |     +--ro state
     |  |        +--ro mac-phy?        empty
     |  |        +--ro max-mtu-size?   empty
     |  +--rw management-if
     |     +--rw config
     |     |  +--rw locally-assigned-chassis-id?   string
     |     +--ro state
     |        +--ro locally-assigned-chassis-id?   string
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-lldp-types:lldp_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-lldp-types:lldp_debug_t
     |     +--ro terminal-debug-status?   ipi-lldp-types:lldp_debug_t
     +--rw interfaces
        +--rw interface* [name]
           +--rw name         -> ../config/name
           +--rw config
           |  +--rw name?                 -> /ipi-interface:interfaces/interface/name
           |  +--rw disable-lldp-agent?   empty
           |  +--rw agent-circuit-id?     string
           |  +--rw med-device-type?      ipi-lldp-types:lldp_meddev_t
           |  +--rw local-name?           string
           +--ro state
           |  +--ro name?                 -> /ipi-interface:interfaces/interface/name
           |  +--ro disable-lldp-agent?   empty
           |  +--ro agent-circuit-id?     string
           |  +--ro med-device-type?      ipi-lldp-types:lldp_meddev_t
           |  +--ro local-name?           string
           +--ro neighbors
           |  +--ro agent* [agent-type]
           |     +--ro agent-type    ipi-lldp-types:lldp_agent_t
           |     +--ro neighbor* [mac-address]
           |        +--ro mac-address    -> ../state/mac-address
           |        +--ro state
           |           +--ro mac-address?                   cml-data-types:cml_mac_addr_t
           |           +--ro system-name?                   string
           |           +--ro chassis-component?             string
           |           +--ro chassis-id-type?               uint8
           |           +--ro port-component?                string
           |           +--ro port-id?                       string
           |           +--ro port-description?              string
           |           +--ro port-sub-type?                 uint16
           |           +--ro interface-alias?               string
           |           +--ro interface-agent-circuit-id?    string
           |           +--ro ttl?                           uint16
           |           +--ro interface-number?              uint32
           |           +--ro interface-number-sub-type?     string
           |           +--ro port-vlan-id?                  uint16
           |           +--ro pp-vlanid?                     uint16
           |           +--ro protocol?                      ipi-lldp-types:lldp_protoid_t
           |           +--ro vid-usage-digest?              uint32
           |           +--ro management-vlan?               uint16
           |           +--ro auto-negotiation-support?      uint8
           |           +--ro auto-negotiation-capability?   uint16
           |           +--ro operational-mau-type?          uint16
           |           +--ro link-aggregate-capability?     cml-data-types:cml_line_t
           |           +--ro link-aggregate-id?             uint32
           |           +--ro max-frame-size?                uint16
           |           +--ro system-description?            string
           |           +--ro system-capabilities?           cml-data-types:cml_line_t
           |           +--ro system-capabilities-enabled?   cml-data-types:cml_line_t
           |           +--ro vlan-list* [vlan-id]
           |           |  +--ro vlan-id      uint16
           |           |  +--ro vlan-name?   string
           |           +--ro management-list* [address]
           |              +--ro address                      string
           |              +--ro address-sub-type?            cml-data-types:cml_line_t
           |              +--ro interface-number-sub-type?   string
           |              +--ro interface-number?            uint32
           |              +--ro oid?                         string
           +--rw agents
              +--rw agent* [agent-type]
                 +--rw agent-type     -> ../config/agent-type
                 +--rw config
                 |  +--rw agent-type?     ipi-lldp-types:lldp_agent_t
                 |  +--rw enable-tx-rx?   ipi-lldp-types:lldp_enable_t
                 +--ro state
                 |  +--ro agent-type?     ipi-lldp-types:lldp_agent_t
                 |  +--ro enable-tx-rx?   ipi-lldp-types:lldp_enable_t
                 +--rw transmit
                 |  +--rw config
                 |  |  +--rw reinit-delay?                 uint32
                 |  |  +--rw message-tx-interval?          uint32
                 |  |  +--rw message-tx-hold-multiplier?   uint32
                 |  |  +--rw message-fast-tx?              uint32
                 |  |  +--rw tx-credit-max?                uint32
                 |  |  +--rw tx-fast-init?                 uint32
                 |  +--ro state
                 |     +--ro reinit-delay?                 uint32
                 |     +--ro message-tx-interval?          uint32
                 |     +--ro message-tx-hold-multiplier?   uint32
                 |     +--ro message-fast-tx?              uint32
                 |     +--ro tx-credit-max?                uint32
                 |     +--ro tx-fast-init?                 uint32
                 |     +--ro tx-ttl?                       uint16
                 |     +--ro counters
                 |        +--ro frames-out?   yang:counter32
                 +--rw receive
                 |  +--rw config
                 |  |  +--rw neighbor-limit?   uint32
                 |  |  +--rw neighbor-timer?   uint32
                 |  |  +--rw port-mac?         cml-data-types:cml_mac_addr_t
                 |  |  +--rw port-timer?       uint32
                 |  +--ro state
                 |     +--ro neighbor-limit?      uint32
                 |     +--ro neighbor-timer?      uint32
                 |     +--ro port-mac?            cml-data-types:cml_mac_addr_t
                 |     +--ro port-timer?          uint32
                 |     +--ro frames-aged-out?     yang:counter32
                 |     +--ro frames-discarded?    yang:counter32
                 |     +--ro frames-invalid?      yang:counter32
                 |     +--ro frames-valid?        yang:counter32
                 |     +--ro tlvs-discarded?      yang:counter32
                 |     +--ro tlvs-unrecognized?   yang:counter32
                 +--rw agent-tlv
                 |  +--rw config
                 |  |  +--rw port-address?   ipi-lldp-types:lldp_mgmt_addr_t
                 |  |  +--rw chassis-id?     ipi-lldp-types:lldp_chassis_t
                 |  |  +--rw port-id?        ipi-lldp-types:lldp_port_t
                 |  +--ro state
                 |     +--ro port-address?   ipi-lldp-types:lldp_mgmt_addr_t
                 |     +--ro chassis-id?     ipi-lldp-types:lldp_chassis_t
                 |     +--ro port-id?        ipi-lldp-types:lldp_port_t
                 +--rw tlv-control
                    +--rw basic-management
                    |  +--rw config
                    |  |  +--rw port-description?      ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw system-description?    ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw system-name?           ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw system-capabilities?   ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw management-address?    ipi-lldp-types:lldp_tlv_select_type
                    |  +--ro state
                    |     +--ro port-description?      ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro system-description?    ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro system-name?           ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro system-capabilities?   ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro management-address?    ipi-lldp-types:lldp_tlv_select_type
                    +--rw ieee-8021-org-specific
                    |  +--rw config
                    |  |  +--rw port-vlan-id?            ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw port-protocol-vlan-id?   ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw vlan-name?               ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw protocol-identifier?     ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw vid-digest?              ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw management-vlan-id?      ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw link-aggregation?        ipi-lldp-types:lldp_tlv_select_type
                    |  +--ro state
                    |     +--ro port-vlan-id?            ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro port-protocol-vlan-id?   ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro vlan-name?               ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro protocol-identifier?     ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro vid-digest?              ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro management-vlan-id?      ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro link-aggregation?        ipi-lldp-types:lldp_tlv_select_type
                    +--rw ieee-8023-org-specific
                    |  +--rw config
                    |  |  +--rw mac-phy?        ipi-lldp-types:lldp_tlv_select_type
                    |  |  +--rw max-mtu-size?   ipi-lldp-types:lldp_tlv_select_type
                    |  +--ro state
                    |     +--ro mac-phy?        ipi-lldp-types:lldp_tlv_select_type
                    |     +--ro max-mtu-size?   ipi-lldp-types:lldp_tlv_select_type
                    +--rw tlv-media-capabilities
                       +--rw config
                       |  +--rw network-policy?       ipi-lldp-types:lldp_tlv_select_type
                       |  +--rw location?             ipi-lldp-types:lldp_tlv_select_type
                       |  +--rw inventory?            ipi-lldp-types:lldp_tlv_select_type
                       |  +--rw media-capabilities?   ipi-lldp-types:lldp_tlv_select_type
                       +--ro state
                          +--ro network-policy?       ipi-lldp-types:lldp_tlv_select_type
                          +--ro location?             ipi-lldp-types:lldp_tlv_select_type
                          +--ro inventory?            ipi-lldp-types:lldp_tlv_select_type
                          +--ro media-capabilities?   ipi-lldp-types:lldp_tlv_select_type
 
  rpcs:
    +---x lldp-terminal-debug-on {feature-list:HAVE_ONMD,feature-list:HAVE_LLDPV2}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-lldp-types:lldp_debug_t
    +---x lldp-terminal-debug-off {feature-list:HAVE_ONMD,feature-list:HAVE_LLDPV2}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-lldp-types:lldp_debug_t
    +---x clear-lldp-counter {feature-list:HAVE_ONMD,feature-list:HAVE_LLDPV2}?
    |  +---w input
    |     +---w interface-name?   string
    +---x lldp-snmp-restart {feature-list:HAVE_SNMP}?
 
  notifications:
    +---n lldp-remote-inserts-notification
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro remote-inserts?   yang:counter32
    +---n lldp-remote-deletes-notification
       +--ro severity?         cml-data-types:cml_notif_severity_t
       +--ro eventClass?       cml-data-types:cml_notif_class_t
       +--ro remote-deletes?   yang:counter32
 
 
 
 
 
module: ipi-logging
  +--rw logging
     +--rw logging-modules
     |  +--rw module-logging* [module-name]
     |     +--rw module-name    -> ../config/module-name
     |     +--rw config
     |     |  +--rw module-name?      ipi-logging-types:module_names_t
     |     |  +--rw severity-level    ipi-logging-types:log_severity_t
     |     +--ro state
     |        +--ro module-name?      ipi-logging-types:module_names_t
     |        +--ro severity-level    ipi-logging-types:log_severity_t
     +--rw monitor-logging
     |  +--rw config!
     |  |  +--rw enable-logging    cml-data-types:cml_enable_disable_t
     |  |  +--rw severity-level?   ipi-logging-types:log_severity_t
     |  +--ro state
     |     +--ro enable-logging    cml-data-types:cml_enable_disable_t
     |     +--ro severity-level?   ipi-logging-types:log_severity_t
     +--rw console-logging
     |  +--rw config!
     |  |  +--rw enable-logging    cml-data-types:cml_enable_disable_t
     |  |  +--rw severity-level?   ipi-logging-types:log_severity_t
     |  +--ro state
     |     +--ro enable-logging    cml-data-types:cml_enable_disable_t
     |     +--ro severity-level?   ipi-logging-types:log_severity_t
     +--rw logfile
     |  +--rw config!
     |  |  +--rw file-name         string
     |  |  +--rw severity-level    ipi-logging-types:log_severity_t
     |  |  +--rw max-file-size?    uint32
     |  +--ro state
     |     +--ro file-name         string
     |     +--ro severity-level    ipi-logging-types:log_severity_t
     |     +--ro max-file-size?    uint32
     +--rw debug-logfile
     |  +--rw config!
     |  |  +--rw file-name        string
     |  |  +--rw max-file-size    uint32
     |  +--ro state
     |     +--ro file-name        string
     |     +--ro max-file-size    uint32
     +--rw syslog {feature-list:HAVE_SYSLOG}?
     |  +--rw config
     |  |  +--rw timestamp-granularity?   ipi-logging-types:timestamp_units_t
     |  |  +--rw cli-timestamp?           empty
     |  +--ro state
     |     +--ro timestamp-granularity?   ipi-logging-types:timestamp_units_t
     |     +--ro cli-timestamp?           empty
     +--rw remote-logging
     |  +--rw config
     |  |  +--rw enable-rsyslog?   empty
     |  +--ro state
     |  |  +--ro enable-rsyslog?   empty
     |  +--rw remote-servers {feature-list:HAVE_VRF}?
     |  |  +--rw remote-server* [vrf]
     |  |     +--rw vrf        -> ../config/vrf
     |  |     +--rw config
     |  |     |  +--rw vrf?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |  |     +--ro state
     |  |     |  +--ro vrf?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |  |     +--rw servers
     |  |        +--rw server* [address]
     |  |           +--rw address    -> ../config/address
     |  |           +--rw config
     |  |           |  +--rw address?    cml-data-types:cml_hostname_t
     |  |           |  +--rw severity    ipi-logging-types:log_severity_t
     |  |           |  +--rw port?       uint16
     |  |           +--ro state
     |  |              +--ro address?    cml-data-types:cml_hostname_t
     |  |              +--ro severity    ipi-logging-types:log_severity_t
     |  |              +--ro port?       uint16
     |  +--rw default-instance
     |     +--rw config
     |     |  +--rw disable-default-instance?   empty
     |     +--ro state
     |        +--ro disable-default-instance?   empty
     +--rw global
     |  +--rw config
     |  |  +--rw remote-server-facility?     ipi-logging-types:log_facility_t
     |  |  +--rw remote-authpriv-facility?   empty
     |  +--ro state
     |     +--ro remote-server-facility?     ipi-logging-types:log_facility_t
     |     +--ro remote-authpriv-facility?   empty
     +--rw cli-logging
     |  +--rw config
     |  |  +--rw enable-logging?   empty
     |  +--ro state
     |  |  +--ro enable-logging?   empty
     |  +--rw max-session-limit
     |     +--rw config
     |     |  +--rw max-session-limit?   uint8
     |     +--ro state
     |        +--ro max-session-limit?   uint8
     +--rw fault-management
        +--rw config
        |  +--rw enable-fault-management?   empty
        +--ro state
           +--ro enable-fault-management?   empty
 
  rpcs:
    +---x logging-fms-flush-db {feature-list:HAVE_FMS}?
    +---x logging-fms-shelve {feature-list:HAVE_FMS}?
    |  +---w input
    |     +---w alarm-type    string
    +---x logging-fms-close {feature-list:HAVE_FMS}?
    |  +---w input
    |     +---w active-alarm-id    string
    +---x terminal-debug-all-off
    +---x logging-clear-debug-logfile
    +---x logging-clear-logging-logfile
    +---x remove-file
       +---w input
          +---w file_type    ipi-logging-types:remove_files_t
          +---w filename     ipi-logging-types:file_type_t
 
 
 
 
module: ipi-management-server
  +--rw netconf-server {feature-list:HAVE_NETCONF}?
  |  +--rw callhome {feature-list:HAVE_NETCONF}?
  |  |  +--rw config!
  |  |  |  +--rw feature-enabled    empty
  |  |  |  +--rw management-port?   -> /ipi-interface:interfaces/interface/name
  |  |  +--ro state
  |  |  |  +--ro feature-enabled    empty
  |  |  |  +--ro management-port?   -> /ipi-interface:interfaces/interface/name
  |  |  +--rw netconf-clients
  |  |  |  +--rw netconf-client* [name]
  |  |  |     +--rw name      -> ../config/name
  |  |  |     +--rw config
  |  |  |     |  +--rw name?      string
  |  |  |     |  +--rw address    string
  |  |  |     |  +--rw port?      inet:port-number
  |  |  |     +--ro state
  |  |  |        +--ro name?      string
  |  |  |        +--ro address    string
  |  |  |        +--ro port?      inet:port-number
  |  |  +--rw reconnect
  |  |     +--rw config!
  |  |     |  +--rw enable                empty
  |  |     |  +--rw retry-max-attempts?   uint8
  |  |     |  +--rw retry-interval?       uint32
  |  |     +--ro state
  |  |        +--ro enable                empty
  |  |        +--ro retry-max-attempts?   uint8
  |  |        +--ro retry-interval?       uint32
  |  +--rw netconf-translation {feature-list:HAVE_NETCONF_OC_TRANSLATION}?
  |  |  +--rw config
  |  |  |  +--rw translation-mode?   ipi-management-server-types:management_server_translation_type_t
  |  |  +--ro state
  |  |     +--ro translation-mode?   ipi-management-server-types:management_server_translation_type_t
  |  +--rw debug
  |  |  +--rw config
  |  |  |  +--rw enable?   empty
  |  |  +--ro state
  |  |     +--ro enable?   empty
  |  +--rw vrfs {feature-list:HAVE_VRF}?
  |  |  +--rw vrf* [vrf-name]
  |  |     +--rw vrf-name              -> ../config/vrf-name
  |  |     +--rw config
  |  |     |  +--rw vrf-name?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
  |  |     +--ro state
  |  |     |  +--ro vrf-name?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
  |  |     +--rw netconf-ssh-config
  |  |     |  +--rw config!
  |  |     |  |  +--rw feature-netconf-ssh    boolean {feature-list:HAVE_NETCONF}?
  |  |     |  |  +--rw ssh-port?              uint32 {feature-list:HAVE_NETCONF}?
  |  |     |  +--ro state
  |  |     |     +--ro feature-netconf-ssh    boolean {feature-list:HAVE_NETCONF}?
  |  |     |     +--ro ssh-port?              uint32 {feature-list:HAVE_NETCONF}?
  |  |     +--rw netconf-tls-config
  |  |        +--rw config!
  |  |        |  +--rw feature-netconf-tls    boolean {feature-list:HAVE_NETCONF}?
  |  |        |  +--rw tls-port?              uint32 {feature-list:HAVE_NETCONF}?
  |  |        +--ro state
  |  |           +--ro feature-netconf-tls    boolean {feature-list:HAVE_NETCONF}?
  |  |           +--ro tls-port?              uint32 {feature-list:HAVE_NETCONF}?
  |  +--rw notification-cache {feature-list:HAVE_NETCONF}?
  |     +--rw config!
  |     |  +--rw feature-enabled            empty
  |     |  +--rw max-cache-notifications?   uint16
  |     |  +--rw cache-period?              uint32
  |     +--ro state
  |        +--ro feature-enabled            empty
  |        +--ro max-cache-notifications?   uint16
  |        +--ro cache-period?              uint32
  +--rw management-server
     +--rw module-notifications
        +--rw module-notification* [module-name]
           +--rw module-name    -> ../config/module-name
           +--rw config
           |  +--rw module-name?   ipi-management-server-notification-types:notif_module_names_t
           |  +--rw enable         cml-data-types:cml_enable_disable_t
           |  +--rw severity?      cml-data-types:cml_notif_severity_t
           +--ro state
              +--ro module-name?   ipi-management-server-notification-types:notif_module_names_t
              +--ro enable         cml-data-types:cml_enable_disable_t
              +--ro severity?      cml-data-types:cml_notif_severity_t
 
  notifications:
    +---n suppress-bulk-notification
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro message?      string
 
 
module: ipi-mcec
  +--rw mcec
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-mcec-types:mcec_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-mcec-types:mcec_debug_t
     |     +--ro terminal-debug-status?   ipi-mcec-types:mcec_debug_t
     +--rw domain
     |  +--rw config
     |  |  +--rw mcec-strict-active-standby?   empty
     |  |  +--rw system-number?                uint8
     |  |  +--rw address?                      ipi-mcec-types:mcec_domain_addr_t
     |  |  +--rw priority?                     uint16
     |  |  +--rw hello-timeout?                ipi-mcec-types:mcec_hello_t
     |  +--ro state
     |     +--ro mcec-strict-active-standby?   empty
     |     +--ro system-number?                uint8
     |     +--ro address?                      ipi-mcec-types:mcec_domain_addr_t
     |     +--ro priority?                     uint16
     |     +--ro hello-timeout?                ipi-mcec-types:mcec_hello_t
     |     +--ro domain-sync?                  ipi-mcec-types:mcec_domain_sync_status_t
     |     +--ro domain-adjacency?             ipi-mcec-types:mcec_domain_adjacency_state_t
     |     +--ro mcec-invalid-pdu-rx?          uint32
     +--ro mcec-instance* [mlag-id]
     |  +--ro mlag-id     -> ../state/mlag-id
     |  +--ro state
     |  |  +--ro mlag-id?                               uint16
     |  |  +--ro interface?                             string
     |  |  +--ro administrative-aggregation-key?        uint16
     |  |  +--ro operational-aggregation-key?           uint16
     |  |  +--ro physical-properties-digest?            string
     |  |  +--ro operational-partner-aggregation-key?   uint16
     |  |  +--ro partner-system?                        string
     |  |  +--ro partner-system-priority?               uint16
     |  |  +--ro member-interface-bandwidth?            string
     |  |  +--ro member-interface-state?                ipi-mcec-types:mcec_if_state_t
     |  |  +--ro mlag-sync?                             ipi-mcec-types:mcec_sync_state_t
     |  |  +--ro flood-enabled?                         ipi-mcec-types:mcec_flood_state_t
     |  |  +--ro mlag-port-state?                       ipi-mcec-types:mcec_if_state_t
     |  |  +--ro mlag-interface-state?                  ipi-mcec-types:mcec_if_state_t
     |  |  +--ro aggregation-mapped?                    boolean
     |  |  +--ro mlag-bandwidth?                        string
     |  |  +--ro info-receive-state?                    ipi-mcec-types:mcec_info_receive_state_t
     |  |  +--ro info-periodic-tx-state?                ipi-mcec-types:mcec_info_periodic_tx_state_t
     |  |  +--ro valid-info-pdu-rx?                     uint32
     |  |  +--ro valid-info-pdu-tx?                     uint32
     |  +--ro neighbor
     |     +--ro state
     |        +--ro administrative-aggregation-key?        uint16
     |        +--ro physical-properties-digest?            string
     |        +--ro operational-partner-aggregation-key?   uint16
     |        +--ro partner-system?                        string
     |        +--ro partner-system-priority?               uint16
     |        +--ro member-interface-bandwidth?            string
     |        +--ro member-interface-state?                ipi-mcec-types:mcec_if_state_t
     |        +--ro mlag-sync?                             ipi-mcec-types:mcec_sync_state_t
     +--rw intra-domain
     |  +--rw peer-link
     |  |  +--rw config
     |  |  |  +--rw interface?   -> /ipi-interface:interfaces/interface/name
     |  |  +--ro state
     |  |     +--ro interface?   -> /ipi-interface:interfaces/interface/name
     |  +--rw peer-address
     |  |  +--rw config!
     |  |  |  +--rw peer-address     inet:ipv4-address
     |  |  |  +--rw local-address    inet:ipv4-address
     |  |  |  +--rw vrf              -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |  |  +--ro state
     |  |     +--ro peer-address     inet:ipv4-address
     |  |     +--ro local-address    inet:ipv4-address
     |  |     +--ro vrf              -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |  +--ro neighbor-info
     |  |  +--ro state
     |  |     +--ro domain-address?         ipi-mcec-types:mcec_domain_addr_t
     |  |     +--ro domain-priority?        uint32
     |  |     +--ro domain-system-number?   uint16
     |  |     +--ro domain-sync?            ipi-mcec-types:mcec_domain_sync_status_t
     |  |     +--ro hello-timeout?          uint16
     |  +--ro intra-domain-peer-info
     |     +--ro state
     |        +--ro mcec-hello-periodic-tx-state?   ipi-mcec-types:mcec_hello_periodic_tx_state_t
     |        +--ro mcec-valid-hello-pdu-rx?        uint32
     |        +--ro mcec-valid-hello-pdu-tx?        uint32
     |        +--ro mcec-valid-info-pdu-rx?         uint32
     |        +--ro mcec-valid-info-pdu-tx?         uint32
     |        +--ro mcec-valid-mac-sync-pdu-rx?     uint32
     |        +--ro mcec-valid-mac-sync-pdu-tx?     uint32
     +--ro mac-sync
     |  +--ro local-mac-table* [mac-address vlan-id]
     |  |  +--ro mac-address    -> ../state/mac-address
     |  |  +--ro vlan-id        -> ../state/vlan-id
     |  |  +--ro state
     |  |     +--ro mac-address?        string
     |  |     +--ro vlan-id?            uint16
     |  |     +--ro output-interface?   string
     |  +--ro remote-mac-table* [mac-address vlan-id]
     |     +--ro mac-address    -> ../state/mac-address
     |     +--ro vlan-id        -> ../state/vlan-id
     |     +--ro state
     |        +--ro mac-address?        string
     |        +--ro vlan-id?            uint16
     |        +--ro output-interface?   string
     +--ro stp-sync
     |  +--ro state
     |  |  +--ro bridge-priority?          uint16
     |  |  +--ro path-cost-method?         uint8
     |  |  +--ro domain-digest?            string
     |  |  +--ro neighbor-domain-digest?   string
     |  +--ro mlag-interface-sync-entry* [mlag-id]
     |     +--ro mlag-id    -> ../state/mlag-id
     |     +--ro state
     |        +--ro mlag-id?                     uint16
     |        +--ro port-priority?               uint16
     |        +--ro path-cost?                   uint32
     |        +--ro interface-digest?            string
     |        +--ro neighbor-interface-digest?   string
     +--rw mlag-interfaces
        +--rw mlag-interface* [name]
           +--rw name               -> ../config/name
           +--rw config
           |  +--rw name?             -> /ipi-interface:interfaces/interface/name
           |  +--rw interface-mode?   ipi-mcec-types:mcec_mode_type_t
           +--ro state
           |  +--ro name?             -> /ipi-interface:interfaces/interface/name
           |  +--ro interface-mode?   ipi-mcec-types:mcec_mode_type_t
           +--rw switchover-type
              +--rw config
              |  +--rw revertive-timer?        uint8
              |  +--rw enable-non-revertive?   empty
              +--ro state
                 +--ro revertive-timer?        uint8
                 +--ro enable-non-revertive?   empty
 
  rpcs:
    +---x mcec-terminal-debug-on {feature-list:HAVE_LAGD,feature-list:HAVE_MCEC}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-mcec-types:mcec_debug_t
    +---x mcec-terminal-debug-off {feature-list:HAVE_LAGD,feature-list:HAVE_MCEC}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-mcec-types:mcec_debug_t
    +---x clear-mcec-statistics {feature-list:HAVE_LAGD,feature-list:HAVE_MCEC}?
 
 
module: ipi-mlag
  +--ro mlag
     +--ro mlag-interface* [mlag-id]
     |  +--ro mlag-id    -> ../state/mlag-id
     |  +--ro state
     |     +--ro mlag-id?           uint16
     |     +--ro interface-flags?   ipi-mlag-types:mlag_interface_flags_t
     |     +--ro bandwidth?         string
     +--ro intra-domain-port
     |  +--ro state
     |     +--ro interface-name?    string
     |     +--ro interface-index?   uint32
     |     +--ro interface-type?    ipi-mlag-types:mlag_idp_interface_type_t
     |     +--ro bridge-name?       string
     +--ro mstp-sync-info
        +--ro state
        |  +--ro bridge-priority?     uint16
        |  +--ro path-cost-method?    uint8
        |  +--ro num-of-interfaces?   uint16
        |  +--ro domain-digest*       string
        +--ro interface-sync-info* [interface-mlag-id]
           +--ro interface-mlag-id    -> ../state/interface-mlag-id
           +--ro state
              +--ro interface-mlag-id?    uint16
              +--ro interface-priority?   uint16
              +--ro path-cost?            uint32
              +--ro interface-digest*     string
 
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw mlag-aggregation!
       +--rw config!
       |  +--rw mlag-id    uint16
       +--ro state
          +--ro mlag-id    uint16
 
 
module: ipi-mld-snooping
  +--rw mld-snooping
     +--rw global
     |  +--rw config
     |  |  +--rw disable-mld-snooping?         empty
     |  |  +--rw disable-report-suppression?   empty
     |  +--ro state
     |     +--ro disable-mld-snooping?         empty
     |     +--ro disable-report-suppression?   empty
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-mld-snooping-types:mld_snoop_debug_options_t
     |  +--ro state
     |     +--ro options?                 ipi-mld-snooping-types:mld_snoop_debug_options_t
     |     +--ro terminal-debug-status?   ipi-mld-snooping-types:mld_snoop_debug_options_t
     +--rw interfaces
        +--rw interface* [name]
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?                     -> /ipi-interface:interfaces/interface/name
           |  +--rw mld-snooping?             cml-data-types:cml_enable_disable_t
           |  +--rw enable-fast-leave?        empty
           |  +--rw report-suppression?       cml-data-types:cml_enable_disable_t
           |  +--rw mrouter-interface-name*   -> /ipi-interface:interfaces/interface/name
           |  +--rw enable-querier?           empty
           +--ro state
              +--ro name?                     -> /ipi-interface:interfaces/interface/name
              +--ro mld-snooping?             cml-data-types:cml_enable_disable_t
              +--ro enable-fast-leave?        empty
              +--ro report-suppression?       cml-data-types:cml_enable_disable_t
              +--ro mrouter-interface-name*   -> /ipi-interface:interfaces/interface/name
              +--ro enable-querier?           empty
 
  rpcs:
    +---x mld-snooping-terminal-debug-on {feature-list:HAVE_MLD_SNOOP}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-mld-snooping-types:mld_snoop_debug_options_t
    +---x mld-snooping-terminal-debug-off {feature-list:HAVE_MLD_SNOOP}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-mld-snooping-types:mld_snoop_debug_options_t
    +---x mld-snooping-clear-group-on-interface {feature-list:HAVE_MLD_SNOOP}?
    |  +---w input
    |     +---w group-address     string
    |     +---w interface-name    string
    +---x mld-snooping-clear-all-groups-on-interface {feature-list:HAVE_MLD_SNOOP}?
    |  +---w input
    |     +---w interface-name    string
    +---x mld-snooping-clear-group {feature-list:HAVE_MLD_SNOOP}?
    |  +---w input
    |     +---w group-address    string
    +---x mld-snooping-clear-all-groups {feature-list:HAVE_MLD_SNOOP}?
 
 
module: ipi-mpls-bfd
 
  augment /ipi-bfd:bfd:
    +--rw mpls-lsp
       +--rw session-groups
          +--rw session-group* [lsp-type fec-address]
             +--rw lsp-type              -> ../config/lsp-type
             +--rw fec-address           -> ../config/fec-address
             +--rw config
             |  +--rw lsp-type?      ipi-bfd-types:mpls_bfd_lsp_type_t
             |  +--rw fec-address?   cml-data-types:cml_ipv4_addr_prefix_t
             +--ro state
             |  +--ro lsp-type?      ipi-bfd-types:mpls_bfd_lsp_type_t
             |  +--ro fec-address?   cml-data-types:cml_ipv4_addr_prefix_t
             +--rw session-attributes
                +--rw config
                |  +--rw lsp-ping-interval?   uint16
                |  +--rw admin-down?          empty
                +--ro state
                |  +--ro lsp-ping-interval?   uint16
                |  +--ro admin-down?          empty
                +--rw intervals
                   +--rw interval* [minimum-tx minimum-rx detection-multiplier]
                      +--rw minimum-tx              -> ../config/minimum-tx
                      +--rw minimum-rx              -> ../config/minimum-rx
                      +--rw detection-multiplier    -> ../config/detection-multiplier
                      +--rw config
                      |  +--rw minimum-tx?             uint32
                      |  +--rw minimum-rx?             uint32
                      |  +--rw detection-multiplier?   uint8
                      +--ro state
                         +--ro minimum-tx?             uint32
                         +--ro minimum-rx?             uint32
                         +--ro detection-multiplier?   uint8
  augment /ipi-bfd:bfd:
    +--rw mpls-all-lsps
       +--rw mpls-all-lsp* [lsp-type]
          +--rw lsp-type              -> ../config/lsp-type
          +--rw config
          |  +--rw lsp-type?   ipi-bfd-types:mpls_bfd_all_lsp_type_t
          +--ro state
          |  +--ro lsp-type?   ipi-bfd-types:mpls_bfd_all_lsp_type_t
          +--rw session-attributes
             +--rw config
             |  +--rw lsp-ping-interval?   uint16
             |  +--rw admin-down?          empty
             +--ro state
             |  +--ro lsp-ping-interval?   uint16
             |  +--ro admin-down?          empty
             +--rw intervals
                +--rw interval* [minimum-tx minimum-rx detection-multiplier]
                   +--rw minimum-tx              -> ../config/minimum-tx
                   +--rw minimum-rx              -> ../config/minimum-rx
                   +--rw detection-multiplier    -> ../config/detection-multiplier
                   +--rw config
                   |  +--rw minimum-tx?             uint32
                   |  +--rw minimum-rx?             uint32
                   |  +--rw detection-multiplier?   uint8
                   +--ro state
                      +--ro minimum-tx?             uint32
                      +--ro minimum-rx?             uint32
                      +--ro detection-multiplier?   uint8
  augment /ipi-bfd:bfd:
    +--rw mpls-tunnels
       +--rw mpls-tunnel* [lsp-type tunnel-name]
          +--rw lsp-type              -> ../config/lsp-type
          +--rw tunnel-name           -> ../config/tunnel-name
          +--rw config
          |  +--rw lsp-type?      ipi-bfd-types:mpls_bfd_te_type_t
          |  +--rw tunnel-name?   string
          +--ro state
          |  +--ro lsp-type?      ipi-bfd-types:mpls_bfd_te_type_t
          |  +--ro tunnel-name?   string
          +--rw session-attributes
             +--rw config
             |  +--rw lsp-ping-interval?   uint16
             |  +--rw admin-down?          empty
             +--ro state
             |  +--ro lsp-ping-interval?   uint16
             |  +--ro admin-down?          empty
             +--rw intervals
                +--rw interval* [minimum-tx minimum-rx detection-multiplier]
                   +--rw minimum-tx              -> ../config/minimum-tx
                   +--rw minimum-rx              -> ../config/minimum-rx
                   +--rw detection-multiplier    -> ../config/detection-multiplier
                   +--rw config
                   |  +--rw minimum-tx?             uint32
                   |  +--rw minimum-rx?             uint32
                   |  +--rw detection-multiplier?   uint8
                   +--ro state
                      +--ro minimum-tx?             uint32
                      +--ro minimum-rx?             uint32
                      +--ro detection-multiplier?   uint8
 
module: ipi-mpls-rib
 
  augment /ipi-mpls:mpls:
    +--rw rib
       +--ro global-ftn-table
       |  +--ro ipv4-ftn-entry* [fec-prefix owner lsp-type tunnel-id] {feature-list:HAVE_VRF}?
       |  |  +--ro fec-prefix     -> ../state/fec-prefix
       |  |  +--ro owner          -> ../state/owner
       |  |  +--ro lsp-type       -> ../state/lsp-type
       |  |  +--ro tunnel-id      -> ../state/tunnel-id
       |  |  +--ro nhlfe-entry* [out-interface out-label administrative-status xc-index]
       |  |  |  +--ro out-interface            -> ../state/out-interface
       |  |  |  +--ro out-label                -> ../state/out-label
       |  |  |  +--ro administrative-status    -> ../state/administrative-status
       |  |  |  +--ro xc-index                 -> ../state/xc-index
       |  |  |  +--ro state
       |  |  |     +--ro out-interface?           -> /ipi-interface:interfaces/interface/name
       |  |  |     +--ro out-label?               uint32
       |  |  |     +--ro nexthop-address?         inet:ipv4-address
       |  |  |     +--ro nhlfe-type?              ipi-mpls-types:mpls_rib_nhlfe_type_t
       |  |  |     +--ro xc-index?                uint32
       |  |  |     +--ro administrative-status?   ipi-mpls-types:mpls_rib_entry_admin_status_t
       |  |  |     +--ro oper-status?             ipi-mpls-types:mpls_rib_entry_oper_status_t
       |  |  |     +--ro nhlfe-owner?             ipi-mpls-types:mpls_rib_entry_owner_t
       |  |  |     +--ro nhlfe-index?             uint32
       |  |  |     +--ro is-stale?                boolean
       |  |  |     +--ro label-op-code?           ipi-mpls-types:mpls_rib_label_op_code_t
       |  |  |     +--ro in-interface?            string
       |  |  |     +--ro in-label?                uint32
       |  |  +--ro state
       |  |     +--ro fec-prefix?             cml-data-types:cml_ipv4_addr_prefix_t
       |  |     +--ro owner?                  ipi-mpls-types:mpls_rib_entry_owner_t
       |  |     +--ro lsp-type?               ipi-mpls-types:mpls_rib_lsp_type_t
       |  |     +--ro unique-nhlfe-ix?        uint32
       |  |     +--ro ftn-index?              uint32
       |  |     +--ro is-primary?             boolean
       |  |     +--ro route-distance?         uint8
       |  |     +--ro redirect-action-type?   ipi-mpls-types:mpls_rib_action_type_t
       |  |     +--ro qos-exp-bits?           uint8
       |  |     +--ro is-entropy-label?       boolean
       |  |     +--ro in-dscp-class-name?     string
       |  |     +--ro tunnel-id?              uint32
       |  |     +--ro protected-lsp-id?       uint32
       |  |     +--ro qos-resource-id?        uint32
       |  |     +--ro color?                  uint32 {feature-list:HAVE_SERVICE_MAPPING}?
       |  |     +--ro tunnel-policy-name?     string {feature-list:HAVE_SERVICE_MAPPING}?
       |  |     +--ro rsvp-multipath-name?    string {feature-list:HAVE_RSVP_MULTIPATH}?
       |  |     +--ro row-status?             string
       |  |     +--ro state?                  string
       |  |     +--ro create-time?            cml-data-types:cml_line_t
       |  |     +--ro up-time?                cml-data-types:cml_line_t
       |  |     +--ro last-update?            cml-data-types:cml_line_t
       |  |     +--ro description?            string
       |  +--ro ipv6-ftn-entry* [fec-prefix6 owner lsp-type tunnel-id] {feature-list:HAVE_IPV6}?
       |     +--ro fec-prefix6    -> ../state/fec-prefix6
       |     +--ro owner          -> ../state/owner
       |     +--ro lsp-type       -> ../state/lsp-type
       |     +--ro tunnel-id      -> ../state/tunnel-id
       |     +--ro nhlfe-entry* [out-interface out-label administrative-status]
       |     |  +--ro out-interface            -> ../state/out-interface
       |     |  +--ro out-label                -> ../state/out-label
       |     |  +--ro administrative-status    -> ../state/administrative-status
       |     |  +--ro state
       |     |     +--ro out-interface?           -> /ipi-interface:interfaces/interface/name
       |     |     +--ro out-label?               uint32
       |     |     +--ro nexthop-address?         inet:ip-address
       |     |     +--ro nhlfe-type?              ipi-mpls-types:mpls_rib_nhlfe_type_t
       |     |     +--ro administrative-status?   ipi-mpls-types:mpls_rib_entry_admin_status_t
       |     |     +--ro oper-status?             ipi-mpls-types:mpls_rib_entry_oper_status_t
       |     |     +--ro nhlfe-owner?             ipi-mpls-types:mpls_rib_entry_owner_t
       |     |     +--ro nhlfe-index?             uint32
       |     |     +--ro is-stale?                boolean
       |     |     +--ro label-op-code?           ipi-mpls-types:mpls_rib_label_op_code_t
       |     |     +--ro in-interface?            string
       |     |     +--ro in-label?                uint32
       |     +--ro state
       |        +--ro fec-prefix6?            cml-data-types:cml_ipv6_prefix_t
       |        +--ro owner?                  ipi-mpls-types:mpls_rib_entry_owner_t
       |        +--ro lsp-type?               ipi-mpls-types:mpls_rib_lsp_type_t
       |        +--ro unique-nhlfe-ix?        uint32
       |        +--ro ftn-index?              uint32
       |        +--ro is-primary?             boolean
       |        +--ro route-distance?         uint8
       |        +--ro redirect-action-type?   ipi-mpls-types:mpls_rib_action_type_t
       |        +--ro qos-exp-bits?           uint8
       |        +--ro is-entropy-label?       boolean
       |        +--ro in-dscp-class-name?     string
       |        +--ro tunnel-id?              uint32
       |        +--ro protected-lsp-id?       uint32
       |        +--ro qos-resource-id?        uint32
       |        +--ro color?                  uint32 {feature-list:HAVE_SERVICE_MAPPING}?
       |        +--ro tunnel-policy-name?     string {feature-list:HAVE_SERVICE_MAPPING}?
       |        +--ro rsvp-multipath-name?    string {feature-list:HAVE_RSVP_MULTIPATH}?
       |        +--ro row-status?             string
       |        +--ro state?                  string
       |        +--ro create-time?            cml-data-types:cml_line_t
       |        +--ro up-time?                cml-data-types:cml_line_t
       |        +--ro last-update?            cml-data-types:cml_line_t
       |        +--ro description?            string
       +--ro ilm-table
       |  +--ro ip-ilm-entry* [in-interface in-label] {feature-list:HAVE_VRF}?
       |     +--ro in-interface    -> ../state/in-interface
       |     +--ro in-label        -> ../state/in-label
       |     +--ro nhlfe-entry* [out-interface out-label xc-type]
       |     |  +--ro out-interface    -> ../state/out-interface
       |     |  +--ro out-label        -> ../state/out-label
       |     |  +--ro xc-type          -> ../state/xc-type
       |     |  +--ro state
       |     |     +--ro out-interface?     -> /ipi-interface:interfaces/interface/name
       |     |     +--ro out-label?         uint32
       |     |     +--ro xc-type?           ipi-mpls-types:mpls_rib_xc_type_t
       |     |     +--ro nexthop-address?   inet:ip-address
       |     |     +--ro nhlfe-owner?       ipi-mpls-types:mpls_rib_entry_owner_t
       |     |     +--ro nhlfe-index?       uint32
       |     |     +--ro label-op-code?     ipi-mpls-types:mpls_rib_label_op_code_t
       |     +--ro state
       |        +--ro in-interface?          -> /ipi-interface:interfaces/interface/name
       |        +--ro in-label?              uint32
       |        +--ro vrf-name?              -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
       |        +--ro owner?                 ipi-mpls-types:mpls_rib_entry_owner_t
       |        +--ro ilm-index?             uint32
       |        +--ro is-stitched-to-ftn?    boolean
       |        +--ro is-installed-in-fib?   boolean
       |        +--ro is-selected?           boolean
       |        +--ro is-stale?              boolean
       |        +--ro fec-prefix?            cml-data-types:cml_ip_prefix_t
       |        +--ro label-op-code?         ipi-mpls-types:mpls_rib_label_op_code_t
       |        +--ro pseudowire-id?         uint32
       |        +--ro evpn-id?               uint32 {feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
       +--ro rsvp-multipath-table {feature-list:HAVE_RSVP_MULTIPATH}?
       |  +--ro rsvp-multipath-entry* [multipath-identifier]
       |     +--ro multipath-identifier    -> ../state/multipath-identifier
       |     +--ro state
       |        +--ro multipath-identifier?    uint16
       |        +--ro multipath-name?          string
       |        +--ro multipath-nhlfe-index?   uint32
       |        +--ro fec-prefix?              cml-data-types:cml_ipv4_addr_prefix_t
       |        +--ro active-member-count?     uint16
       +--rw map-route
       |  +--rw static-ipv4-map-routes
       |     +--rw static-ipv4-map-route* [route-prefix]
       |        +--rw route-prefix    -> ../config/route-prefix
       |        +--rw config
       |        |  +--rw route-prefix?   cml-data-types:cml_ipv4_prefix_t
       |        |  +--rw mapped-fec      cml-data-types:cml_ipv4_prefix_t
       |        +--ro state
       |           +--ro route-prefix?   cml-data-types:cml_ipv4_prefix_t
       |           +--ro mapped-fec      cml-data-types:cml_ipv4_prefix_t
       +--rw static-lsps
          +--rw ipv4-static-ftn-entries
          |  +--rw ipv4-static-ftn-entry* [fec-prefix pushed-label nexthop-ip-address out-interface-name]
          |     +--rw fec-prefix            -> ../config/fec-prefix
          |     +--rw pushed-label          -> ../config/pushed-label
          |     +--rw nexthop-ip-address    -> ../config/nexthop-ip-address
          |     +--rw out-interface-name    -> ../config/out-interface-name
          |     +--rw config
          |     |  +--rw fec-prefix?           cml-data-types:cml_ipv4_prefix_t
          |     |  +--rw pushed-label?         uint32
          |     |  +--rw nexthop-ip-address?   inet:ipv4-address
          |     |  +--rw out-interface-name?   -> /ipi-interface:interfaces/interface/name
          |     +--ro state
          |        +--ro fec-prefix?           cml-data-types:cml_ipv4_prefix_t
          |        +--ro pushed-label?         uint32
          |        +--ro nexthop-ip-address?   inet:ipv4-address
          |        +--ro out-interface-name?   -> /ipi-interface:interfaces/interface/name
          +--rw static-ftn-tunnels
          |  +--rw static-ftn-tunnel* [tunnel-id fec-prefix pushed-label nexthop-ip-address out-interface-name is-primary] {feature-list:NOT_HAVE_MPLS_TUNNEL}?
          |     +--rw tunnel-id             -> ../config/tunnel-id
          |     +--rw fec-prefix            -> ../config/fec-prefix
          |     +--rw pushed-label          -> ../config/pushed-label
          |     +--rw nexthop-ip-address    -> ../config/nexthop-ip-address
          |     +--rw out-interface-name    -> ../config/out-interface-name
          |     +--rw is-primary            -> ../config/is-primary
          |     +--rw config
          |     |  +--rw tunnel-id?            uint32
          |     |  +--rw fec-prefix?           cml-data-types:cml_ip_prefix_t
          |     |  +--rw pushed-label?         uint32
          |     |  +--rw nexthop-ip-address?   inet:ip-address
          |     |  +--rw out-interface-name?   -> /ipi-interface:interfaces/interface/name
          |     |  +--rw is-primary?           ipi-mpls-types:mpls_vpls_ftn_entry_lsp_type_t
          |     +--ro state
          |        +--ro tunnel-id?            uint32
          |        +--ro fec-prefix?           cml-data-types:cml_ip_prefix_t
          |        +--ro pushed-label?         uint32
          |        +--ro nexthop-ip-address?   inet:ip-address
          |        +--ro out-interface-name?   -> /ipi-interface:interfaces/interface/name
          |        +--ro is-primary?           ipi-mpls-types:mpls_vpls_ftn_entry_lsp_type_t
          +--rw static-ilm-entries
             +--rw static-ilm-entry* [incoming-label]
                +--rw incoming-label    -> ../config/incoming-label
                +--rw config
                |  +--rw incoming-label?   uint32
                +--ro state
                |  +--ro incoming-label?   uint32
                +--rw pop
                |  +--rw config!
                |  |  +--rw enable-pop-label    empty
                |  +--ro state
                |     +--ro enable-pop-label    empty
                +--rw swaps
                   +--rw swap* [in-interface-name swapped-label out-interface-name nexthop-ip-address fec-prefix]
                      +--rw in-interface-name     -> ../config/in-interface-name
                      +--rw swapped-label         -> ../config/swapped-label
                      +--rw out-interface-name    -> ../config/out-interface-name
                      +--rw nexthop-ip-address    -> ../config/nexthop-ip-address
                      +--rw fec-prefix            -> ../config/fec-prefix
                      +--rw config
                      |  +--rw in-interface-name?    string
                      |  +--rw swapped-label?        uint32
                      |  +--rw out-interface-name?   -> /ipi-interface:interfaces/interface/name
                      |  +--rw nexthop-ip-address?   inet:ip-address
                      |  +--rw fec-prefix?           cml-data-types:cml_ip_prefix_t
                      +--ro state
                         +--ro in-interface-name?    string
                         +--ro swapped-label?        uint32
                         +--ro out-interface-name?   -> /ipi-interface:interfaces/interface/name
                         +--ro nexthop-ip-address?   inet:ip-address
                         +--ro fec-prefix?           cml-data-types:cml_ip_prefix_t
  augment /ipi-mpls:mpls:
    +--ro vrf* [vrf-name] {feature-list:HAVE_VRF}?
       +--ro vrf-name    -> ../rib/vrf-name
       +--ro rib
          +--ro ftn-table
          |  +--ro ipv4-ftn-entry* [fec-prefix owner lsp-type tunnel-id]
          |  |  +--ro fec-prefix     -> ../state/fec-prefix
          |  |  +--ro owner          -> ../state/owner
          |  |  +--ro lsp-type       -> ../state/lsp-type
          |  |  +--ro tunnel-id      -> ../state/tunnel-id
          |  |  +--ro nhlfe-entry* [out-interface out-label]
          |  |  |  +--ro out-interface    -> ../state/out-interface
          |  |  |  +--ro out-label        -> ../state/out-label
          |  |  |  +--ro state
          |  |  |     +--ro out-interface?           -> /ipi-interface:interfaces/interface/name
          |  |  |     +--ro out-label?               uint32
          |  |  |     +--ro nexthop-address?         inet:ipv4-address
          |  |  |     +--ro nhlfe-type?              ipi-mpls-types:mpls_rib_nhlfe_type_t
          |  |  |     +--ro xc-index?                uint32
          |  |  |     +--ro administrative-status?   ipi-mpls-types:mpls_rib_entry_admin_status_t
          |  |  |     +--ro oper-status?             ipi-mpls-types:mpls_rib_entry_oper_status_t
          |  |  |     +--ro nhlfe-owner?             ipi-mpls-types:mpls_rib_entry_owner_t
          |  |  |     +--ro nhlfe-index?             uint32
          |  |  |     +--ro is-stale?                boolean
          |  |  |     +--ro label-op-code?           ipi-mpls-types:mpls_rib_label_op_code_t
          |  |  |     +--ro in-interface?            string
          |  |  |     +--ro in-label?                uint32
          |  |  +--ro state
          |  |     +--ro fec-prefix?             cml-data-types:cml_ipv4_addr_prefix_t
          |  |     +--ro owner?                  ipi-mpls-types:mpls_rib_entry_owner_t
          |  |     +--ro lsp-type?               ipi-mpls-types:mpls_rib_lsp_type_t
          |  |     +--ro unique-nhlfe-ix?        uint32
          |  |     +--ro ftn-index?              uint32
          |  |     +--ro is-primary?             boolean
          |  |     +--ro route-distance?         uint8
          |  |     +--ro redirect-action-type?   ipi-mpls-types:mpls_rib_action_type_t
          |  |     +--ro qos-exp-bits?           uint8
          |  |     +--ro is-entropy-label?       boolean
          |  |     +--ro in-dscp-class-name?     string
          |  |     +--ro tunnel-id?              uint32
          |  |     +--ro protected-lsp-id?       uint32
          |  |     +--ro qos-resource-id?        uint32
          |  |     +--ro color?                  uint32 {feature-list:HAVE_SERVICE_MAPPING}?
          |  |     +--ro tunnel-policy-name?     string {feature-list:HAVE_SERVICE_MAPPING}?
          |  |     +--ro rsvp-multipath-name?    string {feature-list:HAVE_RSVP_MULTIPATH}?
          |  |     +--ro row-status?             string
          |  |     +--ro state?                  string
          |  |     +--ro create-time?            cml-data-types:cml_line_t
          |  |     +--ro up-time?                cml-data-types:cml_line_t
          |  |     +--ro last-update?            cml-data-types:cml_line_t
          |  |     +--ro description?            string
          |  +--ro ipv6-ftn-entry* [fec-prefix6 owner lsp-type tunnel-id] {feature-list:HAVE_IPV6}?
          |     +--ro fec-prefix6    -> ../state/fec-prefix6
          |     +--ro owner          -> ../state/owner
          |     +--ro lsp-type       -> ../state/lsp-type
          |     +--ro tunnel-id      -> ../state/tunnel-id
          |     +--ro nhlfe-entry* [out-interface out-label]
          |     |  +--ro out-interface    -> ../state/out-interface
          |     |  +--ro out-label        -> ../state/out-label
          |     |  +--ro state
          |     |     +--ro out-interface?           -> /ipi-interface:interfaces/interface/name
          |     |     +--ro out-label?               uint32
          |     |     +--ro nexthop-address?         inet:ip-address
          |     |     +--ro nhlfe-type?              ipi-mpls-types:mpls_rib_nhlfe_type_t
          |     |     +--ro administrative-status?   ipi-mpls-types:mpls_rib_entry_admin_status_t
          |     |     +--ro oper-status?             ipi-mpls-types:mpls_rib_entry_oper_status_t
          |     |     +--ro nhlfe-owner?             ipi-mpls-types:mpls_rib_entry_owner_t
          |     |     +--ro nhlfe-index?             uint32
          |     |     +--ro is-stale?                boolean
          |     |     +--ro label-op-code?           ipi-mpls-types:mpls_rib_label_op_code_t
          |     |     +--ro in-interface?            string
          |     |     +--ro in-label?                uint32
          |     +--ro state
          |        +--ro fec-prefix6?            cml-data-types:cml_ipv6_prefix_t
          |        +--ro owner?                  ipi-mpls-types:mpls_rib_entry_owner_t
          |        +--ro lsp-type?               ipi-mpls-types:mpls_rib_lsp_type_t
          |        +--ro unique-nhlfe-ix?        uint32
          |        +--ro ftn-index?              uint32
          |        +--ro is-primary?             boolean
          |        +--ro route-distance?         uint8
          |        +--ro redirect-action-type?   ipi-mpls-types:mpls_rib_action_type_t
          |        +--ro qos-exp-bits?           uint8
          |        +--ro is-entropy-label?       boolean
          |        +--ro in-dscp-class-name?     string
          |        +--ro tunnel-id?              uint32
          |        +--ro protected-lsp-id?       uint32
          |        +--ro qos-resource-id?        uint32
          |        +--ro color?                  uint32 {feature-list:HAVE_SERVICE_MAPPING}?
          |        +--ro tunnel-policy-name?     string {feature-list:HAVE_SERVICE_MAPPING}?
          |        +--ro rsvp-multipath-name?    string {feature-list:HAVE_RSVP_MULTIPATH}?
          |        +--ro row-status?             string
          |        +--ro state?                  string
          |        +--ro create-time?            cml-data-types:cml_line_t
          |        +--ro up-time?                cml-data-types:cml_line_t
          |        +--ro last-update?            cml-data-types:cml_line_t
          |        +--ro description?            string
          +--ro vrf-name?    -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
 
 
module: ipi-mpls
  +--rw mpls
     +--rw l2vpn
     |  +--rw customer-service-templates
     |  |  +--rw customer-service-template* [name] {feature-list:HAVE_VPLS_OR_HAVE_MPLS_VC}?
     |  |     +--rw name            -> ../config/name
     |  |     +--rw config
     |  |     |  +--rw name?                                string
     |  |     |  +--rw match-all?                           empty
     |  |     |  +--rw match-single-tag-outer-vlan-range*   string
     |  |     |  +--rw match-untagged?                      empty
     |  |     +--ro state
     |  |     |  +--ro name?                                string
     |  |     |  +--ro match-all?                           empty
     |  |     |  +--ro match-single-tag-outer-vlan-range*   string
     |  |     |  +--ro match-untagged?                      empty
     |  |     +--rw double-tags
     |  |     |  +--rw double-tag* [match-outer-vlan-id]
     |  |     |     +--rw match-outer-vlan-id    -> ../config/match-outer-vlan-id
     |  |     |     +--rw config
     |  |     |     |  +--rw match-outer-vlan-id?   uint16
     |  |     |     |  +--rw match-inner-vlan-id*   string
     |  |     |     +--ro state
     |  |     |        +--ro match-outer-vlan-id?   uint16
     |  |     |        +--ro match-inner-vlan-id*   string
     |  |     +--rw action-types
     |  |     |  +--rw action-type* [vlan-action-type]
     |  |     |     +--rw vlan-action-type    -> ../config/vlan-action-type
     |  |     |     +--rw config
     |  |     |     |  +--rw vlan-action-type?          ipi-mpls-types:mpls_l2vpn_vlan_action_type_t
     |  |     |     |  +--rw outer-vlan-identifier?     uint16
     |  |     |     |  +--rw tag-protocol-identifier?   ipi-mpls-types:mpls_svc_tpid_t
     |  |     |     +--ro state
     |  |     |        +--ro vlan-action-type?          ipi-mpls-types:mpls_l2vpn_vlan_action_type_t
     |  |     |        +--ro outer-vlan-identifier?     uint16
     |  |     |        +--ro tag-protocol-identifier?   ipi-mpls-types:mpls_svc_tpid_t
     |  |     +--ro map-list* [vpls-name] {feature-list:HAVE_VPLS}?
     |  |        +--ro vpls-name    -> ../state/vpls-name
     |  |        +--ro state
     |  |           +--ro vpls-name?                string
     |  |           +--ro error-status?             ipi-mpls-types:mpls_l2vpn_serv_temp_error_status_t
     |  |           +--ro binding-interface-name?   string
     |  +--rw access-circuit-groups
     |     +--rw access-circuit-group* [group-name] {feature-list:HAVE_MPLS_VC}?
     |        +--rw group-name    -> ../config/group-name
     |        +--rw config
     |        |  +--rw group-name?         string
     |        |  +--rw group-identifier    uint32
     |        +--ro state
     |           +--ro group-name?         string
     |           +--ro group-identifier    uint32
     +--rw global
     |  +--rw config
     |  |  +--rw local-packet-handling?     empty
     |  |  +--rw lsp-stitching?             empty
     |  |  +--rw propagate-ttl?             empty
     |  |  +--rw ingress-ttl-value?         uint8
     |  |  +--rw lsp-model-uniform?         empty
     |  |  +--rw lsp-encap-dscp-preserve?   empty {feature-list:HAVE_DUNE}?
     |  |  +--rw six-pe-dscp-preserve?      ipi-mpls-types:mpls_dscp_preserve_state_t {feature-list:HAVE_6PE,feature-list:HAVE_DUNE}?
     |  +--ro state
     |  |  +--ro local-packet-handling?     empty
     |  |  +--ro lsp-stitching?             empty
     |  |  +--ro propagate-ttl?             empty
     |  |  +--ro ingress-ttl-value?         uint8
     |  |  +--ro lsp-model-uniform?         empty
     |  |  +--ro lsp-encap-dscp-preserve?   empty {feature-list:HAVE_DUNE}?
     |  |  +--ro six-pe-dscp-preserve?      ipi-mpls-types:mpls_dscp_preserve_state_t {feature-list:HAVE_6PE,feature-list:HAVE_DUNE}?
     |  +--ro graceful-restart {feature-list:HAVE_RESTART}?
     |     +--ro rsvp
     |     |  +--ro state
     |     |     +--ro graceful-restart-state?   ipi-mpls-types:mpls_graceful_restart_status_t
     |     |     +--ro remaining-restart-time?   uint32
     |     |     +--ro disconnected-time?        yang:date-and-time
     |     +--ro ldp
     |        +--ro state
     |           +--ro graceful-restart-state?   ipi-mpls-types:mpls_graceful_restart_status_t
     |           +--ro remaining-restart-time?   uint32
     |           +--ro disconnected-time?        yang:date-and-time
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name                        -> ../config/name
     |     +--rw config
     |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
     |     +--ro state
     |     |  +--ro name?   -> /ipi-interface:interfaces/interface/name
     |     +--rw label-switching
     |     |  +--rw config!
     |     |  |  +--rw enable         empty
     |     |  |  +--rw label-space?   uint16
     |     |  +--ro state
     |     |     +--ro enable         empty
     |     |     +--ro label-space?   uint16
     |     +--rw mpls-interface-bandwidth
     |        +--rw config
     |        |  +--rw admin-group-name*            -> /ipi-global-te:admin-groups/admin-group/name {feature-list:HAVE_TE}?
     |        |  +--rw extended-admin-group-name*   -> /ipi-global-te:extended-admin-groups/extended-admin-group/name {feature-list:HAVE_TE}?
     |        |  +--rw bandwidth?                   string {feature-list:HAVE_TE,feature-list:NOT_IF_BANDWIDTH_INFO}?
     |        |  +--rw reservable-bandwidth?        string {feature-list:HAVE_TE}?
     |        |  +--rw shared-risk-link-group*      uint32 {feature-list:HAVE_SRLG}?
     |        |  +--rw uni-available-bandwidth?     string {feature-list:HAVE_TE,feature-list:NOT_IF_BANDWIDTH_INFO}?
     |        |  +--rw uni-residual-bandwidth?      string {feature-list:HAVE_TE,feature-list:NOT_IF_BANDWIDTH_INFO}?
     |        |  +--rw uni-utilized-bandwidth?      string {feature-list:HAVE_TE,feature-list:NOT_IF_BANDWIDTH_INFO}?
     |        +--ro state
     |           +--ro admin-group-name*            -> /ipi-global-te:admin-groups/admin-group/name {feature-list:HAVE_TE}?
     |           +--ro extended-admin-group-name*   -> /ipi-global-te:extended-admin-groups/extended-admin-group/name {feature-list:HAVE_TE}?
     |           +--ro bandwidth?                   string {feature-list:HAVE_TE,feature-list:NOT_IF_BANDWIDTH_INFO}?
     |           +--ro reservable-bandwidth?        string {feature-list:HAVE_TE}?
     |           +--ro shared-risk-link-group*      uint32 {feature-list:HAVE_SRLG}?
     |           +--ro uni-available-bandwidth?     string {feature-list:HAVE_TE,feature-list:NOT_IF_BANDWIDTH_INFO}?
     |           +--ro uni-residual-bandwidth?      string {feature-list:HAVE_TE,feature-list:NOT_IF_BANDWIDTH_INFO}?
     |           +--ro uni-utilized-bandwidth?      string {feature-list:HAVE_TE,feature-list:NOT_IF_BANDWIDTH_INFO}?
     +--rw label-spaces
     |  +--rw label-space* [label-space-name]
     |     +--rw label-space-name       -> ../config/label-space-name
     |     +--rw config
     |     |  +--rw label-space-name?   uint16
     |     +--ro state
     |     |  +--ro label-space-name?   uint16
     |     +--rw global-label-range
     |     |  +--rw config!
     |     |  |  +--rw min-label    uint32
     |     |  |  +--rw max-label    uint32
     |     |  +--ro state
     |     |     +--ro min-label    uint32
     |     |     +--ro max-label    uint32
     |     +--rw module-label-ranges
     |        +--rw module-label-range* [module-name]
     |           +--rw module-name    -> ../config/module-name
     |           +--rw config
     |           |  +--rw module-name?   ipi-mpls-types:mpls_module_t
     |           |  +--rw min-label      uint32
     |           |  +--rw max-label      uint32
     |           +--ro state
     |              +--ro module-name?   ipi-mpls-types:mpls_module_t
     |              +--ro min-label      uint32
     |              +--ro max-label      uint32
     +--rw ecmp
     |  +--rw config
     |  |  +--rw ftn-ecmp-protocol?   ipi-mpls-types:mpls_ecmp_protocol_t {feature-list:HAVE_MPLS_ECMP}?
     |  |  +--rw ilm-ecmp-protocol?   ipi-mpls-types:mpls_ecmp_protocol_t {feature-list:HAVE_MPLS_ECMP}?
     |  +--ro state
     |     +--ro ftn-ecmp-protocol?   ipi-mpls-types:mpls_ecmp_protocol_t {feature-list:HAVE_MPLS_ECMP}?
     |     +--ro ilm-ecmp-protocol?   ipi-mpls-types:mpls_ecmp_protocol_t {feature-list:HAVE_MPLS_ECMP}?
     +--rw six-pe-tunnel-policies {feature-list:HAVE_SERVICE_MAPPING,feature-list:HAVE_6PE}?
     |  +--rw six-pe-tunnel-policy* [name]
     |     +--rw name      -> ../config/name
     |     +--rw config
     |     |  +--rw name?   string
     |     +--ro state
     |        +--ro name?   string
     +--rw bandwidth-classes
        +--rw bandwidth-class* [name] {feature-list:HAVE_TE}?
           +--rw name          -> ../config/name
           +--rw config
           |  +--rw name?   string
           +--ro state
           |  +--ro name?   string
           +--rw properties
              +--rw config!
              |  +--rw max-bandwidth     string
              |  +--rw setup-priority    uint8
              |  +--rw hold-priority     uint8
              +--ro state
                 +--ro max-bandwidth     string
                 +--ro setup-priority    uint8
                 +--ro hold-priority     uint8
 
 
 
 
 
module: ipi-mrib
  +--rw mrib
     +--rw ipv4
     |  +--rw vrfs
     |  |  +--rw vrf* [vrf-name]
     |  |     +--rw vrf-name            -> ../config/vrf-name
     |  |     +--rw config
     |  |     |  +--rw vrf-name?                   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |  |     |  +--rw multicast-routing-enable?   empty
     |  |     +--ro state
     |  |     |  +--ro counters
     |  |     |  |  +--ro total-multicast-routes?         yang:counter32
     |  |     |  |  +--ro dense-mode-multicast-routes?    yang:counter32
     |  |     |  |  +--ro sparse-mode-multicast-routes?   yang:counter32
     |  |     |  |  +--ro no-cache-received?              yang:counter32
     |  |     |  |  +--ro no-cache-sent?                  yang:counter32
     |  |     |  |  +--ro wrong-VIF-received?             yang:counter32
     |  |     |  |  +--ro wrong-VIF-sent?                 yang:counter32
     |  |     |  |  +--ro whole-packet-received?          yang:counter32
     |  |     |  |  +--ro whole-packet-sent?              yang:counter32
     |  |     |  |  +--ro immediate-stat-updates-sent?    yang:counter32
     |  |     |  |  +--ro timed-stat-updates-sent?        yang:counter32
     |  |     |  |  +--ro register-packets-sent?          yang:counter32
     |  |     |  |  +--ro register-acks-received?         yang:counter32
     |  |     |  |  +--ro register-nacks-received?        yang:counter32
     |  |     |  |  +--ro no-cache-receive-rate?          decimal64
     |  |     |  |  +--ro register-packet-sent-rate?      decimal64
     |  |     |  +--ro vrf-name?                   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |  |     |  +--ro multicast-routing-enable?   empty
     |  |     |  +--ro stats-poll-expiry-time?     string
     |  |     +--rw route-limit
     |  |     |  +--rw config
     |  |     |  |  +--rw maximum-routes?      uint32
     |  |     |  |  +--rw warning-threshold?   uint32
     |  |     |  +--ro state
     |  |     |     +--ro maximum-routes?      uint32
     |  |     |     +--ro warning-threshold?   uint32
     |  |     +--rw debug
     |  |     |  +--rw config
     |  |     |  |  +--rw options?   ipi-mrib-types:mrib_debug_t
     |  |     |  +--ro state
     |  |     |     +--ro options?                 ipi-mrib-types:mrib_debug_t
     |  |     |     +--ro terminal-debug-status?   ipi-mrib-types:mrib_debug_t
     |  |     +--ro multicast-routes
     |  |        +--ro multicast-route* [source group]
     |  |           +--ro source                 -> ../state/source
     |  |           +--ro group                  -> ../state/group
     |  |           +--ro state
     |  |           |  +--ro counters
     |  |           |  |  +--ro packets-forwarded?    yang:counter32
     |  |           |  |  +--ro bytes-forwarded?      yang:counter32
     |  |           |  |  +--ro wrong-VIF-sent?       yang:counter32
     |  |           |  |  +--ro wrong-VIF-received?   yang:counter32
     |  |           |  +--ro source?                   inet:ip-address
     |  |           |  +--ro group?                    inet:ip-address
     |  |           |  +--ro incoming-interface?       string
     |  |           |  +--ro rpf-address?              inet:ip-address
     |  |           |  +--ro route-type?               ipi-mrib-types:mrib_route_type_t
     |  |           |  +--ro uptime?                   string
     |  |           |  +--ro stats-poll-expiry-time?   string
     |  |           |  +--ro immediate-stats?          empty
     |  |           |  +--ro timed-stats?              empty
     |  |           |  +--ro forwarder-installed?      empty
     |  |           +--ro outgoing-interfaces
     |  |              +--ro outgoing-interface* [name]
     |  |                 +--ro name     -> ../state/name
     |  |                 +--ro state
     |  |                    +--ro name?           -> /ipi-interface:interfaces/interface/name
     |  |                    +--ro time-to-live?   uint8
     |  +--rw interfaces
     |     +--rw interface* [name]
     |        +--rw name      -> ../config/name
     |        +--rw config
     |        |  +--rw name?            -> /ipi-interface:interfaces/interface/name
     |        |  +--rw ttl-threshold?   uint8
     |        +--ro state
     |           +--ro name?             -> /ipi-interface:interfaces/interface/name
     |           +--ro ttl-threshold?    uint8
     |           +--ro local-address?    inet:ip-address {feature-list:HAVE_MRIB_IPV4}?
     |           +--ro remote-address?   inet:ip-address {feature-list:HAVE_MRIB_IPV4}?
     |           +--ro uptime?           string
     |           +--ro module-name?      string
     |           +--ro vif-index?        uint32
     +--rw ipv6
        +--rw vrfs
        |  +--rw vrf* [vrf-name]
        |     +--rw vrf-name            -> ../config/vrf-name
        |     +--rw config
        |     |  +--rw vrf-name?                   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
        |     |  +--rw multicast-routing-enable?   empty
        |     +--ro state
        |     |  +--ro counters
        |     |  |  +--ro total-multicast-routes?         yang:counter32
        |     |  |  +--ro dense-mode-multicast-routes?    yang:counter32
        |     |  |  +--ro sparse-mode-multicast-routes?   yang:counter32
        |     |  |  +--ro no-cache-received?              yang:counter32
        |     |  |  +--ro no-cache-sent?                  yang:counter32
        |     |  |  +--ro wrong-VIF-received?             yang:counter32
        |     |  |  +--ro wrong-VIF-sent?                 yang:counter32
        |     |  |  +--ro whole-packet-received?          yang:counter32
        |     |  |  +--ro whole-packet-sent?              yang:counter32
        |     |  |  +--ro immediate-stat-updates-sent?    yang:counter32
        |     |  |  +--ro timed-stat-updates-sent?        yang:counter32
        |     |  |  +--ro register-packets-sent?          yang:counter32
        |     |  |  +--ro register-acks-received?         yang:counter32
        |     |  |  +--ro register-nacks-received?        yang:counter32
        |     |  |  +--ro no-cache-receive-rate?          decimal64
        |     |  |  +--ro register-packet-sent-rate?      decimal64
        |     |  +--ro vrf-name?                   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
        |     |  +--ro multicast-routing-enable?   empty
        |     |  +--ro stats-poll-expiry-time?     string
        |     +--rw route-limit
        |     |  +--rw config
        |     |  |  +--rw maximum-routes?      uint32
        |     |  |  +--rw warning-threshold?   uint32
        |     |  +--ro state
        |     |     +--ro maximum-routes?      uint32
        |     |     +--ro warning-threshold?   uint32
        |     +--rw debug
        |     |  +--rw config
        |     |  |  +--rw options?   ipi-mrib-types:mrib_debug_t
        |     |  +--ro state
        |     |     +--ro options?                 ipi-mrib-types:mrib_debug_t
        |     |     +--ro terminal-debug-status?   ipi-mrib-types:mrib_debug_t
        |     +--ro multicast-routes
        |        +--ro multicast-route* [source group]
        |           +--ro source                 -> ../state/source
        |           +--ro group                  -> ../state/group
        |           +--ro state
        |           |  +--ro counters
        |           |  |  +--ro packets-forwarded?    yang:counter32
        |           |  |  +--ro bytes-forwarded?      yang:counter32
        |           |  |  +--ro wrong-VIF-sent?       yang:counter32
        |           |  |  +--ro wrong-VIF-received?   yang:counter32
        |           |  +--ro source?                   inet:ip-address
        |           |  +--ro group?                    inet:ip-address
        |           |  +--ro incoming-interface?       string
        |           |  +--ro rpf-address?              inet:ip-address
        |           |  +--ro route-type?               ipi-mrib-types:mrib_route_type_t
        |           |  +--ro uptime?                   string
        |           |  +--ro stats-poll-expiry-time?   string
        |           |  +--ro immediate-stats?          empty
        |           |  +--ro timed-stats?              empty
        |           |  +--ro forwarder-installed?      empty
        |           +--ro outgoing-interfaces
        |              +--ro outgoing-interface* [name]
        |                 +--ro name     -> ../state/name
        |                 +--ro state
        |                    +--ro name?           -> /ipi-interface:interfaces/interface/name
        |                    +--ro time-to-live?   uint8
        +--rw interfaces
           +--rw interface* [name]
              +--rw name      -> ../config/name
              +--rw config
              |  +--rw name?            -> /ipi-interface:interfaces/interface/name
              |  +--rw ttl-threshold?   uint8
              +--ro state
                 +--ro name?             -> /ipi-interface:interfaces/interface/name
                 +--ro ttl-threshold?    uint8
                 +--ro local-address?    inet:ip-address {feature-list:HAVE_MRIB_IPV4}?
                 +--ro remote-address?   inet:ip-address {feature-list:HAVE_MRIB_IPV4}?
                 +--ro uptime?           string
                 +--ro module-name?      string
                 +--ro vif-index?        uint32
 
  rpcs:
    +---x mrib-ipv4-terminal-debug-on {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-mrib-types:mrib_debug_t
    +---x mrib-ipv4-terminal-debug-off {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-mrib-types:mrib_debug_t
    +---x mrib-ipv4-clear-mroute-all {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?     string
    |     +---w all-routes    empty
    +---x mrib-ipv4-clear-mroute-group {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?        string
    |     +---w group-address    inet:ipv4-address
    +---x mrib-ipv4-clear-mroute-source-group {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?         string
    |     +---w source-address    inet:ipv4-address
    |     +---w group-address     inet:ipv4-address
    +---x mrib-ipv4-clear-mroute-statistics-all {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?     string
    |     +---w all-routes    empty
    +---x mrib-ipv4-clear-mroute-statistics-group {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?        string
    |     +---w group-address    inet:ipv4-address
    +---x mrib-ipv4-clear-mroute-statistics-source-group {feature-list:HAVE_MRIBD}?
    |  +---w input
    |     +---w vrf-name?         string
    |     +---w source-address    inet:ipv4-address
    |     +---w group-address     inet:ipv4-address
    +---x mrib-ipv4-snmp-restart {feature-list:HAVE_SNMP}?
    +---x mrib-ipv6-terminal-debug-on {feature-list:HAVE_MRIBD,feature-list:HAVE_MCAST_IPV6}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-mrib-types:mrib_debug_t
    +---x mrib-ipv6-terminal-debug-off {feature-list:HAVE_MRIBD,feature-list:HAVE_MCAST_IPV6}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-mrib-types:mrib_debug_t
    +---x mrib-ipv6-clear-mroute-all {feature-list:HAVE_MRIBD,feature-list:HAVE_MCAST_IPV6}?
    |  +---w input
    |     +---w vrf-name      string
    |     +---w all-routes    empty
    +---x mrib-ipv6-clear-mroute-group {feature-list:HAVE_MRIBD,feature-list:HAVE_MCAST_IPV6}?
    |  +---w input
    |     +---w vrf-name         string
    |     +---w group-address    inet:ipv6-address
    +---x mrib-ipv6-clear-mroute-source-group {feature-list:HAVE_MRIBD,feature-list:HAVE_MCAST_IPV6}?
    |  +---w input
    |     +---w vrf-name          string
    |     +---w source-address    inet:ipv6-address
    |     +---w group-address     inet:ipv6-address
    +---x mrib-ipv6-clear-mroute-statistics-all {feature-list:HAVE_MRIBD,feature-list:HAVE_MCAST_IPV6}?
    |  +---w input
    |     +---w vrf-name      string
    |     +---w all-routes    empty
    +---x mrib-ipv6-clear-mroute-statistics-group {feature-list:HAVE_MRIBD,feature-list:HAVE_MCAST_IPV6}?
    |  +---w input
    |     +---w vrf-name         string
    |     +---w group-address    inet:ipv6-address
    +---x mrib-ipv6-clear-mroute-statistics-source-group {feature-list:HAVE_MRIBD,feature-list:HAVE_MCAST_IPV6}?
       +---w input
          +---w vrf-name          string
          +---w source-address    inet:ipv6-address
          +---w group-address     inet:ipv6-address
 
 
module: ipi-neighbor-discovery
  +--rw neighbor-discovery
     +--rw entries
     |  +--rw entry* [ipv6-address interface-name]
     |     +--rw ipv6-address      -> ../config/ipv6-address
     |     +--rw interface-name    -> ../config/interface-name
     |     +--rw config
     |     |  +--rw ipv6-address?     inet:ipv6-address
     |     |  +--rw interface-name?   -> /ipi-interface:interfaces/interface/name
     |     |  +--rw mac-address       cml-data-types:cml_mac_addr_t
     |     +--ro state
     |        +--ro ipv6-address?        inet:ipv6-address
     |        +--ro interface-name?      -> /ipi-interface:interfaces/interface/name
     |        +--ro mac-address          cml-data-types:cml_mac_addr_t
     |        +--ro neighbor-age?        string
     |        +--ro neighbor-source?     ipi-nd-types:ndd_nd_src_type_t
     |        +--ro neighbor-state?      ipi-nd-types:ndd_nd_state_t
     |        +--ro neighbor-if-state?   ipi-nd-types:ndd_nd_if_type_t
     +--rw debug
     |  +--rw config
     |  |  +--rw enable?   empty
     |  +--ro state
     |     +--ro enable?                  empty
     |     +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name      -> ../config/name
     |     +--rw config
     |     |  +--rw name?                  -> /ipi-interface:interfaces/interface/name
     |     |  +--rw nd-ageing-timeout?     uint16
     |     |  +--rw nd-reachable-time?     uint32
     |     |  +--rw no-ip-unreachable?     empty
     |     |  +--rw no-ipv6-unreachable?   empty
     |     +--ro state
     |        +--ro name?                  -> /ipi-interface:interfaces/interface/name
     |        +--ro nd-ageing-timeout?     uint16
     |        +--ro nd-reachable-time?     uint32
     |        +--ro no-ip-unreachable?     empty
     |        +--ro no-ipv6-unreachable?   empty
     +--ro dynamic-neighbor-discovery* [vrf-name]
        +--ro vrf-name             string
        +--ro entry* [ipv6-address]
        |  +--ro ipv6-address         inet:ipv6-address
        |  +--ro mac-address?         cml-data-types:cml_mac_addr_t
        |  +--ro interface-name?      string
        |  +--ro neighbor-age?        string
        |  +--ro neighbor-source?     ipi-nd-types:ndd_nd_src_type_t
        |  +--ro neighbor-state?      ipi-nd-types:ndd_nd_state_t
        |  +--ro neighbor-if-state?   ipi-nd-types:ndd_nd_if_type_t
        +--ro adjacency-summary
           +--ro resolved-arp?     uint32
           +--ro incomplete-arp?   uint32
           +--ro unknown-arp?      uint32
           +--ro total-arp?        uint32
 
  rpcs:
    +---x nd-terminal-debug-on {feature-list:HAVE_L3,feature-list:HAVE_IPV6,feature-list:HAVE_NDD}?
    +---x nd-terminal-debug-off {feature-list:HAVE_L3,feature-list:HAVE_IPV6,feature-list:HAVE_NDD}?
    +---x clear-ipv6-nd-entry {feature-list:HAVE_L3,feature-list:HAVE_IPV6,feature-list:HAVE_NDD}?
    |  +---w input
    |     +---w ipv6-address?   cml-data-types:cml_ipv6_prefix_t
    |     +---w vrf-name?       string
    +---x clear-ipv6-nd-entry-per-interface {feature-list:HAVE_L3,feature-list:HAVE_IPV6,feature-list:HAVE_NDD}?
       +---w input
          +---w if-name     string
          +---w vrf-name?   string
 
 
module: ipi-network-instance
  +--rw network-instances
     +--rw network-instance* [instance-name instance-type]
        +--rw instance-name    -> ../config/instance-name
        +--rw instance-type    -> ../config/instance-type
        +--rw config
        |  +--rw instance-name?   string
        |  +--rw instance-type?   ipi-network-instance-types:net_inst_type_t
        +--ro state
           +--ro instance-name?   string
           +--ro instance-type?   ipi-network-instance-types:net_inst_type_t
 
 
module: ipi-network-services-manager
  +--rw network-services-manager
     +--rw debug
        +--rw nsm
        |  +--rw config
        |  |  +--rw options?   ipi-network-services-manager-types:nsm_debug_t
        |  +--ro state
        |     +--ro options?   ipi-network-services-manager-types:nsm_debug_t
        +--rw pkt-mgr
        |  +--rw config
        |  |  +--rw options?   ipi-network-services-manager-types:nsm_pkt_mgr_debug_t {feature-list:HAVE_L2}?
        |  +--ro state
        |     +--ro options?   ipi-network-services-manager-types:nsm_pkt_mgr_debug_t {feature-list:HAVE_L2}?
        +--rw hsl {feature-list:HAVE_USER_HSL}?
        |  +--rw hsl-module* [module-name]
        |     +--rw module-name    -> ../config/module-name
        |     +--rw config
        |     |  +--rw module-name?   ipi-network-services-manager-types:hsl_debug_module_t
        |     |  +--rw level          ipi-network-services-manager-types:hsl_debug_level_t
        |     +--ro state
        |        +--ro module-name?   ipi-network-services-manager-types:hsl_debug_module_t
        |        +--ro level          ipi-network-services-manager-types:hsl_debug_level_t
        +--ro terminal
           +--ro nsm
           |  +--ro state
           |     +--ro terminal-debug-status?   ipi-network-services-manager-types:nsm_debug_t
           +--ro pkt-mgr
              +--ro state
                 +--ro terminal-debug-status?   ipi-network-services-manager-types:nsm_pkt_mgr_debug_t {feature-list:HAVE_L2}?
 
  rpcs:
    +---x nsm-terminal-debug-on
    |  +---w input
    |     +---w terminal-debug-options    ipi-network-services-manager-types:nsm_exec_debug_t
    +---x nsm-terminal-debug-off
    |  +---w input
    |     +---w terminal-debug-options    ipi-network-services-manager-types:nsm_exec_debug_t
    +---x hsl-terminal-debug-on {feature-list:NOT_HAVE_SWFWDR,feature-list:HAVE_HAL}?
    |  +---w input
    |     +---w module-name    ipi-network-services-manager-types:hsl_debug_module_t
    |     +---w level          ipi-network-services-manager-types:hsl_debug_level_t
    +---x hsl-terminal-debug-off {feature-list:NOT_HAVE_SWFWDR,feature-list:HAVE_HAL}?
    |  +---w input
    |     +---w module-name    ipi-network-services-manager-types:hsl_debug_module_t
    |     +---w level          ipi-network-services-manager-types:hsl_debug_level_t
    +---x pktmgr-terminal-debug-on {feature-list:HAVE_L2}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-network-services-manager-types:nsm_pkt_mgr_debug_t
    +---x pktmgr-terminal-debug-off {feature-list:HAVE_L2}?
    +---x pktmgr-debug-statistics-enable
    +---x pktmgr-debug-statistics-disable
    +---x pktmgr-debug-statistics-get
    +---x pktmgr-debug-error-statistics-get
    |  +---w input
    |     +---w debug-error-statistics    ipi-network-services-manager-types:nsm_pktmgr_statistics_type_t
    +---x clear-nsm-ipc-statistics {feature-list:HAVE_ASYNC}?
    +---x clear-nsm-server-ipc-statistics
    +---x nsm-snmp-restart {feature-list:HAVE_SNMP}?
 
 
module: ipi-ntp
  +--rw ntp
     +--rw vrfs
     |  +--rw vrf* [vrf-name]
     |     +--rw vrf-name                  -> ../config/vrf-name
     |     +--rw config
     |     |  +--rw vrf-name?         -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--rw feature-enable?   boolean
     |     |  +--rw enable-ntp?       boolean
     |     |  +--rw enable-logging?   empty
     |     +--ro state
     |     |  +--ro vrf-name?         -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--ro feature-enable?   boolean
     |     |  +--ro enable-ntp?       boolean
     |     |  +--ro enable-logging?   empty
     |     +--rw ref-clock-master
     |     |  +--rw config!
     |     |  |  +--rw enable-local-master    empty
     |     |  |  +--rw local-stratum?         uint8
     |     |  +--ro state
     |     |     +--ro enable-local-master    empty
     |     |     +--ro local-stratum?         uint8
     |     +--rw authentication
     |     |  +--rw config
     |     |  |  +--rw enable-ntp-auth?    empty
     |     |  |  +--rw ntp-trusted-keys*   uint32
     |     |  |  +--rw ntp-request-key?    uint32
     |     |  +--ro state
     |     |  |  +--ro enable-ntp-auth?    empty
     |     |  |  +--ro ntp-trusted-keys*   uint32
     |     |  |  +--ro ntp-request-key?    uint32
     |     |  +--rw ntp-keys
     |     |     +--rw ntp-key* [key-id]
     |     |        +--rw key-id    -> ../config/key-id
     |     |        +--rw config
     |     |        |  +--rw key-id?      uint32
     |     |        |  +--rw key-value    string
     |     |        |  +--rw key-type     ipi-ntp-types:ntp_hostp_key_type_t
     |     |        +--ro state
     |     |           +--ro key-id?      uint32
     |     |           +--ro key-value    string
     |     |           +--ro key-type     ipi-ntp-types:ntp_hostp_key_type_t
     |     +--rw servers
     |     |  +--rw server* [server-address]
     |     |     +--rw server-address    -> ../config/server-address
     |     |     +--rw config
     |     |     |  +--rw server-address?   string
     |     |     |  +--rw prefer?           empty
     |     |     |  +--rw auth-key?         uint32
     |     |     |  +--rw minpoll?          uint16
     |     |     |  +--rw maxpoll?          uint16
     |     |     +--ro state
     |     |        +--ro server-address?   string
     |     |        +--ro prefer?           empty
     |     |        +--ro auth-key?         uint32
     |     |        +--ro minpoll?          uint16
     |     |        +--ro maxpoll?          uint16
     |     +--rw peers
     |     |  +--rw peer* [peer-address]
     |     |     +--rw peer-address    -> ../config/peer-address
     |     |     +--rw config
     |     |     |  +--rw peer-address?   string
     |     |     |  +--rw prefer?         empty
     |     |     |  +--rw auth-key?       uint32
     |     |     |  +--rw minpoll?        uint16
     |     |     |  +--rw maxpoll?        uint16
     |     |     +--ro state
     |     |        +--ro peer-address?   string
     |     |        +--ro prefer?         empty
     |     |        +--ro auth-key?       uint32
     |     |        +--ro minpoll?        uint16
     |     |        +--ro maxpoll?        uint16
     |     +--rw rate-limiting
     |     |  +--rw config
     |     |  |  +--rw minimum-pkt-spacing?   uint16
     |     |  +--ro state
     |     |     +--ro minimum-pkt-spacing?   uint16
     |     +--rw access-control-entries
     |        +--rw access-control-entry* [client-ip-address]
     |           +--rw client-ip-address    -> ../config/client-ip-address
     |           +--rw config
     |           |  +--rw client-ip-address?   inet:ip-address
     |           |  +--rw netmask?             ipi-ntp-types:ntp_client_ip_net_mask_t
     |           |  +--rw access-options?      ipi-ntp-types:ntp_acl_options_t
     |           +--ro state
     |              +--ro client-ip-address?   inet:ip-address
     |              +--ro netmask?             ipi-ntp-types:ntp_client_ip_net_mask_t
     |              +--ro access-options?      ipi-ntp-types:ntp_acl_options_t
     +--rw debug
     |  +--rw config
     |  |  +--rw enable?   empty
     |  +--ro state
     |     +--ro enable?                  empty
     |     +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
     +--ro peer-info
        +--ro peers
           +--ro peer* [peer-address]
              +--ro peer-address    -> ../state/peer-address
              +--ro state
                 +--ro peer-address?    cml-data-types:cml_hostname_t
                 +--ro stratum?         uint8
                 +--ro poll-interval?   uint32
                 +--ro reach-value?     uint16
                 +--ro root-delay?      decimal64
                 +--ro offset?          decimal64
 
  rpcs:
    +---x ntp-clear-statistics {feature-list:HAVE_HOSTPD,feature-list:HAVE_HOSTP_NTP}?
    |  +---w input
    |     +---w statistics-type    ipi-ntp-types:ntp_statistics_type_t
    +---x ntp-retry-server-synchronization {feature-list:HAVE_HOSTPD,feature-list:HAVE_HOSTP_NTP}?
    |  +---w input
    |     +---w vrf-name    string
    +---x ntp-terminal-debug-on {feature-list:HAVE_HOSTPD,feature-list:HAVE_HOSTP_NTP}?
    +---x ntp-terminal-debug-off {feature-list:HAVE_HOSTPD,feature-list:HAVE_HOSTP_NTP}?
 
 
module: ipi-object-tracking
  +--rw object-tracking
     +--rw trackers
     |  +--rw tracker* [tracker-id]
     |     +--rw tracker-id    -> ../config/tracker-id
     |     +--rw config
     |     |  +--rw tracker-id?   uint16
     |     |  +--rw ip-sla-id     uint16
     |     |  +--rw delay-up?     uint16
     |     |  +--rw delay-down?   uint16
     |     +--ro state
     |        +--ro tracker-id?            uint16
     |        +--ro ip-sla-id              uint16
     |        +--ro delay-up?              uint16
     |        +--ro delay-down?            uint16
     |        +--ro reachability-status?   ipi-object-tracking-types:object_tracking_reachability_status_t {feature-list:HAVE_OBJ_TRACKING}?
     +--rw interfaces
        +--rw interface* [name]
           +--rw name                -> ../config/name
           +--rw config
           |  +--rw name?            -> /ipi-interface:interfaces/interface/name
           |  +--rw select-option?   ipi-object-tracking-types:object_tracking_select_option_t
           +--ro state
           |  +--ro name?            -> /ipi-interface:interfaces/interface/name
           |  +--ro select-option?   ipi-object-tracking-types:object_tracking_select_option_t
           +--rw track-interfaces
              +--rw track-interface* [track-id]
                 +--rw track-id    -> ../config/track-id
                 +--rw config
                 |  +--rw track-id?   uint32
                 +--ro state
                    +--ro track-id?   uint32
 
 
 
 
 
 
 
 
module: ipi-ospf-interface-tracking
  +--rw ospf-interfaces-events-tracking
     +--rw ospf-interface-events-tracking* [event-name]
        +--rw event-name    -> ../config/event-name
        +--rw config
        |  +--rw event-name?                  string
        |  +--rw event-match-criteria         ipi-ospf-interface-tracking-types:intf_track_match_type_t
        |  +--rw event-neighbor-ip-address*   inet:ipv4-address
        +--ro state
        |  +--ro event-name?                  string
        |  +--ro event-match-criteria         ipi-ospf-interface-tracking-types:intf_track_match_type_t
        |  +--ro event-neighbor-ip-address*   inet:ipv4-address
        +--rw actions
           +--rw interfaces
              +--rw interface* [name]
                 +--rw name      -> ../config/name
                 +--rw config
                 |  +--rw name?   -> /ipi-interface:interfaces/interface/name
                 |  +--rw cost    uint32
                 +--ro state
                    +--ro name?   -> /ipi-interface:interfaces/interface/name
                    +--ro cost    uint32
 
 
 
 
 
 
 
 
module: ipi-ospf
  +--rw ospfv2
     +--rw global
     |  +--rw config
     |  |  +--rw area-interface-config-mode?         empty
     |  |  +--rw enable-multi-instance-capability?   empty {feature-list:HAVE_OSPF_MULTI_INST}?
     |  +--ro state
     |  |  +--ro area-interface-config-mode?         empty
     |  |  +--ro enable-multi-instance-capability?   empty {feature-list:HAVE_OSPF_MULTI_INST}?
     |  +--rw graceful-restart {feature-list:HAVE_RESTART}?
     |  |  +--rw config
     |  |  |  +--rw grace-period?   uint16
     |  |  +--ro state
     |  |  |  +--ro grace-period?   uint16
     |  |  +--rw helper
     |  |     +--rw config
     |  |     |  +--rw max-grace-period?        uint16
     |  |     |  +--rw disable-all-neighbors?   empty
     |  |     |  +--rw disable-neighbor*        inet:ipv4-address
     |  |     +--ro state
     |  |        +--ro max-grace-period?        uint16
     |  |        +--ro disable-all-neighbors?   empty
     |  |        +--ro disable-neighbor*        inet:ipv4-address
     |  +--rw cspf {feature-list:HAVE_OSPF_CSPF}?
     |     +--rw config
     |     |  +--rw tie-break-method?           ipi-ospf-types:ospf_cspf_tie_break_t
     |     |  +--rw default-retry-interval?     uint16
     |     |  +--rw enable-better-protection?   empty {feature-list:HAVE_GMPLS}?
     |     +--ro state
     |        +--ro tie-break-method?           ipi-ospf-types:ospf_cspf_tie_break_t
     |        +--ro default-retry-interval?     uint16
     |        +--ro enable-better-protection?   empty {feature-list:HAVE_GMPLS}?
     +--rw processes
     |  +--rw process* [ospf-id]
     |     +--rw ospf-id                    -> ../config/ospf-id
     |     +--rw config
     |     |  +--rw ospf-id?                     uint16
     |     |  +--rw vrf-name                     -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |     |  +--rw router-id?                   inet:ipv4-address
     |     |  +--rw flood-reduction?             empty
     |     |  +--rw rfc1583-compatibility?       empty
     |     |  +--rw database-summary?            empty
     |     |  +--rw bfd-enable-all-interfaces?   empty {feature-list:HAVE_BFD}?
     |     |  +--rw log-adjacency-changes?       ipi-ospf-types:ospf_log_adj_opt_t
     |     |  +--rw shutdown?                    empty
     |     |  +--rw area-border-type?            ipi-ospf-types:ospf_abr_type_t
     |     |  +--rw reference-bandwidth?         uint32
     |     |  +--rw max-database-descriptors?    uint16
     |     |  +--rw p2p-rfc-incompatible?        empty
     |     |  +--rw context-name?                string
     |     +--ro state
     |     |  +--ro statistics
     |     |  |  +--ro router
     |     |  |  |  +--ro area-counter?   yang:counter64
     |     |  |  +--ro database-description-exchanges
     |     |  |  |  +--ro in?    yang:counter64
     |     |  |  |  +--ro out?   yang:counter64
     |     |  |  +--ro link-state-advertisement
     |     |  |  |  +--ro originate?              yang:counter64
     |     |  |  |  +--ro received?               yang:counter64
     |     |  |  |  +--ro external?               yang:counter64
     |     |  |  |  +--ro opaque?                 yang:counter64
     |     |  |  |  +--ro non-default-external?   yang:counter64
     |     |  |  +--ro router-event
     |     |  |  |  +--ro packet
     |     |  |  |  |  +--ro packets-send-buffer?   yang:counter64
     |     |  |  |  |  +--ro unused-packets?        yang:counter64
     |     |  |  |  |  +--ro max-unused-packets?    yang:counter64
     |     |  |  |  +--ro lsa
     |     |  |  |  |  +--ro older-lsa-received?   yang:counter64
     |     |  |  |  |  +--ro lsa-buffer?           uint32
     |     |  |  |  +--ro spf
     |     |  |  |  |  +--ro full?       yang:counter64
     |     |  |  |  |  +--ro summary?    yang:counter64
     |     |  |  |  |  +--ro external?   yang:counter64
     |     |  |  |  +--ro neighbor
     |     |  |  |  |  +--ro state-change?               yang:counter64
     |     |  |  |  |  +--ro dead-interval-expiration?   yang:counter64
     |     |  |  |  |  +--ro bad-link-state-request?     yang:counter64
     |     |  |  |  |  +--ro sequence-number-mismatch?   yang:counter64
     |     |  |  |  +--ro router-id-changes?            yang:counter64
     |     |  |  |  +--ro designated-router-election?   yang:counter64
     |     |  |  +--ro error
     |     |  |  |  +--ro discarded-in?             yang:counter64
     |     |  |  |  +--ro discarded-out?            yang:counter64
     |     |  |  |  +--ro hello-in?                 yang:counter64
     |     |  |  |  +--ro database-descriptor-in?   yang:counter64
     |     |  |  |  +--ro ls-request-in?            yang:counter64
     |     |  |  |  +--ro ls-update-in?             yang:counter64
     |     |  |  |  +--ro ls-acknowledge-in?        yang:counter64
     |     |  |  |  +--ro unknown-in?               yang:counter64
     |     |  |  |  +--ro unknown-out?              yang:counter64
     |     |  |  |  +--ro bad-version?              yang:counter64
     |     |  |  |  +--ro bad-crc?                  yang:counter64
     |     |  |  |  +--ro invalid-source?           yang:counter64
     |     |  |  |  +--ro invalid-destination?      yang:counter64
     |     |  |  |  +--ro no-neighbor?              yang:counter64
     |     |  |  |  +--ro passive?                  yang:counter64
     |     |  |  |  +--ro wrong-area?               yang:counter64
     |     |  |  |  +--ro packets-length?           yang:counter64
     |     |  |  |  +--ro bad-authentication?       yang:counter64
     |     |  |  +--ro traffic
     |     |  |  |  +--ro total-packets-in?                  yang:counter64
     |     |  |  |  +--ro total-packets-out?                 yang:counter64
     |     |  |  |  +--ro hello-packets-in?                  yang:counter64
     |     |  |  |  +--ro hello-packets-out?                 yang:counter64
     |     |  |  |  +--ro database-descriptor-packets-in?    yang:counter64
     |     |  |  |  +--ro database-descriptor-packets-out?   yang:counter64
     |     |  |  |  +--ro ls-request-packets-in?             yang:counter64
     |     |  |  |  +--ro ls-request-packets-out?            yang:counter64
     |     |  |  |  +--ro ls-update-packets-in?              yang:counter64
     |     |  |  |  +--ro ls-update-packets-out?             yang:counter64
     |     |  |  |  +--ro ls-acknowledge-packets-in?         yang:counter64
     |     |  |  |  +--ro ls-acknowledge-packets-out?        yang:counter64
     |     |  |  +--ro up-time?                          string
     |     |  +--ro ospf-id?                     uint16
     |     |  +--ro vrf-name                     -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |     |  +--ro router-id?                   inet:ipv4-address
     |     |  +--ro flood-reduction?             empty
     |     |  +--ro rfc1583-compatibility?       empty
     |     |  +--ro database-summary?            empty
     |     |  +--ro bfd-enable-all-interfaces?   empty {feature-list:HAVE_BFD}?
     |     |  +--ro log-adjacency-changes?       ipi-ospf-types:ospf_log_adj_opt_t
     |     |  +--ro shutdown?                    empty
     |     |  +--ro area-border-type?            ipi-ospf-types:ospf_abr_type_t
     |     |  +--ro reference-bandwidth?         uint32
     |     |  +--ro max-database-descriptors?    uint16
     |     |  +--ro p2p-rfc-incompatible?        empty
     |     |  +--ro context-name?                string
     |     |  +--ro dste-status?                 ipi-ospf-types:ospf_dste_status
     |     +--ro link-state-database
     |     |  +--ro state
     |     |     +--ro external-checksum?   yang:phys-address
     |     |     +--ro opaque-checksum?     yang:phys-address
     |     +--rw passive-interfaces
     |     |  +--rw config
     |     |  |  +--rw passive-interface-all?   empty
     |     |  +--ro state
     |     |  |  +--ro passive-interface-all?   empty
     |     |  +--rw passive-interface* [name]
     |     |     +--rw name                 -> ../config/name
     |     |     +--rw config
     |     |     |  +--rw name?           -> /ipi-interface:interfaces/interface/name
     |     |     |  +--rw passive-mode?   ipi-ospf-types:ospf_passive_mode_t
     |     |     +--ro state
     |     |     |  +--ro name?           -> /ipi-interface:interfaces/interface/name
     |     |     |  +--ro passive-mode?   ipi-ospf-types:ospf_passive_mode_t
     |     |     +--rw passive-addresses
     |     |        +--rw passive-address* [address]
     |     |           +--rw address    -> ../config/address
     |     |           +--rw config
     |     |           |  +--rw address?        inet:ipv4-address
     |     |           |  +--rw passive-mode    ipi-ospf-types:ospf_passive_addr_mode_t
     |     |           +--ro state
     |     |              +--ro address?        inet:ipv4-address
     |     |              +--ro passive-mode    ipi-ospf-types:ospf_passive_addr_mode_t
     |     +--rw default-information
     |     |  +--rw config
     |     |  |  +--rw originate?                        empty
     |     |  |  +--rw always-advertise-default-route?   empty
     |     |  |  +--rw metric?                           uint32
     |     |  |  +--rw metric-type?                      ipi-ospf-types:ospf_metric_type_t
     |     |  |  +--rw route-map?                        string
     |     |  +--ro state
     |     |     +--ro originate?                        empty
     |     |     +--ro always-advertise-default-route?   empty
     |     |     +--ro metric?                           uint32
     |     |     +--ro metric-type?                      ipi-ospf-types:ospf_metric_type_t
     |     |     +--ro route-map?                        string
     |     +--rw segment-routing {feature-list:HAVE_SR_MPLS}?
     |     |  +--rw config
     |     |  |  +--rw mpls?   empty
     |     |  +--ro state
     |     |  |  +--ro mpls?   empty
     |     |  +--rw global-blocks {feature-list:HAVE_SR_MPLS}?
     |     |  |  +--rw global-block* [block-base-value block-range-size]
     |     |  |     +--rw block-base-value    -> ../config/block-base-value
     |     |  |     +--rw block-range-size    -> ../config/block-range-size
     |     |  |     +--rw config
     |     |  |     |  +--rw block-base-value?   uint32
     |     |  |     |  +--rw block-range-size?   uint32
     |     |  |     +--ro state
     |     |  |        +--ro block-base-value?   uint32
     |     |  |        +--ro block-range-size?   uint32
     |     |  +--rw prefix-sid-map {feature-list:HAVE_SR_MPLS}?
     |     |  |  +--rw config
     |     |  |  |  +--rw advertise-local?   empty
     |     |  |  |  +--rw disable-receive?   empty
     |     |  |  +--ro state
     |     |  |     +--ro advertise-local?   empty
     |     |  |     +--ro disable-receive?   empty
     |     |  +--ro announce-lists
     |     |  |  +--ro announce-list* [area-id]
     |     |  |     +--ro area-id                    -> ../state/area-id
     |     |  |     +--ro state
     |     |  |     |  +--ro area-id?    inet:ipv4-address
     |     |  |     |  +--ro instance?   uint32
     |     |  |     +--ro external-prefixes-lsa
     |     |  |     |  +--ro external-prefix-lsa* [prefix]
     |     |  |     |     +--ro prefix    -> ../state/prefix
     |     |  |     |     +--ro state
     |     |  |     |        +--ro prefix?               cml-data-types:cml_ipv4_addr_prefix_t
     |     |  |     |        +--ro advertising-router?   inet:ipv4-address
     |     |  |     |        +--ro route-type?           ipi-ospf-types:ospf_prefix_route_type_t
     |     |  |     +--ro external-prefixes-range
     |     |  |        +--ro external-prefix-range* [ls-id]
     |     |  |           +--ro ls-id    -> ../state/ls-id
     |     |  |           +--ro state
     |     |  |              +--ro ls-id?                inet:ipv4-address
     |     |  |              +--ro prefix?               cml-data-types:cml_ipv4_addr_prefix_t
     |     |  |              +--ro advertising-router?   inet:ipv4-address
     |     |  |              +--ro range-size?           uint16
     |     |  +--ro mapping-servers
     |     |  |  +--ro state
     |     |  |  |  +--ro active-entries-count?         yang:counter32
     |     |  |  |  +--ro inactive-entries-count?       yang:counter32
     |     |  |  |  +--ro conflict-resolution-policy?   ipi-ospf-types:ospf_resolution_policy_t
     |     |  |  +--ro active-servers
     |     |  |  |  +--ro active-server* [prefix]
     |     |  |  |     +--ro prefix    -> ../state/prefix
     |     |  |  |     +--ro state
     |     |  |  |        +--ro prefix?               cml-data-types:cml_ipv4_addr_prefix_t
     |     |  |  |        +--ro sid-index?            uint32
     |     |  |  |        +--ro range-size?           uint32
     |     |  |  |        +--ro last-prefix?          cml-data-types:cml_ipv4_addr_prefix_t
     |     |  |  |        +--ro last-sid-index?       uint32
     |     |  |  |        +--ro binding-flags?        empty
     |     |  |  |        +--ro preference?           uint8
     |     |  |  |        +--ro status?               ipi-ospf-types:ospf_sr_mapping_server_status_t
     |     |  |  |        +--ro advertising-router?   inet:ipv4-address
     |     |  |  |        +--ro flags?                uint8
     |     |  |  +--ro inactive-servers
     |     |  |     +--ro inactive-server* [prefix]
     |     |  |        +--ro prefix    -> ../state/prefix
     |     |  |        +--ro state
     |     |  |           +--ro prefix?               cml-data-types:cml_ipv4_addr_prefix_t
     |     |  |           +--ro sid-index?            uint32
     |     |  |           +--ro range-size?           uint32
     |     |  |           +--ro last-prefix?          cml-data-types:cml_ipv4_addr_prefix_t
     |     |  |           +--ro last-sid-index?       uint32
     |     |  |           +--ro binding-flags?        empty
     |     |  |           +--ro preference?           uint8
     |     |  |           +--ro status?               ipi-ospf-types:ospf_sr_mapping_server_status_t
     |     |  |           +--ro advertising-router?   inet:ipv4-address
     |     |  |           +--ro flags?                uint8
     |     |  +--ro capabilities
     |     |     +--ro capability* [advertising-router]
     |     |        +--ro advertising-router    -> ../state/advertising-router
     |     |        +--ro state
     |     |        |  +--ro advertising-router?             inet:ipv4-address
     |     |        |  +--ro algorithms*                     ipi-ospf-types:ospf_sr_algorithm_t
     |     |        |  +--ro entropy-capability?             empty
     |     |        |  +--ro entropy-readable-label-depth?   uint8
     |     |        |  +--ro mapping-server-preference?      uint8
     |     |        +--ro segment-identifier
     |     |           +--ro state
     |     |           |  +--ro total-supported?   uint32
     |     |           |  +--ro range-count?       uint32
     |     |           +--ro sid-ranges
     |     |              +--ro sid-range* [start end]
     |     |                 +--ro start    -> ../state/start
     |     |                 +--ro end      -> ../state/end
     |     |                 +--ro state
     |     |                    +--ro start?   uint32
     |     |                    +--ro end?     uint32
     |     +--rw capability
     |     |  +--rw config
     |     |  |  +--rw disable-cspf?                  empty {feature-list:HAVE_OSPF_CSPF}?
     |     |  |  +--rw enable-vrf-lite?               empty {feature-list:HAVE_VRF_OSPF}?
     |     |  |  +--rw disable-opaque-lsa?            empty {feature-list:HAVE_OPAQUE_LSA}?
     |     |  |  +--rw disable-traffic-engineering?   empty {feature-list:HAVE_OSPF_TE}?
     |     |  |  +--rw disable-graceful-restart?      empty {feature-list:HAVE_RESTART}?
     |     |  |  +--rw link-local-signaling?          empty {feature-list:HAVE_RESTART}?
     |     |  +--ro state
     |     |     +--ro disable-cspf?                  empty {feature-list:HAVE_OSPF_CSPF}?
     |     |     +--ro enable-vrf-lite?               empty {feature-list:HAVE_VRF_OSPF}?
     |     |     +--ro disable-opaque-lsa?            empty {feature-list:HAVE_OPAQUE_LSA}?
     |     |     +--ro disable-traffic-engineering?   empty {feature-list:HAVE_OSPF_TE}?
     |     |     +--ro disable-graceful-restart?      empty {feature-list:HAVE_RESTART}?
     |     |     +--ro link-local-signaling?          empty {feature-list:HAVE_RESTART}?
     |     +--rw areas
     |     |  +--rw area* [area-id]
     |     |  |  +--rw area-id                         -> ../config/area-id
     |     |  |  +--rw config
     |     |  |  |  +--rw area-id?               ipi-ospf-types:ospf_area_t
     |     |  |  |  +--rw authentication-type?   ipi-ospf-types:ospf_area_authentication_type_t
     |     |  |  |  +--rw default-cost?          uint32
     |     |  |  |  +--rw shortcut?              ipi-ospf-types:ospf_area_shortcut_type_t
     |     |  |  +--ro state
     |     |  |  |  +--ro area-id?                   ipi-ospf-types:ospf_area_t
     |     |  |  |  +--ro authentication-type?       ipi-ospf-types:ospf_area_authentication_type_t
     |     |  |  |  +--ro default-cost?              uint32
     |     |  |  |  +--ro shortcut?                  ipi-ospf-types:ospf_area_shortcut_type_t
     |     |  |  |  +--ro interface-count?           yang:counter64
     |     |  |  |  +--ro neighbor-count?            yang:counter64
     |     |  |  |  +--ro spf-last-execution-time?   string
     |     |  |  |  +--ro spf-execution-count?       yang:counter64
     |     |  |  |  +--ro lsa-count?                 yang:counter64
     |     |  |  |  +--ro lsa-checksum?              yang:phys-address
     |     |  |  +--rw interfaces
     |     |  |  |  +--rw interface* [name]
     |     |  |  |     +--rw name          -> ../config/name
     |     |  |  |     +--rw config
     |     |  |  |     |  +--rw name?                  string
     |     |  |  |     |  +--rw cost?                  uint16
     |     |  |  |     |  +--rw network-type?          ipi-ospf-types:ospf_network_t
     |     |  |  |     |  +--rw passive?               empty
     |     |  |  |     |  +--rw priority?              uint8
     |     |  |  |     |  +--rw authentication-type?   ipi-ospf-types:ospf_if_authentication_type_t
     |     |  |  |     |  +--rw key?                   ipi-ospf-types:ospf_md5_password_t
     |     |  |  |     +--ro state
     |     |  |  |     |  +--ro name?                  string
     |     |  |  |     |  +--ro cost?                  uint16
     |     |  |  |     |  +--ro network-type?          ipi-ospf-types:ospf_network_t
     |     |  |  |     |  +--ro passive?               empty
     |     |  |  |     |  +--ro priority?              uint8
     |     |  |  |     |  +--ro authentication-type?   ipi-ospf-types:ospf_if_authentication_type_t
     |     |  |  |     |  +--ro key?                   ipi-ospf-types:ospf_md5_password_t
     |     |  |  |     +--rw enable-bfd {feature-list:HAVE_BFD}?
     |     |  |  |     |  +--rw config
     |     |  |  |     |  |  +--rw enabled?   ipi-ospf-types:ospf_bfd_state
     |     |  |  |     |  +--ro state
     |     |  |  |     |     +--ro enabled?   ipi-ospf-types:ospf_bfd_state
     |     |  |  |     +--rw lsa-filter
     |     |  |  |     |  +--rw config
     |     |  |  |     |  |  +--rw filter-out?   empty
     |     |  |  |     |  +--ro state
     |     |  |  |     |     +--ro filter-out?   empty
     |     |  |  |     +--rw mpls
     |     |  |  |     |  +--rw config
     |     |  |  |     |  |  +--rw traffic-engineering-metric?   uint16 {feature-list:HAVE_OSPF_TE}?
     |     |  |  |     |  +--ro state
     |     |  |  |     |  |  +--ro traffic-engineering-metric?   uint16 {feature-list:HAVE_OSPF_TE}?
     |     |  |  |     |  +--rw igp-ldp-sync
     |     |  |  |     |     +--rw config
     |     |  |  |     |     |  +--rw holddown-timer?        uint32 {feature-list:HAVE_LDPD}?
     |     |  |  |     |     |  +--rw ldp-igp-sync-enable?   empty {feature-list:HAVE_LDPD}?
     |     |  |  |     |     +--ro state
     |     |  |  |     |        +--ro holddown-timer?        uint32 {feature-list:HAVE_LDPD}?
     |     |  |  |     |        +--ro ldp-igp-sync-enable?   empty {feature-list:HAVE_LDPD}?
     |     |  |  |     +--rw timers
     |     |  |  |        +--rw config
     |     |  |  |        |  +--rw dead-interval?             uint16
     |     |  |  |        |  +--rw hello-interval?            uint16
     |     |  |  |        |  +--rw retransmission-interval?   uint16
     |     |  |  |        +--ro state
     |     |  |  |           +--ro dead-interval?             uint16
     |     |  |  |           +--ro hello-interval?            uint16
     |     |  |  |           +--ro retransmission-interval?   uint16
     |     |  |  +--rw stub
     |     |  |  |  +--rw config
     |     |  |  |  |  +--rw is-stub?      empty
     |     |  |  |  |  +--rw no-summary?   empty
     |     |  |  |  +--ro state
     |     |  |  |     +--ro is-stub?      empty
     |     |  |  |     +--ro no-summary?   empty
     |     |  |  +--rw nssas {feature-list:HAVE_NSSA}?
     |     |  |  |  +--rw nssa* [nssa-enable]
     |     |  |  |     +--rw nssa-enable    -> ../config/nssa-enable
     |     |  |  |     +--rw config
     |     |  |  |     |  +--rw nssa-enable?                     ipi-ospf-types:ospf_nssa_t
     |     |  |  |     |  +--rw no-summary?                      empty
     |     |  |  |     |  +--rw stability-interval?              uint32
     |     |  |  |     |  +--rw translator-role?                 ipi-ospf-types:ospf_translator_role_t
     |     |  |  |     |  +--rw no-redistribution?               empty
     |     |  |  |     |  +--rw default-information-originate?   empty
     |     |  |  |     |  +--rw metric?                          uint32
     |     |  |  |     |  +--rw metric-type?                     ipi-ospf-types:ospf_metric_type_t
     |     |  |  |     |  +--rw route-map?                       string
     |     |  |  |     +--ro state
     |     |  |  |        +--ro nssa-enable?                     ipi-ospf-types:ospf_nssa_t
     |     |  |  |        +--ro no-summary?                      empty
     |     |  |  |        +--ro stability-interval?              uint32
     |     |  |  |        +--ro translator-role?                 ipi-ospf-types:ospf_translator_role_t
     |     |  |  |        +--ro no-redistribution?               empty
     |     |  |  |        +--ro default-information-originate?   empty
     |     |  |  |        +--ro metric?                          uint32
     |     |  |  |        +--ro metric-type?                     ipi-ospf-types:ospf_metric_type_t
     |     |  |  |        +--ro route-map?                       string
     |     |  |  |        +--ro translator-count?                yang:counter64
     |     |  |  |        +--ro translator-state?                ipi-ospf-types:ospf_nssa_translator_state_t
     |     |  |  +--rw filter-list {feature-list:HAVE_ACL}?
     |     |  |  |  +--rw prefix-list {feature-list:HAVE_ACL}?
     |     |  |  |  |  +--rw filter-in
     |     |  |  |  |  |  +--rw config
     |     |  |  |  |  |  |  +--rw name?   string
     |     |  |  |  |  |  +--ro state
     |     |  |  |  |  |     +--ro name?   string
     |     |  |  |  |  +--rw filter-out
     |     |  |  |  |     +--rw config
     |     |  |  |  |     |  +--rw name?   string
     |     |  |  |  |     +--ro state
     |     |  |  |  |        +--ro name?   string
     |     |  |  |  +--rw access-control-list {feature-list:HAVE_ACL}?
     |     |  |  |     +--rw filter-in
     |     |  |  |     |  +--rw config
     |     |  |  |     |  |  +--rw name?   string
     |     |  |  |     |  +--ro state
     |     |  |  |     |     +--ro name?   string
     |     |  |  |     +--rw filter-out
     |     |  |  |        +--rw config
     |     |  |  |        |  +--rw name?   string
     |     |  |  |        +--ro state
     |     |  |  |           +--ro name?   string
     |     |  |  +--rw hosts
     |     |  |  |  +--rw host* [ip-address]
     |     |  |  |     +--rw ip-address    -> ../config/ip-address
     |     |  |  |     +--rw config
     |     |  |  |     |  +--rw ip-address?   inet:ipv4-address
     |     |  |  |     |  +--rw cost?         uint16
     |     |  |  |     +--ro state
     |     |  |  |        +--ro ip-address?   inet:ipv4-address
     |     |  |  |        +--ro cost?         uint16
     |     |  |  +--rw networks
     |     |  |  |  +--rw network* [prefix]
     |     |  |  |     +--rw prefix    -> ../config/prefix
     |     |  |  |     +--rw config
     |     |  |  |     |  +--rw prefix?        cml-data-types:cml_ipv4_prefix_t
     |     |  |  |     |  +--rw instance-id    uint8 {feature-list:HAVE_OSPF_MULTI_INST}?
     |     |  |  |     +--ro state
     |     |  |  |        +--ro prefix?        cml-data-types:cml_ipv4_prefix_t
     |     |  |  |        +--ro instance-id    uint8 {feature-list:HAVE_OSPF_MULTI_INST}?
     |     |  |  +--rw area-ranges
     |     |  |  |  +--rw area-range* [address]
     |     |  |  |     +--rw address    -> ../config/address
     |     |  |  |     +--rw config
     |     |  |  |     |  +--rw address?             cml-data-types:cml_ipv4_prefix_t
     |     |  |  |     |  +--rw disable-advertise?   empty
     |     |  |  |     +--ro state
     |     |  |  |        +--ro address?             cml-data-types:cml_ipv4_prefix_t
     |     |  |  |        +--ro disable-advertise?   empty
     |     |  |  +--rw virtual-links
     |     |  |  |  +--rw virtual-link* [remote-router-id]
     |     |  |  |     +--rw remote-router-id                        -> ../config/remote-router-id
     |     |  |  |     +--rw config
     |     |  |  |     |  +--rw remote-router-id?   inet:ipv4-address
     |     |  |  |     +--ro state
     |     |  |  |     |  +--ro remote-router-id?               inet:ipv4-address
     |     |  |  |     |  +--ro name?                           string
     |     |  |  |     |  +--ro interface?                      string
     |     |  |  |     |  +--ro virtual-link-interface-state?   ipi-ospf-types:ospf_vlink_interface_state_t
     |     |  |  |     |  +--ro link-state?                     ipi-ospf-types:ospf_vlink_status_t
     |     |  |  |     |  +--ro adjacency-state?                ipi-ospf-types:ospf_vlink_adj_state_t
     |     |  |  |     |  +--ro hello-packet-due-in?            string
     |     |  |  |     |  +--ro local-address?                  cml-data-types:cml_ipv4_prefix_t
     |     |  |  |     |  +--ro remote-address?                 cml-data-types:cml_ipv4_prefix_t
     |     |  |  |     +--rw bfd
     |     |  |  |     |  +--rw config
     |     |  |  |     |  |  +--rw fall-over?   empty {feature-list:HAVE_BFD}?
     |     |  |  |     |  +--ro state
     |     |  |  |     |     +--ro fall-over?   empty {feature-list:HAVE_BFD}?
     |     |  |  |     +--rw authentication
     |     |  |  |     |  +--rw config
     |     |  |  |     |  |  +--rw authentication-type?   ipi-ospf-types:ospf_if_authentication_type_t
     |     |  |  |     |  |  +--rw key?                   ipi-ospf-types:ospf_md5_password_t
     |     |  |  |     |  +--ro state
     |     |  |  |     |  |  +--ro authentication-type?   ipi-ospf-types:ospf_if_authentication_type_t
     |     |  |  |     |  |  +--ro key?                   ipi-ospf-types:ospf_md5_password_t
     |     |  |  |     |  +--rw message-digests
     |     |  |  |     |     +--rw message-digest* [message-digest-id]
     |     |  |  |     |        +--rw message-digest-id    -> ../config/message-digest-id
     |     |  |  |     |        +--rw config
     |     |  |  |     |        |  +--rw message-digest-id?                uint8
     |     |  |  |     |        |  +--rw message-digest-encryption-type    ipi-ospf-types:ospf_cipher_type_t
     |     |  |  |     |        |  +--rw message-digest-key                ipi-ospf-types:ospf_md5_password_t
     |     |  |  |     |        +--ro state
     |     |  |  |     |           +--ro message-digest-id?                uint8
     |     |  |  |     |           +--ro message-digest-encryption-type    ipi-ospf-types:ospf_cipher_type_t
     |     |  |  |     |           +--ro message-digest-key                ipi-ospf-types:ospf_md5_password_t
     |     |  |  |     +--rw timers
     |     |  |  |     |  +--rw config
     |     |  |  |     |  |  +--rw dead-interval?             uint16
     |     |  |  |     |  |  +--rw hello-interval?            uint16
     |     |  |  |     |  |  +--rw transmit-delay?            uint16
     |     |  |  |     |  |  +--rw retransmission-interval?   uint16
     |     |  |  |     |  +--ro state
     |     |  |  |     |     +--ro dead-interval?             uint16
     |     |  |  |     |     +--ro hello-interval?            uint16
     |     |  |  |     |     +--ro transmit-delay?            uint16
     |     |  |  |     |     +--ro retransmission-interval?   uint16
     |     |  |  |     +--ro virtual-link-interface-state-change
     |     |  |  |     |  +--ro router-id?         inet:ipv4-address
     |     |  |  |     |  +--ro interface-state?   ipi-ospf-types:ospf_interface_state_t
     |     |  |  |     +--ro virtual-neighbor-state-change
     |     |  |  |     |  +--ro router-id?        inet:ipv4-address
     |     |  |  |     |  +--ro neighbor-state?   ipi-ospf-types:ospf_neighbor_state_change_t
     |     |  |  |     +--ro virtual-link-interface-rx-bad-packet
     |     |  |  |     |  +--ro router-id?     inet:ipv4-address
     |     |  |  |     |  +--ro packet-type?   ipi-ospf-types:ospf_packet_type_t
     |     |  |  |     +--ro virtual-link-interface-tx-retransmit
     |     |  |  |     |  +--ro router-id?        inet:ipv4-address
     |     |  |  |     |  +--ro packet-type?      ipi-ospf-types:ospf_packet_type_t
     |     |  |  |     |  +--ro lsdb-type?        ipi-ospf-types:ospf_lsdb_type_t
     |     |  |  |     |  +--ro lsdb-lsid?        inet:ipv4-address
     |     |  |  |     |  +--ro lsdb-router-id?   inet:ipv4-address
     |     |  |  |     +--ro virtual-link-interface-config-error
     |     |  |  |        +--ro router-id?     inet:ipv4-address
     |     |  |  |        +--ro error-type?    ipi-ospf-types:ospf_config_error_type_t
     |     |  |  |        +--ro packet-type?   ipi-ospf-types:ospf_packet_type_t
     |     |  |  +--rw sham-links {feature-list:HAVE_VRF_OSPF,feature-list:HAVE_MPLS}?
     |     |  |  |  +--rw sham-link* [source-id destination-id]
     |     |  |  |     +--rw source-id         -> ../config/source-id
     |     |  |  |     +--rw destination-id    -> ../config/destination-id
     |     |  |  |     +--rw config
     |     |  |  |        +--rw source-id?        inet:ipv4-address
     |     |  |  |        +--rw destination-id?   inet:ipv4-address
     |     |  |  |        +--rw cost?             uint16
     |     |  |  +--ro traffic-engineering-database {feature-list:HAVE_OSPF_CSPF}?
     |     |  |     +--ro link* [advertising-router link-id]
     |     |  |     |  +--ro advertising-router    -> ../state/advertising-router
     |     |  |     |  +--ro link-id               -> ../state/link-id
     |     |  |     |  +--ro state
     |     |  |     |  |  +--ro link-id?              inet:ipv4-address
     |     |  |     |  |  +--ro advertising-router?   inet:ipv4-address
     |     |  |     |  |  +--ro ls-options?           string
     |     |  |     |  |  +--ro ls-opaque-type?       uint32
     |     |  |     |  |  +--ro ls-age?               uint16
     |     |  |     |  |  +--ro ls-type?              ipi-ospf-types:ospf_lsdb_type_t
     |     |  |     |  |  +--ro ls-instance?          string
     |     |  |     |  |  +--ro ls-sequence-number?   string
     |     |  |     |  |  +--ro ls-checksum?          string
     |     |  |     |  |  +--ro ls-length?            uint16
     |     |  |     |  +--ro tlv
     |     |  |     |     +--ro state
     |     |  |     |     |  +--ro type?                           ipi-ospf-types:ospf_tlv_type_t
     |     |  |     |     |  +--ro link-type?                      ipi-ospf-types:ospf_tlv_link_type_t
     |     |  |     |     |  +--ro local-interface-addresses*      inet:ipv4-address
     |     |  |     |     |  +--ro remote-interface-addresses*     inet:ipv4-address
     |     |  |     |     |  +--ro local-ids*                      inet:ipv4-address {feature-list:HAVE_GMPLS}?
     |     |  |     |     |  +--ro remote-ids*                     inet:ipv4-address {feature-list:HAVE_GMPLS}?
     |     |  |     |     |  +--ro local-interface-id?             uint32 {feature-list:HAVE_GMPLS}?
     |     |  |     |     |  +--ro local-remote-interface-id?      uint32 {feature-list:HAVE_GMPLS}?
     |     |  |     |     |  +--ro metric?                         uint32
     |     |  |     |     |  +--ro maximum-bandwidth?              string
     |     |  |     |     |  +--ro maximum-reservable-bandwidth?   string
     |     |  |     |     |  +--ro resource-color-values*          decimal64
     |     |  |     |     |  +--ro protection-type?                cml-data-types:cml_gmpls_protection_type_t
     |     |  |     |     |  +--ro shared-risk-link-groups?        uint32
     |     |  |     |     +--ro capability
     |     |  |     |     |  +--ro state
     |     |  |     |     |  |  +--ro type?                    cml-data-types:cml_gmpls_capability_type_t {feature-list:HAVE_GMPLS}?
     |     |  |     |     |  |  +--ro encoding-type?           cml-data-types:cml_gmpls_encoding_type_t {feature-list:HAVE_GMPLS}?
     |     |  |     |     |  |  +--ro mtu?                     uint16
     |     |  |     |     |  |  +--ro minimum-lsp-bandwidth?   string {feature-list:HAVE_GMPLS}?
     |     |  |     |     |  +--ro maximum-lsp-bandwidths
     |     |  |     |     |     +--ro maximum-lsp-bandwidth* [priority]
     |     |  |     |     |        +--ro priority    -> ../state/priority
     |     |  |     |     |        +--ro state
     |     |  |     |     |           +--ro priority?    uint8
     |     |  |     |     |           +--ro bandwidth?   string
     |     |  |     |     +--ro unreserved-bandwidths
     |     |  |     |     |  +--ro unreserved-bandwidth* [priority]
     |     |  |     |     |     +--ro priority    -> ../state/priority
     |     |  |     |     |     +--ro state
     |     |  |     |     |        +--ro priority?    uint8
     |     |  |     |     |        +--ro bandwidth?   string
     |     |  |     |     +--ro link-delay
     |     |  |     |     |  +--ro state
     |     |  |     |     |     +--ro anomalous-bit?   empty
     |     |  |     |     |     +--ro delay?           uint32
     |     |  |     |     +--ro link-min-max-delay
     |     |  |     |     |  +--ro state
     |     |  |     |     |     +--ro anomalous-bit?   empty
     |     |  |     |     |     +--ro minimum-delay?   uint32
     |     |  |     |     |     +--ro maximum-delay?   uint32
     |     |  |     |     +--ro link-delay-variation
     |     |  |     |     |  +--ro state
     |     |  |     |     |     +--ro delay-variation?   uint32
     |     |  |     |     +--ro link-loss
     |     |  |     |     |  +--ro state
     |     |  |     |     |     +--ro anomalous-bit?   empty
     |     |  |     |     |     +--ro loss?            string
     |     |  |     |     +--ro link-bandwidth
     |     |  |     |        +--ro state
     |     |  |     |           +--ro residual-bandwidth?    string
     |     |  |     |           +--ro available-bandwidth?   string
     |     |  |     |           +--ro utilized-bandwidth?    string
     |     |  |     +--ro router* [router-id]
     |     |  |        +--ro router-id    -> ../state/router-id
     |     |  |        +--ro state
     |     |  |           +--ro router-id?            inet:ipv4-address
     |     |  |           +--ro advertising-router?   inet:ipv4-address
     |     |  |           +--ro ls-options?           string
     |     |  |           +--ro ls-opaque-type?       uint32
     |     |  |           +--ro ls-age?               uint16
     |     |  |           +--ro ls-type?              ipi-ospf-types:ospf_lsdb_type_t
     |     |  |           +--ro ls-instance?          string
     |     |  |           +--ro ls-sequence-number?   string
     |     |  |           +--ro ls-checksum?          string
     |     |  |           +--ro ls-length?            uint16
     |     |  +--rw config
     |     |  |  +--rw maximum-areas-number?   uint32
     |     |  +--ro state
     |     |     +--ro maximum-areas-number?   uint32
     |     +--rw lsdb
     |     |  +--rw overflow
     |     |     +--rw normal-lsa
     |     |     |  +--rw config!
     |     |     |  |  +--rw max-limit     uint32
     |     |     |  |  +--rw limit-type    ipi-ospf-types:ospf_db_limit_type_t
     |     |     |  +--ro state
     |     |     |     +--ro max-limit     uint32
     |     |     |     +--ro limit-type    ipi-ospf-types:ospf_db_limit_type_t
     |     |     +--rw external-lsa {feature-list:HAVE_OSPF_DB_OVERFLOW}?
     |     |     |  +--rw config!
     |     |     |  |  +--rw max-limit        uint32
     |     |     |  |  +--rw exit-interval    uint16
     |     |     |  +--ro state
     |     |     |     +--ro max-limit        uint32
     |     |     |     +--ro exit-interval    uint16
     |     |     +--ro lsdb-overflow-external-lsa
     |     |        +--ro router-id?   -> /ospfv2/processes/process/state/router-id
     |     |        +--ro max-limit?   uint32
     |     +--rw lfa {feature-list:HAVE_OSPF_LFA}?
     |     |  +--rw fast-reroute
     |     |     +--rw config
     |     |     |  +--rw keep-all-paths?     empty
     |     |     |  +--rw remote-lfa-areas*   ipi-ospf-types:ospf_area_t {feature-list:HAVE_LDPD}?
     |     |     |  +--rw route-map?          string
     |     |     +--ro state
     |     |     |  +--ro keep-all-paths?     empty
     |     |     |  +--ro remote-lfa-areas*   ipi-ospf-types:ospf_area_t {feature-list:HAVE_LDPD}?
     |     |     |  +--ro route-map?          string
     |     |     +--rw tie-breaks
     |     |     |  +--rw tie-break* [type]
     |     |     |     +--rw type      -> ../config/type
     |     |     |     +--rw config
     |     |     |     |  +--rw type?   ipi-ospf-types:ospf_frr_tie_break_t
     |     |     |     |  +--rw idx     uint8
     |     |     |     +--ro state
     |     |     |        +--ro type?   ipi-ospf-types:ospf_frr_tie_break_t
     |     |     |        +--ro idx     uint8
     |     |     +--rw topologies-independent-lfa
     |     |        +--rw topology-independent-lfa* [area-id] {feature-list:HAVE_OSPF_TI_LFA}?
     |     |           +--rw area-id         -> ../config/area-id
     |     |           +--rw config
     |     |           |  +--rw area-id?   ipi-ospf-types:ospf_area_t
     |     |           +--ro state
     |     |           |  +--ro area-id?   ipi-ospf-types:ospf_area_t
     |     |           +--ro routes {feature-list:HAVE_OSPF_TI_LFA}?
     |     |           |  +--ro route* [prefix]
     |     |           |     +--ro prefix                   -> ../state/prefix
     |     |           |     +--ro state
     |     |           |     |  +--ro prefix?   cml-data-types:cml_ipv4_addr_prefix_t
     |     |           |     +--ro primary-nexthop-infos
     |     |           |        +--ro primary-nexthop-info* [primary-path-nexthop]
     |     |           |           +--ro primary-path-nexthop    -> ../state/primary-path-nexthop
     |     |           |           +--ro state
     |     |           |              +--ro primary-path-nexthop?     inet:ipv4-address
     |     |           |              +--ro primary-interface-name?   string
     |     |           |              +--ro pq-node?                  inet:ipv4-address
     |     |           |              +--ro p-node-disjoint?          inet:ipv4-address
     |     |           |              +--ro q-node-disjoint?          inet:ipv4-address
     |     |           +--ro neighbors {feature-list:HAVE_OSPF_TI_LFA}?
     |     |           |  +--ro neighbor* [address]
     |     |           |     +--ro address    -> ../state/address
     |     |           |     +--ro state
     |     |           |        +--ro address?           inet:ipv4-address
     |     |           |        +--ro pq-node?           inet:ipv4-address
     |     |           |        +--ro p-node-disjoint?   inet:ipv4-address
     |     |           |        +--ro q-node-disjoint?   inet:ipv4-address
     |     |           +--ro vertices {feature-list:HAVE_OSPF_TI_LFA}?
     |     |           |  +--ro vertex* [ls-id]
     |     |           |     +--ro ls-id           -> ../state/ls-id
     |     |           |     +--ro state
     |     |           |     |  +--ro ls-id?   inet:ipv4-address
     |     |           |     +--ro backup-infos
     |     |           |        +--ro backup-info* [primary-interface-name]
     |     |           |           +--ro primary-interface-name    -> ../state/primary-interface-name
     |     |           |           +--ro state
     |     |           |           |  +--ro primary-interface-name?      string
     |     |           |           |  +--ro backup-out-interface-name?   string
     |     |           |           |  +--ro pq-node?                     inet:ipv4-address
     |     |           |           |  +--ro p-node-disjoint?             inet:ipv4-address
     |     |           |           |  +--ro q-node-disjoint?             inet:ipv4-address
     |     |           |           +--ro p-nodes
     |     |           |           |  +--ro p-node* [address]
     |     |           |           |     +--ro address    -> ../state/address
     |     |           |           |     +--ro state
     |     |           |           |        +--ro address?    inet:ipv4-address
     |     |           |           |        +--ro distance?   uint32
     |     |           |           +--ro q-nodes
     |     |           |              +--ro q-node* [address]
     |     |           |                 +--ro address    -> ../state/address
     |     |           |                 +--ro state
     |     |           |                    +--ro address?    inet:ipv4-address
     |     |           |                    +--ro distance?   uint32
     |     |           +--ro repair-lists
     |     |              +--ro repair-list* [prefix]
     |     |                 +--ro prefix                    -> ../state/prefix
     |     |                 +--ro state
     |     |                 |  +--ro prefix?   cml-data-types:cml_ipv4_addr_prefix_t
     |     |                 +--ro primary-info
     |     |                 |  +--ro state
     |     |                 |     +--ro metric?          uint32
     |     |                 |     +--ro route-ftn-idx?   uint32
     |     |                 |     +--ro route-ilm-idx?   uint32
     |     |                 |     +--ro sr-in-label?     uint32
     |     |                 +--ro nexthop-infos
     |     |                 |  +--ro nexthop-info* [primary-path-nexthop]
     |     |                 |     +--ro primary-path-nexthop    -> ../state/primary-path-nexthop
     |     |                 |     +--ro state
     |     |                 |        +--ro primary-path-nexthop?             inet:ipv4-address
     |     |                 |        +--ro primary-path-interface?           string
     |     |                 |        +--ro segment-routing-outgoing-label?   uint32
     |     |                 |        +--ro backup-outgoing-label?            uint32
     |     |                 |        +--ro bypass-trunk-id?                  uint32
     |     |                 |        +--ro backup-interface-name?            string
     |     |                 |        +--ro pq-node?                          inet:ipv4-address
     |     |                 |        +--ro p-node-disjoint?                  inet:ipv4-address
     |     |                 |        +--ro q-node-disjoint?                  inet:ipv4-address
     |     |                 +--ro segment-routing-trunks
     |     |                    +--ro segment-routing-trunk* [trunk-name]
     |     |                       +--ro trunk-name    -> ../state/trunk-name
     |     |                       +--ro state
     |     |                          +--ro trunk-name?             string
     |     |                          +--ro trunk-id?               uint32
     |     |                          +--ro ftn-id?                 uint32
     |     |                          +--ro ref-cnt?                uint32
     |     |                          +--ro outgoing-label-count?   yang:counter32
     |     |                          +--ro outgoing-labels*        uint32
     |     |                          +--ro next-hop?               inet:ipv4-address
     |     +--rw administrative-distance
     |     |  +--rw config
     |     |  |  +--rw default-distance?   uint8
     |     |  +--ro state
     |     |  |  +--ro default-distance?   uint8
     |     |  +--rw ospf
     |     |  |  +--rw config
     |     |  |  |  +--rw intra-area-distance?        uint8
     |     |  |  |  +--rw inter-area-distance?        uint8
     |     |  |  |  +--rw external-routes-distance?   uint8
     |     |  |  +--ro state
     |     |  |     +--ro intra-area-distance?        uint8
     |     |  |     +--ro inter-area-distance?        uint8
     |     |  |     +--ro external-routes-distance?   uint8
     |     |  +--rw networks
     |     |     +--rw network* [prefix]
     |     |        +--rw prefix    -> ../config/prefix
     |     |        +--rw config
     |     |        |  +--rw prefix?                cml-data-types:cml_ipv4_addr_prefix_t
     |     |        |  +--rw distance?              uint8
     |     |        |  +--rw access-control-list?   string
     |     |        +--ro state
     |     |           +--ro prefix?                cml-data-types:cml_ipv4_addr_prefix_t
     |     |           +--ro distance?              uint8
     |     |           +--ro access-control-list?   string
     |     +--rw summary-addresses
     |     |  +--rw summary-address* [address]
     |     |     +--rw address    -> ../config/address
     |     |     +--rw config
     |     |     |  +--rw address?         cml-data-types:cml_ipv4_prefix_t
     |     |     |  +--rw not-advertise?   empty
     |     |     |  +--rw tag?             uint32
     |     |     +--ro state
     |     |        +--ro address?         cml-data-types:cml_ipv4_prefix_t
     |     |        +--ro not-advertise?   empty
     |     |        +--ro tag?             uint32
     |     +--rw distribute-list {feature-list:HAVE_ACL}?
     |     |  +--rw filter-in
     |     |  |  +--rw config
     |     |  |  |  +--rw access-control-list?   string
     |     |  |  +--ro state
     |     |  |     +--ro access-control-list?   string
     |     |  +--rw filter-out
     |     |     +--rw config
     |     |     |  +--rw access-control-list-isis?        string
     |     |     |  +--rw access-control-list-bgp?         string
     |     |     |  +--rw access-control-list-rip?         string
     |     |     |  +--rw access-control-list-static?      string
     |     |     |  +--rw access-control-list-connected?   string
     |     |     |  +--rw access-control-list-kernel?      string
     |     |     +--ro state
     |     |     |  +--ro access-control-list-isis?        string
     |     |     |  +--ro access-control-list-bgp?         string
     |     |     |  +--ro access-control-list-rip?         string
     |     |     |  +--ro access-control-list-static?      string
     |     |     |  +--ro access-control-list-connected?   string
     |     |     |  +--ro access-control-list-kernel?      string
     |     |     +--rw ospfv2-processes
     |     |        +--rw ospfv2-process* [ospf-process-id]
     |     |           +--rw ospf-process-id    -> ../config/ospf-process-id
     |     |           +--rw config
     |     |           |  +--rw ospf-process-id?                uint16
     |     |           |  +--rw access-control-list-out-ospf?   string
     |     |           +--ro state
     |     |              +--ro ospf-process-id?                uint16
     |     |              +--ro access-control-list-out-ospf?   string
     |     +--rw domain-id
     |     |  +--rw primary-domain {feature-list:HAVE_VRF_OSPF}?
     |     |  |  +--rw config
     |     |  |  |  +--rw primary-domain-id-address?   inet:ipv4-address
     |     |  |  +--ro state
     |     |  |  |  +--ro primary-domain-id-address?   inet:ipv4-address
     |     |  |  +--rw hexes
     |     |  |     +--rw hex* [primary-hex-type primary-domain-id-hex] {feature-list:HAVE_VRF_OSPF}?
     |     |  |        +--rw primary-hex-type         -> ../config/primary-hex-type
     |     |  |        +--rw primary-domain-id-hex    -> ../config/primary-domain-id-hex
     |     |  |        +--rw config
     |     |  |        |  +--rw primary-hex-type?        ipi-ospf-types:ospf_domain_type_t
     |     |  |        |  +--rw primary-domain-id-hex?   ipi-ospf-types:ospf_domain_id_hex_string_t
     |     |  |        +--ro state
     |     |  |           +--ro primary-hex-type?        ipi-ospf-types:ospf_domain_type_t
     |     |  |           +--ro primary-domain-id-hex?   ipi-ospf-types:ospf_domain_id_hex_string_t
     |     |  +--rw secondary-domain
     |     |     +--rw addresses
     |     |     |  +--rw address* [secondary-domain-id-address] {feature-list:HAVE_VRF_OSPF}?
     |     |     |     +--rw secondary-domain-id-address    -> ../config/secondary-domain-id-address
     |     |     |     +--rw config
     |     |     |     |  +--rw secondary-domain-id-address?   inet:ipv4-address
     |     |     |     +--ro state
     |     |     |        +--ro secondary-domain-id-address?   inet:ipv4-address
     |     |     +--rw hexes
     |     |        +--rw hex* [secondary-hex-type secondary-domain-id-hex] {feature-list:HAVE_VRF_OSPF}?
     |     |           +--rw secondary-hex-type         -> ../config/secondary-hex-type
     |     |           +--rw secondary-domain-id-hex    -> ../config/secondary-domain-id-hex
     |     |           +--rw config
     |     |           |  +--rw secondary-hex-type?        ipi-ospf-types:ospf_domain_type_t
     |     |           |  +--rw secondary-domain-id-hex?   ipi-ospf-types:ospf_domain_id_hex_string_t
     |     |           +--ro state
     |     |              +--ro secondary-hex-type?        ipi-ospf-types:ospf_domain_type_t
     |     |              +--ro secondary-domain-id-hex?   ipi-ospf-types:ospf_domain_id_hex_string_t
     |     +--rw distribute {feature-list:HAVE_BGP_LS}?
     |     |  +--rw bgp-link-state
     |     |     +--rw config
     |     |     |  +--rw enabled?          empty
     |     |     |  +--rw throttle-timer?   uint8
     |     |     +--ro state
     |     |        +--ro enabled?          empty
     |     |        +--ro throttle-timer?   uint8
     |     +--rw neighbors
     |     |  +--rw neighbor* [address]
     |     |     +--rw address                  -> ../config/address
     |     |     +--rw config
     |     |     |  +--rw address?         inet:ipv4-address
     |     |     |  +--rw cost?            uint16
     |     |     |  +--rw priority?        uint8
     |     |     |  +--rw poll-interval?   uint32
     |     |     +--ro state
     |     |     |  +--ro address?         inet:ipv4-address
     |     |     |  +--ro cost?            uint16
     |     |     |  +--ro priority?        uint8
     |     |     |  +--ro poll-interval?   uint32
     |     |     +--ro neighbor-state-change
     |     |     |  +--ro router-id?                     inet:ipv4-address
     |     |     |  +--ro address?                       inet:ipv4-address
     |     |     |  +--ro neighbor-address-less-index?   uint32
     |     |     |  +--ro neighbor-router-id?            inet:ipv4-address
     |     |     |  +--ro neighbor-state?                ipi-ospf-types:ospf_neighbor_state_change_t
     |     |     +--ro tx-retransmit
     |     |        +--ro router-id?                     inet:ipv4-address
     |     |        +--ro address?                       inet:ipv4-address
     |     |        +--ro neighbor-address-less-index?   uint32
     |     |        +--ro neighbor-router-id?            inet:ipv4-address
     |     |        +--ro packet-type?                   ipi-ospf-types:ospf_packet_type_t
     |     |        +--ro lsdb-type?                     ipi-ospf-types:ospf_lsdb_type_t
     |     |        +--ro lsdb-lsid?                     inet:ipv4-address
     |     |        +--ro lsdb-router-id?                inet:ipv4-address
     |     +--rw timers
     |     |  +--rw config
     |     |  +--ro state
     |     |  +--rw lfa
     |     |  |  +--rw config
     |     |  |  |  +--rw termination-hold-interval?   uint32 {feature-list:HAVE_OSPF_LFA}?
     |     |  |  +--ro state
     |     |  |     +--ro termination-hold-interval?   uint32 {feature-list:HAVE_OSPF_LFA}?
     |     |  +--rw lsa
     |     |  |  +--rw config
     |     |  |  |  +--rw min-arrival-interval?   uint32
     |     |  |  +--ro state
     |     |  |  |  +--ro min-arrival-interval?   uint32
     |     |  |  +--rw delays
     |     |  |     +--rw delay* [start-delay min-delay max-delay]
     |     |  |        +--rw start-delay    -> ../config/start-delay
     |     |  |        +--rw min-delay      -> ../config/min-delay
     |     |  |        +--rw max-delay      -> ../config/max-delay
     |     |  |        +--rw config
     |     |  |        |  +--rw start-delay?   uint32
     |     |  |        |  +--rw min-delay?     uint32
     |     |  |        |  +--rw max-delay?     uint32
     |     |  |        +--ro state
     |     |  |           +--ro start-delay?   uint32
     |     |  |           +--ro min-delay?     uint32
     |     |  |           +--ro max-delay?     uint32
     |     |  +--rw spf
     |     |     +--rw delay
     |     |        +--rw config!
     |     |        |  +--rw min-delay    uint32
     |     |        |  +--rw max-delay    uint32
     |     |        +--ro state
     |     |           +--ro min-delay    uint32
     |     |           +--ro max-delay    uint32
     |     +--rw redistribute
     |     |  +--rw config
     |     |  |  +--rw default-metric?   uint32
     |     |  +--ro state
     |     |  |  +--ro default-metric?   uint32
     |     |  +--rw routing-protocols
     |     |  |  +--rw routing-protocol* [protocol]
     |     |  |     +--rw protocol    -> ../config/protocol
     |     |  |     +--rw config
     |     |  |     |  +--rw metric?        uint32
     |     |  |     |  +--rw metric-type?   ipi-ospf-types:ospf_metric_type_t
     |     |  |     |  +--rw route-map?     string
     |     |  |     |  +--rw tag?           uint32
     |     |  |     |  +--rw protocol?      ipi-ospf-types:ospf_route_source_type_t
     |     |  |     +--ro state
     |     |  |        +--ro metric?        uint32
     |     |  |        +--ro metric-type?   ipi-ospf-types:ospf_metric_type_t
     |     |  |        +--ro route-map?     string
     |     |  |        +--ro tag?           uint32
     |     |  |        +--ro protocol?      ipi-ospf-types:ospf_route_source_type_t
     |     |  +--rw ospf-processes
     |     |  |  +--rw ospf-process* [ospf-process-id]
     |     |  |     +--rw ospf-process-id    -> ../config/ospf-process-id
     |     |  |     +--rw config
     |     |  |     |  +--rw metric?            uint32
     |     |  |     |  +--rw metric-type?       ipi-ospf-types:ospf_metric_type_t
     |     |  |     |  +--rw route-map?         string
     |     |  |     |  +--rw tag?               uint32
     |     |  |     |  +--rw ospf-process-id?   uint16
     |     |  |     +--ro state
     |     |  |        +--ro metric?            uint32
     |     |  |        +--ro metric-type?       ipi-ospf-types:ospf_metric_type_t
     |     |  |        +--ro route-map?         string
     |     |  |        +--ro tag?               uint32
     |     |  |        +--ro ospf-process-id?   uint16
     |     |  +--rw isis-processes
     |     |     +--rw isis-process* [isis-process-id]
     |     |        +--rw isis-process-id    -> ../config/isis-process-id
     |     |        +--rw config
     |     |        |  +--rw metric?            uint32
     |     |        |  +--rw metric-type?       ipi-ospf-types:ospf_metric_type_t
     |     |        |  +--rw route-map?         string
     |     |        |  +--rw tag?               uint32
     |     |        |  +--rw isis-process-id?   string
     |     |        +--ro state
     |     |           +--ro metric?            uint32
     |     |           +--ro metric-type?       ipi-ospf-types:ospf_metric_type_t
     |     |           +--ro route-map?         string
     |     |           +--ro tag?               uint32
     |     |           +--ro isis-process-id?   string
     |     +--ro originate-lsa
     |     |  +--ro router-id?        -> /ospfv2/processes/process/state/router-id
     |     |  +--ro lsdb-area-id?     inet:ipv4-address
     |     |  +--ro lsdb-type?        ipi-ospf-types:ospf_lsdb_type_t
     |     |  +--ro lsdb-id?          inet:ipv4-address
     |     |  +--ro lsdb-router-id?   inet:ipv4-address
     |     +--rw max-metric {feature-list:HAVE_OSPF_STUB_ROUTER}?
     |     |  +--rw config!
     |     |  |  +--rw enable-max-router-lsa    empty
     |     |  |  +--rw max-external-lsa?        uint32
     |     |  |  +--rw max-summary-lsa?         uint32
     |     |  |  +--rw include-stub?            empty
     |     |  +--ro state
     |     |     +--ro enable-max-router-lsa    empty
     |     |     +--ro max-external-lsa?        uint32
     |     |     +--ro max-summary-lsa?         uint32
     |     |     +--ro include-stub?            empty
     |     +--rw max-metric-on-startup {feature-list:HAVE_OSPF_STUB_ROUTER}?
     |     |  +--rw config!
     |     |  |  +--rw max-on-startup                 uint32
     |     |  |  +--rw max-on-startup-external-lsa?   uint32
     |     |  |  +--rw max-on-startup-summary-lsa?    uint32
     |     |  |  +--rw on-startup-include-stub?       empty
     |     |  +--ro state
     |     |     +--ro max-on-startup                 uint32
     |     |     +--ro max-on-startup-external-lsa?   uint32
     |     |     +--ro max-on-startup-summary-lsa?    uint32
     |     |     +--ro on-startup-include-stub?       empty
     |     +--rw capability-entropy {feature-list:HAVE_SR_MPLS}?
     |        +--rw config
     |        |  +--rw entropy-capability?   empty
     |        +--ro state
     |           +--ro entropy-capability?   empty
     +--rw traffic-engineering-links {feature-list:HAVE_OSPF_TE,feature-list:HAVE_GMPLS}?
     |  +--rw traffic-engineering-link* [teName]
     |     +--rw teName      -> ../config/teName
     |     +--rw config
     |     |  +--rw teName?                string
     |     |  +--rw metric?                uint16
     |     |  +--rw link-local-exchange?   empty
     |     +--ro state
     |     |  +--ro teName?                string
     |     |  +--ro metric?                uint16
     |     |  +--ro link-local-exchange?   empty
     |     +--rw flooding
     |        +--rw ospfv2-processes
     |           +--rw ospfv2-process* [ospf-process-id area-id]
     |              +--rw ospf-process-id    -> ../config/ospf-process-id
     |              +--rw area-id            -> ../config/area-id
     |              +--rw config
     |              |  +--rw ospf-process-id?   uint16
     |              |  +--rw area-id?           ipi-ospf-types:ospf_area_t
     |              +--ro state
     |                 +--ro ospf-process-id?   uint16
     |                 +--ro area-id?           ipi-ospf-types:ospf_area_t
     +--rw multi-area-interfaces {feature-list:HAVE_OSPF_MULTI_AREA}?
     |  +--rw multi-area-interface* [name]
     |     +--rw name                -> ../config/name
     |     +--rw config
     |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
     |     +--ro state
     |     |  +--ro name?   -> /ipi-interface:interfaces/interface/name
     |     +--rw ospfv2-processes
     |        +--rw ospfv2-process* [ospf-process-id]
     |           +--rw ospf-process-id          -> ../config/ospf-process-id
     |           +--rw config
     |           |  +--rw ospf-process-id?   uint16
     |           +--ro state
     |           |  +--ro ospf-process-id?   uint16
     |           +--rw multi-areas
     |           |  +--rw multi-area* [area-id]
     |           |     +--rw area-id    -> ../config/area-id
     |           |     +--rw config
     |           |     |  +--rw area-id?   ipi-ospf-types:ospf_area_t
     |           |     +--ro state
     |           |        +--ro area-id?   ipi-ospf-types:ospf_area_t
     |           +--rw multi-areas-neighbors
     |              +--rw multi-area-neighbor* [area-id]
     |                 +--rw area-id    -> ../config/area-id
     |                 +--rw config
     |                 |  +--rw area-id?    ipi-ospf-types:ospf_area_t
     |                 |  +--rw neighbor    inet:ipv4-address
     |                 +--ro state
     |                    +--ro area-id?    ipi-ospf-types:ospf_area_t
     |                    +--ro neighbor    inet:ipv4-address
     +--rw debug
     |  +--rw config
     |  |  +--rw bfd?                        empty {feature-list:HAVE_BFD}?
     |  |  +--rw rate-limit?                 empty
     |  |  +--rw segment-routing?            empty {feature-list:HAVE_SR_MPLS}?
     |  |  +--rw route?                      ipi-ospf-types:ospf_debug_route_t
     |  |  +--rw rib?                        ipi-ospf-types:ospf_debug_rib_t {feature-list:HAVE_RIBD}?
     |  |  +--rw nsm?                        ipi-ospf-types:ospf_debug_nsm_t
     |  |  +--rw nfsm?                       ipi-ospf-types:ospf_debug_nfsm_t
     |  |  +--rw lsa?                        ipi-ospf-types:ospf_debug_lsa_t
     |  |  +--rw ifsm?                       ipi-ospf-types:ospf_debug_ifsm_t
     |  |  +--rw events?                     ipi-ospf-types:ospf_debug_event_t
     |  |  +--rw cspf-events?                empty {feature-list:HAVE_OSPF_CSPF}?
     |  |  +--rw cspf-hexdump?               empty {feature-list:HAVE_OSPF_CSPF}?
     |  |  +--rw retransmission?             empty
     |  |  +--rw distribute?                 empty {feature-list:HAVE_BGP_LS}?
     |  |  +--rw topology-independent-lfa?   empty {feature-list:HAVE_OSPF_TI_LFA}?
     |  |  +--rw lfa?                        empty {feature-list:HAVE_OSPF_LFA}?
     |  |  +--rw policy?                     empty
     |  |  +--rw redistribute?               ipi-ospf-types:ospf_debug_redist_t
     |  |  +--rw graceful-restart?           ipi-ospf-types:ospf_debug_graceful_t
     |  |  +--rw packet-hello?               ipi-ospf-types:ospf_debug_packet_options_t
     |  |  +--rw packet-dd?                  ipi-ospf-types:ospf_debug_packet_options_t
     |  |  +--rw packet-ls-request?          ipi-ospf-types:ospf_debug_packet_options_t
     |  |  +--rw packet-ls-update?           ipi-ospf-types:ospf_debug_packet_options_t
     |  |  +--rw packet-ls-ack?              ipi-ospf-types:ospf_debug_packet_options_t
     |  +--ro state
     |     +--ro bfd?                        empty {feature-list:HAVE_BFD}?
     |     +--ro rate-limit?                 empty
     |     +--ro segment-routing?            empty {feature-list:HAVE_SR_MPLS}?
     |     +--ro route?                      ipi-ospf-types:ospf_debug_route_t
     |     +--ro rib?                        ipi-ospf-types:ospf_debug_rib_t {feature-list:HAVE_RIBD}?
     |     +--ro nsm?                        ipi-ospf-types:ospf_debug_nsm_t
     |     +--ro nfsm?                       ipi-ospf-types:ospf_debug_nfsm_t
     |     +--ro lsa?                        ipi-ospf-types:ospf_debug_lsa_t
     |     +--ro ifsm?                       ipi-ospf-types:ospf_debug_ifsm_t
     |     +--ro events?                     ipi-ospf-types:ospf_debug_event_t
     |     +--ro cspf-events?                empty {feature-list:HAVE_OSPF_CSPF}?
     |     +--ro cspf-hexdump?               empty {feature-list:HAVE_OSPF_CSPF}?
     |     +--ro retransmission?             empty
     |     +--ro distribute?                 empty {feature-list:HAVE_BGP_LS}?
     |     +--ro topology-independent-lfa?   empty {feature-list:HAVE_OSPF_TI_LFA}?
     |     +--ro lfa?                        empty {feature-list:HAVE_OSPF_LFA}?
     |     +--ro policy?                     empty
     |     +--ro redistribute?               ipi-ospf-types:ospf_debug_redist_t
     |     +--ro graceful-restart?           ipi-ospf-types:ospf_debug_graceful_t
     |     +--ro packet-hello?               ipi-ospf-types:ospf_debug_packet_options_t
     |     +--ro packet-dd?                  ipi-ospf-types:ospf_debug_packet_options_t
     |     +--ro packet-ls-request?          ipi-ospf-types:ospf_debug_packet_options_t
     |     +--ro packet-ls-update?           ipi-ospf-types:ospf_debug_packet_options_t
     |     +--ro packet-ls-ack?              ipi-ospf-types:ospf_debug_packet_options_t
     |     +--ro terminal-debug-status
     |        +--ro bfd?                        cml-data-types:cml_on_off_t {feature-list:HAVE_BFD}?
     |        +--ro rate-limit?                 cml-data-types:cml_on_off_t
     |        +--ro segment-routing?            cml-data-types:cml_on_off_t {feature-list:HAVE_SR_MPLS}?
     |        +--ro route?                      ipi-ospf-types:ospf_debug_route_t
     |        +--ro rib?                        ipi-ospf-types:ospf_debug_rib_t {feature-list:HAVE_RIBD}?
     |        +--ro nsm?                        ipi-ospf-types:ospf_debug_nsm_t
     |        +--ro nfsm?                       ipi-ospf-types:ospf_debug_nfsm_t
     |        +--ro lsa?                        ipi-ospf-types:ospf_debug_lsa_t
     |        +--ro ifsm?                       ipi-ospf-types:ospf_debug_ifsm_t
     |        +--ro events?                     ipi-ospf-types:ospf_debug_event_t
     |        +--ro cspf-events?                cml-data-types:cml_on_off_t {feature-list:HAVE_OSPF_CSPF}?
     |        +--ro cspf-hexdump?               cml-data-types:cml_on_off_t {feature-list:HAVE_OSPF_CSPF}?
     |        +--ro retransmission?             cml-data-types:cml_on_off_t
     |        +--ro distribute?                 cml-data-types:cml_on_off_t {feature-list:HAVE_BGP_LS}?
     |        +--ro topology-independent-lfa?   cml-data-types:cml_on_off_t {feature-list:HAVE_OSPF_TI_LFA}?
     |        +--ro lfa?                        cml-data-types:cml_on_off_t {feature-list:HAVE_OSPF_LFA}?
     |        +--ro policy?                     cml-data-types:cml_on_off_t
     |        +--ro redistribute?               ipi-ospf-types:ospf_debug_redist_t
     |        +--ro graceful-restart?           ipi-ospf-types:ospf_debug_graceful_t
     |        +--ro packet-hello?               ipi-ospf-types:ospf_debug_packet_options_t
     |        +--ro packet-dd?                  ipi-ospf-types:ospf_debug_packet_options_t
     |        +--ro packet-ls-request?          ipi-ospf-types:ospf_debug_packet_options_t
     |        +--ro packet-ls-update?           ipi-ospf-types:ospf_debug_packet_options_t
     |        +--ro packet-ls-ack?              ipi-ospf-types:ospf_debug_packet_options_t
     +--rw interfaces
        +--rw interface* [name]
           +--rw name                -> ../config/name
           +--rw config
           |  +--rw cost?                         uint16
           |  +--rw priority?                     uint8
           |  +--rw mtu-ignore?                   empty
           |  +--rw name?                         -> /ipi-interface:interfaces/interface/name
           |  +--rw network-type?                 ipi-ospf-types:ospf_network_t
           |  +--rw disable-all-ospf?             empty
           |  +--rw traffic-engineering-metric?   uint16 {feature-list:HAVE_OSPF_TE}?
           |  +--rw mtu?                          uint16
           |  +--rw enable-flood-reduction?       empty
           |  +--rw enable-demand-circuit?        empty {feature-list:HAVE_OSPF_OD,feature-list:HAVE_OSPF_MULTI_INST}?
           |  +--rw enable-bfd?                   ipi-ospf-types:ospf_bfd_state {feature-list:HAVE_BFD}?
           |  +--rw disable-fast-reroute?         empty {feature-list:HAVE_OSPF_LFA}?
           +--ro state
           |  +--ro cost?                         uint16
           |  +--ro priority?                     uint8
           |  +--ro mtu-ignore?                   empty
           |  +--ro name?                         -> /ipi-interface:interfaces/interface/name
           |  +--ro network-type?                 ipi-ospf-types:ospf_network_t
           |  +--ro disable-all-ospf?             empty
           |  +--ro traffic-engineering-metric?   uint16 {feature-list:HAVE_OSPF_TE}?
           |  +--ro mtu?                          uint16
           |  +--ro enable-flood-reduction?       empty
           |  +--ro enable-demand-circuit?        empty {feature-list:HAVE_OSPF_OD,feature-list:HAVE_OSPF_MULTI_INST}?
           |  +--ro enable-bfd?                   ipi-ospf-types:ospf_bfd_state {feature-list:HAVE_BFD}?
           |  +--ro disable-fast-reroute?         empty {feature-list:HAVE_OSPF_LFA}?
           |  +--ro link-state-change
           |  |  +--ro router-id?                inet:ipv4-address
           |  |  +--ro name?                     string
           |  |  +--ro interface-address?        inet:ipv4-address
           |  |  +--ro address-less-interface?   uint32
           |  |  +--ro interface-state?          ipi-ospf-types:ospf_interface_state_t
           |  +--ro rx-bad-packet
           |  |  +--ro router-id?                inet:ipv4-address
           |  |  +--ro name?                     string
           |  |  +--ro interface-address?        inet:ipv4-address
           |  |  +--ro address-less-interface?   uint32
           |  |  +--ro packet-src?               inet:ipv4-address
           |  |  +--ro packet-type?              ipi-ospf-types:ospf_packet_type_t
           |  +--ro interface-config-error
           |     +--ro router-id?                inet:ipv4-address
           |     +--ro name?                     string
           |     +--ro interface-address?        inet:ipv4-address
           |     +--ro address-less-interface?   uint32
           |     +--ro error-type?               ipi-ospf-types:ospf_config_error_type_t
           |     +--ro packet-type?              ipi-ospf-types:ospf_packet_type_t
           +--ro interface-states
           |  +--ro state
           |  |  +--ro interface-state?         int32
           |  |  +--ro lsa-count?               int32
           |  |  +--ro lsa-checksum?            int32
           |  |  +--ro interface-events?        int32
           |  |  +--ro addressless-interface?   int32
           |  +--ro statistics
           |  |  +--ro errors
           |  |  |  +--ro discarded-in?             yang:counter64
           |  |  |  +--ro discarded-out?            yang:counter64
           |  |  |  +--ro hello-in?                 yang:counter64
           |  |  |  +--ro database-descriptor-in?   yang:counter64
           |  |  |  +--ro ls-request-in?            yang:counter64
           |  |  |  +--ro ls-update-in?             yang:counter64
           |  |  |  +--ro ls-acknowledge-in?        yang:counter64
           |  |  |  +--ro unknown-in?               yang:counter64
           |  |  |  +--ro unknown-out?              yang:counter64
           |  |  |  +--ro bad-version?              yang:counter64
           |  |  |  +--ro bad-crc?                  yang:counter64
           |  |  |  +--ro invalid-source?           yang:counter64
           |  |  |  +--ro invalid-destination?      yang:counter64
           |  |  |  +--ro no-neighbor?              yang:counter64
           |  |  |  +--ro passive?                  yang:counter64
           |  |  |  +--ro wrong-area?               yang:counter64
           |  |  |  +--ro packet-length?            yang:counter64
           |  |  |  +--ro authentication?           yang:counter64
           |  |  +--ro traffic
           |  |     +--ro total-packets-in?                  yang:counter64
           |  |     +--ro total-packets-out?                 yang:counter64
           |  |     +--ro hello-packets-in?                  yang:counter64
           |  |     +--ro hello-packets-out?                 yang:counter64
           |  |     +--ro database-descriptor-packets-in?    yang:counter64
           |  |     +--ro database-descriptor-packets-out?   yang:counter64
           |  |     +--ro ls-request-packets-in?             yang:counter64
           |  |     +--ro ls-request-packets-out?            yang:counter64
           |  |     +--ro ls-update-packets-in?              yang:counter64
           |  |     +--ro ls-update-packets-out?             yang:counter64
           |  |     +--ro ls-acknowledge-packets-in?         yang:counter64
           |  |     +--ro ls-acknowledge-packets-out?        yang:counter64
           |  +--ro designated-router
           |  |  +--ro state
           |  |     +--ro router-id?   inet:ipv4-address
           |  |     +--ro address?     inet:ipv4-address
           |  +--ro backup-designated-router
           |  |  +--ro state
           |  |     +--ro router-id?   inet:ipv4-address
           |  |     +--ro address?     inet:ipv4-address
           |  +--ro timers
           |     +--ro state
           |        +--ro runtime-dead-interval?   uint32
           +--rw authentication
           |  +--rw config
           |  |  +--rw authentication-type?   ipi-ospf-types:ospf_if_authentication_type_t
           |  |  +--rw key?                   ipi-ospf-types:ospf_md5_password_t
           |  +--ro state
           |  |  +--ro authentication-type?   ipi-ospf-types:ospf_if_authentication_type_t
           |  |  +--ro key?                   ipi-ospf-types:ospf_md5_password_t
           |  +--rw message-digests
           |     +--rw message-digest* [message-digest-id]
           |        +--rw message-digest-id    -> ../config/message-digest-id
           |        +--rw config
           |        |  +--rw message-digest-id?                uint8
           |        |  +--rw message-digest-encryption-type    ipi-ospf-types:ospf_cipher_type_t
           |        |  +--rw message-digest-key                ipi-ospf-types:ospf_md5_password_t
           |        +--ro state
           |           +--ro message-digest-id?                uint8
           |           +--ro message-digest-encryption-type    ipi-ospf-types:ospf_cipher_type_t
           |           +--ro message-digest-key                ipi-ospf-types:ospf_md5_password_t
           +--rw database-filter
           |  +--rw lsa
           |     +--rw config
           |     |  +--rw filter-out?   empty
           |     +--ro state
           |        +--ro filter-out?   empty
           +--rw timers
           |  +--rw config
           |  |  +--rw ldp-igp-sync-enable?       empty {feature-list:HAVE_LDPD}?
           |  |  +--rw dead-interval?             uint16
           |  |  +--rw hello-interval?            uint16
           |  |  +--rw retransmission-interval?   uint16
           |  |  +--rw holddown-timer?            uint32 {feature-list:HAVE_LDPD}?
           |  |  +--rw transmit-delay?            uint16
           |  |  +--rw resync-timeout?            uint16
           |  +--ro state
           |     +--ro ldp-igp-sync-enable?       empty {feature-list:HAVE_LDPD}?
           |     +--ro dead-interval?             uint16
           |     +--ro hello-interval?            uint16
           |     +--ro retransmission-interval?   uint16
           |     +--ro holddown-timer?            uint32 {feature-list:HAVE_LDPD}?
           |     +--ro transmit-delay?            uint16
           |     +--ro resync-timeout?            uint16
           +--rw addresses
              +--rw address* [interface-address]
                 +--rw interface-address    -> ../config/interface-address
                 +--rw config
                 |  +--rw interface-address?   inet:ipv4-address
                 |  +--rw cost?                uint16
                 |  +--rw priority?            uint8
                 |  +--rw mtu-ignore?          empty
                 +--ro state
                 |  +--ro interface-address?          inet:ipv4-address
                 |  +--ro cost?                       uint16
                 |  +--ro priority?                   uint8
                 |  +--ro mtu-ignore?                 empty
                 |  +--ro designated-router
                 |  |  +--ro state
                 |  |     +--ro router-id?   inet:ipv4-address
                 |  |     +--ro address?     inet:ipv4-address
                 |  +--ro backup-designated-router
                 |  |  +--ro state
                 |  |     +--ro router-id?   inet:ipv4-address
                 |  |     +--ro address?     inet:ipv4-address
                 |  +--ro timers
                 |     +--ro state
                 |        +--ro runtime-dead-interval?   uint32
                 +--rw authentication
                 |  +--rw config
                 |  |  +--rw authentication-type?   ipi-ospf-types:ospf_if_authentication_type_t
                 |  |  +--rw key?                   ipi-ospf-types:ospf_md5_password_t
                 |  +--ro state
                 |  |  +--ro authentication-type?   ipi-ospf-types:ospf_if_authentication_type_t
                 |  |  +--ro key?                   ipi-ospf-types:ospf_md5_password_t
                 |  +--rw message-digests
                 |     +--rw message-digest* [message-digest-id]
                 |        +--rw message-digest-id    -> ../config/message-digest-id
                 |        +--rw config
                 |        |  +--rw message-digest-id?                uint8
                 |        |  +--rw message-digest-encryption-type    ipi-ospf-types:ospf_cipher_type_t
                 |        |  +--rw message-digest-key                ipi-ospf-types:ospf_md5_password_t
                 |        +--ro state
                 |           +--ro message-digest-id?                uint8
                 |           +--ro message-digest-encryption-type    ipi-ospf-types:ospf_cipher_type_t
                 |           +--ro message-digest-key                ipi-ospf-types:ospf_md5_password_t
                 +--rw timers
                 |  +--rw config
                 |  |  +--rw dead-interval?             uint16
                 |  |  +--rw hello-interval?            uint16
                 |  |  +--rw retransmission-interval?   uint16
                 |  |  +--rw transmit-delay?            uint16
                 |  |  +--rw resync-timeout?            uint16
                 |  +--ro state
                 |     +--ro dead-interval?             uint16
                 |     +--ro hello-interval?            uint16
                 |     +--ro retransmission-interval?   uint16
                 |     +--ro transmit-delay?            uint16
                 |     +--ro resync-timeout?            uint16
                 +--rw database-filter
                    +--rw lsa
                       +--rw config
                       |  +--rw filter-out?   empty
                       +--ro state
                          +--ro filter-out?   empty
 
  rpcs:
    +---x ospfv2-terminal-debug-ospf-all-on {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-ospf-all-off {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-bfd-on {feature-list:HAVE_BFD}?
    +---x ospfv2-terminal-debug-bfd-off {feature-list:HAVE_BFD}?
    +---x ospfv2-terminal-debug-rate-limit-on {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-rate-limit-off {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-sr-on {feature-list:HAVE_SR_MPLS}?
    +---x ospfv2-terminal-debug-sr-off {feature-list:HAVE_SR_MPLS}?
    +---x ospfv2-terminal-debug-route-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w route    ipi-ospf-types:ospf_debug_route_t
    +---x ospfv2-terminal-debug-route-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w route    ipi-ospf-types:ospf_debug_route_t
    +---x ospfv2-terminal-debug-rib-on {feature-list:HAVE_RIBD}?
    |  +---w input
    |     +---w rib    ipi-ospf-types:ospf_debug_rib_t
    +---x ospfv2-terminal-debug-rib-off {feature-list:HAVE_RIBD}?
    |  +---w input
    |     +---w rib    ipi-ospf-types:ospf_debug_rib_t
    +---x ospfv2-terminal-debug-packet-all-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w all    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-all-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w all    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-hello-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w hello    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-hello-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w hello    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-dd-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w dd    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-dd-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w dd    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-ls-request-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w ls-request    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-ls-request-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w ls-request    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-ls-update-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w ls-update    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-ls-update-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w ls-update    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-ls-ack-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w ls-ack    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-packet-ls-ack-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w ls-ack    ipi-ospf-types:ospf_debug_packet_options_t
    +---x ospfv2-terminal-debug-nsm-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w nsm    ipi-ospf-types:ospf_debug_nsm_t
    +---x ospfv2-terminal-debug-nsm-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w nsm    ipi-ospf-types:ospf_debug_nsm_t
    +---x ospfv2-terminal-debug-nfsm-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w nfsm    ipi-ospf-types:ospf_debug_nfsm_t
    +---x ospfv2-terminal-debug-nfsm-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w nfsm    ipi-ospf-types:ospf_debug_nfsm_t
    +---x ospfv2-terminal-debug-lsa-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w lsa    ipi-ospf-types:ospf_debug_lsa_t
    +---x ospfv2-terminal-debug-lsa-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w lsa    ipi-ospf-types:ospf_debug_lsa_t
    +---x ospfv2-terminal-debug-ifsm-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w ifsm    ipi-ospf-types:ospf_debug_ifsm_t
    +---x ospfv2-terminal-debug-ifsm-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w ifsm    ipi-ospf-types:ospf_debug_ifsm_t
    +---x ospfv2-terminal-debug-events-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w events    ipi-ospf-types:ospf_debug_event_t
    +---x ospfv2-terminal-debug-events-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w events    ipi-ospf-types:ospf_debug_event_t
    +---x ospfv2-terminal-debug-cspf-all-on {feature-list:HAVE_OSPF_CSPF}?
    +---x ospfv2-terminal-debug-cspf-all-off {feature-list:HAVE_OSPF_CSPF}?
    +---x ospfv2-terminal-debug-cspf-events-on {feature-list:HAVE_OSPF_CSPF}?
    +---x ospfv2-terminal-debug-cspf-events-off {feature-list:HAVE_OSPF_CSPF}?
    +---x ospfv2-terminal-debug-cspf-hexdump-on {feature-list:HAVE_OSPF_CSPF}?
    +---x ospfv2-terminal-debug-cspf-hexdump-off {feature-list:HAVE_OSPF_CSPF}?
    +---x ospfv2-terminal-debug-all-on {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-all-off {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-retransmission-on {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-retransmission-off {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-dist-ls-on {feature-list:HAVE_BGP_LS}?
    +---x ospfv2-terminal-debug-dist-ls-off {feature-list:HAVE_BGP_LS}?
    +---x ospfv2-terminal-debug-topology-independent-lfa-on {feature-list:HAVE_OSPF_TI_LFA}?
    +---x ospfv2-terminal-debug-topology-independent-lfa-off {feature-list:HAVE_OSPF_TI_LFA}?
    +---x ospfv2-terminal-debug-lfa-on {feature-list:HAVE_OSPF_LFA}?
    +---x ospfv2-terminal-debug-lfa-off {feature-list:HAVE_OSPF_LFA}?
    +---x ospfv2-terminal-debug-policy-on {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-policy-off {feature-list:HAVE_OSPFD}?
    +---x ospfv2-terminal-debug-redistribute-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w redistribute    ipi-ospf-types:ospf_debug_redist_t
    +---x ospfv2-terminal-debug-redistribute-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w redistribute    ipi-ospf-types:ospf_debug_redist_t
    +---x ospfv2-terminal-debug-graceful-restart-on {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w graceful-restart    ipi-ospf-types:ospf_debug_graceful_t
    +---x ospfv2-terminal-debug-graceful-restart-off {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w graceful-restart    ipi-ospf-types:ospf_debug_graceful_t
    +---x ospfv2-clear-process {feature-list:HAVE_OSPFD}?
    |  +---w input
    |     +---w process-id    uint16
    +---x ospfv2-clear-process-all {feature-list:HAVE_OSPFD}?
    +---x ospfv2-restart-graceful {feature-list:HAVE_RESTART}?
    |  +---w input
    |     +---w grace-period    uint16
    +---x ospfv2-snmp-restart {feature-list:HAVE_SNMP}?
 
  notifications:
    +---n ospfv2-neighbor-state-change
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro address?                       inet:ipv4-address
    |  +--ro ospf-id?                       uint16
    |  +--ro router-id?                     inet:ipv4-address
    |  +--ro neighbor-address-less-index?   uint32
    |  +--ro neighbor-router-id?            inet:ipv4-address
    |  +--ro neighbor-state?                ipi-ospf-types:ospf_neighbor_state_change_t
    +---n ospfv2-tx-retransmit
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro address?                       inet:ipv4-address
    |  +--ro ospf-id?                       uint16
    |  +--ro router-id?                     inet:ipv4-address
    |  +--ro neighbor-address-less-index?   uint32
    |  +--ro neighbor-router-id?            inet:ipv4-address
    |  +--ro packet-type?                   ipi-ospf-types:ospf_packet_type_t
    |  +--ro lsdb-type?                     ipi-ospf-types:ospf_lsdb_type_t
    |  +--ro lsdb-lsid?                     inet:ipv4-address
    |  +--ro lsdb-router-id?                inet:ipv4-address
    +---n ospfv2-originate-lsa
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro ospf-id?          uint16
    |  +--ro router-id?        inet:ipv4-address
    |  +--ro lsdb-area-id?     inet:ipv4-address
    |  +--ro lsdb-type?        ipi-ospf-types:ospf_lsdb_type_t
    |  +--ro lsdb-id?          inet:ipv4-address
    |  +--ro lsdb-router-id?   inet:ipv4-address
    +---n ospfv2-lsdb-overflow-external-lsa
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro ospf-id?      uint16
    |  +--ro router-id?    inet:ipv4-address
    |  +--ro max-limit?    uint32
    +---n ospfv2-virtual-link-interface-config-error
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?   inet:ipv4-address
    |  +--ro area-id?            ipi-ospf-types:ospf_area_t
    |  +--ro ospf-id?            uint16
    |  +--ro router-id?          inet:ipv4-address
    |  +--ro error-type?         ipi-ospf-types:ospf_config_error_type_t
    |  +--ro packet-type?        ipi-ospf-types:ospf_packet_type_t
    +---n ospfv2-virtual-link-interface-state-change
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?   inet:ipv4-address
    |  +--ro area-id?            ipi-ospf-types:ospf_area_t
    |  +--ro ospf-id?            uint16
    |  +--ro router-id?          inet:ipv4-address
    |  +--ro interface-state?    ipi-ospf-types:ospf_interface_state_t
    +---n ospfv2-virtual-neighbor-state-change
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?   inet:ipv4-address
    |  +--ro area-id?            ipi-ospf-types:ospf_area_t
    |  +--ro ospf-id?            uint16
    |  +--ro router-id?          inet:ipv4-address
    |  +--ro neighbor-state?     ipi-ospf-types:ospf_neighbor_state_change_t
    +---n ospfv2-virtual-link-interface-rx-bad-packet
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?   inet:ipv4-address
    |  +--ro area-id?            ipi-ospf-types:ospf_area_t
    |  +--ro ospf-id?            uint16
    |  +--ro router-id?          inet:ipv4-address
    |  +--ro packet-type?        ipi-ospf-types:ospf_packet_type_t
    +---n ospfv2-virtual-link-interface-tx-retransmit
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?   inet:ipv4-address
    |  +--ro area-id?            ipi-ospf-types:ospf_area_t
    |  +--ro ospf-id?            uint16
    |  +--ro router-id?          inet:ipv4-address
    |  +--ro packet-type?        ipi-ospf-types:ospf_packet_type_t
    |  +--ro lsdb-type?          ipi-ospf-types:ospf_lsdb_type_t
    |  +--ro lsdb-lsid?          inet:ipv4-address
    |  +--ro lsdb-router-id?     inet:ipv4-address
    +---n ospfv2-interface-link-state-change
    |  +--ro severity?                 cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?               cml-data-types:cml_notif_class_t
    |  +--ro name?                     string
    |  +--ro router-id?                inet:ipv4-address
    |  +--ro interface-address?        inet:ipv4-address
    |  +--ro address-less-interface?   uint32
    |  +--ro interface-state?          ipi-ospf-types:ospf_interface_state_t
    +---n ospfv2-interface-rx-bad-packet
    |  +--ro severity?                 cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?               cml-data-types:cml_notif_class_t
    |  +--ro name?                     string
    |  +--ro router-id?                inet:ipv4-address
    |  +--ro interface-address?        inet:ipv4-address
    |  +--ro address-less-interface?   uint32
    |  +--ro packet-src?               inet:ipv4-address
    |  +--ro packet-type?              ipi-ospf-types:ospf_packet_type_t
    +---n ospfv2-interface-config-error
       +--ro severity?                 cml-data-types:cml_notif_severity_t
       +--ro eventClass?               cml-data-types:cml_notif_class_t
       +--ro name?                     string
       +--ro router-id?                inet:ipv4-address
       +--ro interface-address?        inet:ipv4-address
       +--ro address-less-interface?   uint32
       +--ro error-type?               ipi-ospf-types:ospf_config_error_type_t
       +--ro packet-type?              ipi-ospf-types:ospf_packet_type_t
 
 
 
 
 
 
 
 
 
 
 
 
module: ipi-ospfv3
  +--rw ospfv3
     +--rw global
     |  +--rw config
     |  |  +--rw display-route-on-single-line?   empty
     |  +--ro state
     |  |  +--ro display-route-on-single-line?   empty
     |  +--rw graceful-restart {feature-list:HAVE_RESTART}?
     |     +--rw config
     |     |  +--rw grace-period?               uint16
     |     |  +--rw controlled-restarts-only?   empty
     |     +--ro state
     |     |  +--ro grace-period?               uint16
     |     |  +--ro controlled-restarts-only?   empty
     |     +--rw helper
     |        +--rw config
     |        |  +--rw max-grace-period?        uint16
     |        |  +--rw disable-all-neighbors?   empty
     |        |  +--rw disable-neighbor*        inet:ipv4-address
     |        +--ro state
     |           +--ro max-grace-period?        uint16
     |           +--ro disable-all-neighbors?   empty
     |           +--ro disable-neighbor*        inet:ipv4-address
     +--rw processes
     |  +--rw process* [ospfv3-id]
     |     +--rw ospfv3-id                  -> ../config/ospfv3-id
     |     +--rw config
     |     |  +--rw ospfv3-id?                   ipi-ospfv3-types:ospfv3_string_t
     |     |  +--rw vrf-name                     -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--rw router-id?                   inet:ipv4-address
     |     |  +--rw bfd-enable-all-interfaces?   empty {feature-list:HAVE_BFD}?
     |     |  +--rw database-summary?            empty
     |     |  +--rw area-border-type?            ipi-ospfv3-types:ospfv3_abr_type_t
     |     |  +--rw default-metric?              uint32
     |     |  +--rw shutdown?                    empty
     |     |  +--rw log-adjacency-changes?       ipi-ospfv3-types:ospfv3_log_adj_opt_t
     |     |  +--rw reference-bandwidth?         uint32
     |     |  +--rw max-database-descriptors?    uint16
     |     +--ro state
     |     |  +--ro statistics
     |     |  |  +--ro up-time?                    string
     |     |  |  +--ro database-description-in?    yang:counter64
     |     |  |  +--ro database-description-out?   yang:counter64
     |     |  |  +--ro external-lsa-count?         yang:counter64
     |     |  |  +--ro external-lsa-checksum?      string
     |     |  |  +--ro unknown-lsa-count?          yang:counter64
     |     |  |  +--ro lsa-out?                    yang:counter64
     |     |  |  +--ro lsa-in?                     yang:counter64
     |     |  |  +--ro area-count?                 yang:counter64
     |     |  +--ro ospfv3-id?                   ipi-ospfv3-types:ospfv3_string_t
     |     |  +--ro vrf-name                     -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--ro router-id?                   inet:ipv4-address
     |     |  +--ro bfd-enable-all-interfaces?   empty {feature-list:HAVE_BFD}?
     |     |  +--ro database-summary?            empty
     |     |  +--ro area-border-type?            ipi-ospfv3-types:ospfv3_abr_type_t
     |     |  +--ro default-metric?              uint32
     |     |  +--ro shutdown?                    empty
     |     |  +--ro log-adjacency-changes?       ipi-ospfv3-types:ospfv3_log_adj_opt_t
     |     |  +--ro reference-bandwidth?         uint32
     |     |  +--ro max-database-descriptors?    uint16
     |     +--ro link-state-database
     |     |  +--ro link* [link-index]
     |     |  |  +--ro link-index    -> ../state/link-index
     |     |  |  +--ro lsa-prefix* [prefix]
     |     |  |  |  +--ro prefix    -> ../state/prefix
     |     |  |  |  +--ro state
     |     |  |  |     +--ro prefix?           cml-data-types:cml_ipv6_prefix_t
     |     |  |  |     +--ro no-unicast-bit?   empty
     |     |  |  |     +--ro prefix-options?   ipi-ospfv3-types:ospfv3_prefix_options_t
     |     |  |  +--ro state
     |     |  |     +--ro link-index?           uint32
     |     |  |     +--ro link-local-address?   inet:ipv6-address
     |     |  |     +--ro priority?             uint8
     |     |  |     +--ro interface-name?       string
     |     |  |     +--ro prefix-count?         uint32
     |     |  |     +--ro advertising-router?   inet:ipv4-address
     |     |  |     +--ro ls-age?               uint16
     |     |  |     +--ro ls-type?              ipi-ospfv3-types:ospfv3_ls_type_t
     |     |  |     +--ro ls-id?                string
     |     |  |     +--ro ls-sequence-number?   string
     |     |  |     +--ro ls-checksum?          string
     |     |  |     +--ro ls-length?            uint16
     |     |  |     +--ro ls-options?           ipi-ospfv3-types:ospfv3_ls_options_t
     |     |  +--ro router* [router-index]
     |     |  |  +--ro router-index    -> ../state/router-index
     |     |  |  +--ro link* [link-index]
     |     |  |  |  +--ro link-index    -> ../state/link-index
     |     |  |  |  +--ro state
     |     |  |  |     +--ro link-index?              uint32
     |     |  |  |     +--ro neighbor-router-id?      inet:ipv4-address
     |     |  |  |     +--ro neighbor-interface-id?   uint32
     |     |  |  |     +--ro interface-id?            uint32
     |     |  |  |     +--ro metric?                  uint16
     |     |  |  |     +--ro metric-type?             ipi-ospfv3-types:ospfv3_link_metric_type_t
     |     |  |  +--ro state
     |     |  |     +--ro router-index?           uint32
     |     |  |     +--ro area-id?                inet:ipv4-address
     |     |  |     +--ro ls-router-properties?   ipi-ospfv3-types:ospfv3_router_properties_t
     |     |  |     +--ro advertising-router?     inet:ipv4-address
     |     |  |     +--ro ls-age?                 uint16
     |     |  |     +--ro ls-type?                ipi-ospfv3-types:ospfv3_ls_type_t
     |     |  |     +--ro ls-id?                  string
     |     |  |     +--ro ls-sequence-number?     string
     |     |  |     +--ro ls-checksum?            string
     |     |  |     +--ro ls-length?              uint16
     |     |  |     +--ro ls-options?             ipi-ospfv3-types:ospfv3_ls_options_t
     |     |  +--ro network* [advertising-router]
     |     |  |  +--ro advertising-router    -> ../state/advertising-router
     |     |  |  +--ro state
     |     |  |     +--ro advertising-router?   inet:ipv4-address
     |     |  |     +--ro ls-age?               uint16
     |     |  |     +--ro ls-type?              ipi-ospfv3-types:ospfv3_ls_type_t
     |     |  |     +--ro ls-id?                string
     |     |  |     +--ro ls-sequence-number?   string
     |     |  |     +--ro ls-checksum?          string
     |     |  |     +--ro ls-length?            uint16
     |     |  |     +--ro ls-options?           ipi-ospfv3-types:ospfv3_ls_options_t
     |     |  |     +--ro attached-router*      inet:ipv4-address
     |     |  +--ro intra-prefix* [intra-prefix-index]
     |     |  |  +--ro intra-prefix-index    -> ../state/intra-prefix-index
     |     |  |  +--ro lsa-prefix* [prefix]
     |     |  |  |  +--ro prefix    -> ../state/prefix
     |     |  |  |  +--ro state
     |     |  |  |     +--ro prefix?           cml-data-types:cml_ipv6_prefix_t
     |     |  |  |     +--ro no-unicast-bit?   empty
     |     |  |  |     +--ro prefix-options?   ipi-ospfv3-types:ospfv3_prefix_options_t
     |     |  |  |     +--ro metric?           uint16
     |     |  |  +--ro state
     |     |  |     +--ro intra-prefix-index?                 uint32
     |     |  |     +--ro area-id?                            inet:ipv4-address
     |     |  |     +--ro referenced-ls-advertising-router?   inet:ipv4-address
     |     |  |     +--ro referenced-ls-id?                   string
     |     |  |     +--ro referenced-ls-type?                 string
     |     |  |     +--ro prefix-count?                       uint32
     |     |  |     +--ro advertising-router?                 inet:ipv4-address
     |     |  |     +--ro ls-age?                             uint16
     |     |  |     +--ro ls-type?                            ipi-ospfv3-types:ospfv3_ls_type_t
     |     |  |     +--ro ls-id?                              string
     |     |  |     +--ro ls-sequence-number?                 string
     |     |  |     +--ro ls-checksum?                        string
     |     |  |     +--ro ls-length?                          uint16
     |     |  +--ro inter-prefix* [inter-prefix-index]
     |     |  |  +--ro inter-prefix-index    -> ../state/inter-prefix-index
     |     |  |  +--ro lsa-prefix* [prefix]
     |     |  |  |  +--ro prefix    -> ../state/prefix
     |     |  |  |  +--ro state
     |     |  |  |     +--ro prefix?           cml-data-types:cml_ipv6_prefix_t
     |     |  |  |     +--ro no-unicast-bit?   empty
     |     |  |  |     +--ro prefix-options?   ipi-ospfv3-types:ospfv3_prefix_options_t
     |     |  |  |     +--ro metric?           uint16
     |     |  |  +--ro state
     |     |  |     +--ro inter-prefix-index?   uint32
     |     |  |     +--ro area-id?              inet:ipv4-address
     |     |  |     +--ro advertising-router?   inet:ipv4-address
     |     |  |     +--ro ls-age?               uint16
     |     |  |     +--ro ls-type?              ipi-ospfv3-types:ospfv3_ls_type_t
     |     |  |     +--ro ls-id?                string
     |     |  |     +--ro ls-sequence-number?   string
     |     |  |     +--ro ls-checksum?          string
     |     |  |     +--ro ls-length?            uint16
     |     |  +--ro inter-router* [inter-router-index]
     |     |  |  +--ro inter-router-index    -> ../state/inter-router-index
     |     |  |  +--ro state
     |     |  |     +--ro inter-router-index?   uint32
     |     |  |     +--ro area-id?              inet:ipv4-address
     |     |  |     +--ro router-id?            inet:ipv4-address
     |     |  |     +--ro advertising-router?   inet:ipv4-address
     |     |  |     +--ro ls-age?               uint16
     |     |  |     +--ro ls-type?              ipi-ospfv3-types:ospfv3_ls_type_t
     |     |  |     +--ro ls-id?                string
     |     |  |     +--ro ls-sequence-number?   string
     |     |  |     +--ro ls-checksum?          string
     |     |  |     +--ro ls-length?            uint16
     |     |  |     +--ro metric?               uint16
     |     |  |     +--ro ls-options?           ipi-ospfv3-types:ospfv3_ls_options_t
     |     |  +--ro external* [external-index]
     |     |  |  +--ro external-index    -> ../state/external-index
     |     |  |  +--ro lsa-prefix* [prefix]
     |     |  |  |  +--ro prefix    -> ../state/prefix
     |     |  |  |  +--ro state
     |     |  |  |     +--ro prefix?           cml-data-types:cml_ipv6_prefix_t
     |     |  |  |     +--ro no-unicast-bit?   empty
     |     |  |  |     +--ro prefix-options?   ipi-ospfv3-types:ospfv3_prefix_options_t
     |     |  |  +--ro state
     |     |  |     +--ro external-index?       uint32
     |     |  |     +--ro referenced-ls-id?     string
     |     |  |     +--ro referenced-ls-type?   uint32
     |     |  |     +--ro route-tag?            uint32
     |     |  |     +--ro forwarding-address?   inet:ip-address
     |     |  |     +--ro metric?               uint16
     |     |  |     +--ro metric-type?          ipi-ospfv3-types:ospfv3_ls_metric_type_t
     |     |  |     +--ro advertising-router?   inet:ipv4-address
     |     |  |     +--ro ls-age?               uint16
     |     |  |     +--ro ls-type?              ipi-ospfv3-types:ospfv3_ls_type_t
     |     |  |     +--ro ls-id?                string
     |     |  |     +--ro ls-sequence-number?   string
     |     |  |     +--ro ls-checksum?          string
     |     |  |     +--ro ls-length?            uint16
     |     |  +--ro not-so-stubby-area* [nssa-index]
     |     |     +--ro nssa-index    -> ../state/nssa-index
     |     |     +--ro lsa-prefix* [prefix]
     |     |     |  +--ro prefix    -> ../state/prefix
     |     |     |  +--ro state
     |     |     |     +--ro prefix?           cml-data-types:cml_ipv6_prefix_t
     |     |     |     +--ro no-unicast-bit?   empty
     |     |     |     +--ro prefix-options?   ipi-ospfv3-types:ospfv3_prefix_options_t
     |     |     +--ro state
     |     |        +--ro nssa-index?           uint32
     |     |        +--ro referenced-ls-id?     string
     |     |        +--ro referenced-ls-type?   uint32
     |     |        +--ro route-tag?            uint32
     |     |        +--ro forwarding-address?   inet:ip-address
     |     |        +--ro metric?               uint16
     |     |        +--ro metric-type?          ipi-ospfv3-types:ospfv3_ls_metric_type_t
     |     |        +--ro advertising-router?   inet:ipv4-address
     |     |        +--ro ls-age?               uint16
     |     |        +--ro ls-type?              ipi-ospfv3-types:ospfv3_ls_type_t
     |     |        +--ro ls-id?                string
     |     |        +--ro ls-sequence-number?   string
     |     |        +--ro ls-checksum?          string
     |     |        +--ro ls-length?            uint16
     |     +--ro route* [prefix]
     |     |  +--ro prefix        -> ../state/prefix
     |     |  +--ro next-hop* [address]
     |     |  |  +--ro address    -> ../state/address
     |     |  |  +--ro state
     |     |  |     +--ro address?          inet:ip-address
     |     |  |     +--ro interface-name?   string
     |     |  |     +--ro transit-area?     empty
     |     |  |     +--ro area-id?          inet:ipv4-address
     |     |  |     +--ro connected?        empty
     |     |  |     +--ro invalid?          empty
     |     |  |     +--ro code?             string
     |     |  +--ro state
     |     |  |  +--ro prefix?     cml-data-types:cml_ip_prefix_t
     |     |  |  +--ro distance?   uint8
     |     |  +--ro route-path
     |     |     +--ro state
     |     |        +--ro type?                 ipi-ospfv3-types:ospfv3_path_type_t
     |     |        +--ro code?                 string
     |     |        +--ro discard-connection?   empty
     |     |        +--ro cost?                 uint32
     |     |        +--ro type-2-cost?          uint32
     |     |        +--ro path-flags?           ipi-ospfv3-types:ospfv3_path_flags_t
     |     +--rw administrative-distance
     |     |  +--rw config
     |     |  |  +--rw default-distance?   uint8
     |     |  +--ro state
     |     |  |  +--ro default-distance?   uint8
     |     |  +--rw ospf
     |     |     +--rw config
     |     |     |  +--rw intra-area-distance?        uint8
     |     |     |  +--rw inter-area-distance?        uint8
     |     |     |  +--rw external-routes-distance?   uint8
     |     |     +--ro state
     |     |        +--ro intra-area-distance?        uint8
     |     |        +--ro inter-area-distance?        uint8
     |     |        +--ro external-routes-distance?   uint8
     |     +--rw capability
     |     |  +--rw config
     |     |  |  +--rw traffic-engineering?        empty {feature-list:HAVE_OSPF6_TE}?
     |     |  |  +--rw disable-graceful-restart?   empty {feature-list:HAVE_RESTART}?
     |     |  +--ro state
     |     |     +--ro traffic-engineering?        empty {feature-list:HAVE_OSPF6_TE}?
     |     |     +--ro disable-graceful-restart?   empty {feature-list:HAVE_RESTART}?
     |     +--rw timers
     |     |  +--rw spf
     |     |     +--rw config!
     |     |     |  +--rw exponential-min-delay    uint32
     |     |     |  +--rw exponential-max-delay    uint32
     |     |     +--ro state
     |     |        +--ro exponential-min-delay    uint32
     |     |        +--ro exponential-max-delay    uint32
     |     +--rw ospfv3-srv6 {feature-list:HAVE_SRV6}?
     |     |  +--rw config!
     |     |  |  +--rw ospf6SRv6enable    empty
     |     |  +--ro state
     |     |  |  +--ro ospf6SRv6enable    empty
     |     |  +--rw locator-lists
     |     |     +--rw locator-list* [ospf6SRv6LocatorName]
     |     |        +--rw ospf6SRv6LocatorName    -> ../config/ospf6SRv6LocatorName
     |     |        +--rw config
     |     |        |  +--rw ospf6SRv6LocatorName?   string
     |     |        +--ro state
     |     |           +--ro ospf6SRv6LocatorName?   string
     |     +--rw passive-interfaces
     |     |  +--rw config
     |     |  |  +--rw all-interfaces?   empty
     |     |  +--ro state
     |     |  |  +--ro all-interfaces?   empty
     |     |  +--rw passive-interface* [name]
     |     |     +--rw name      -> ../config/name
     |     |     +--rw config
     |     |     |  +--rw name?           string
     |     |     |  +--rw passive-mode    ipi-ospfv3-types:ospfv3_passive_mode_t
     |     |     +--ro state
     |     |        +--ro name?           string
     |     |        +--ro passive-mode    ipi-ospfv3-types:ospfv3_passive_mode_t
     |     +--rw summary-addresses
     |     |  +--rw summary-address* [address]
     |     |     +--rw address    -> ../config/address
     |     |     +--rw config
     |     |     |  +--rw address?         cml-data-types:cml_ipv6_prefix_t
     |     |     |  +--rw not-advertise?   empty
     |     |     |  +--rw translate-tag?   uint32
     |     |     |  +--rw all-tag?         uint32
     |     |     +--ro state
     |     |        +--ro address?         cml-data-types:cml_ipv6_prefix_t
     |     |        +--ro not-advertise?   empty
     |     |        +--ro translate-tag?   uint32
     |     |        +--ro all-tag?         uint32
     |     +--rw default-information
     |     |  +--rw config
     |     |  |  +--rw originate?                        empty
     |     |  |  +--rw always-advertise-default-route?   empty
     |     |  |  +--rw metric?                           uint32
     |     |  |  +--rw metric-type?                      ipi-ospfv3-types:ospfv3_metric_type_t
     |     |  |  +--rw route-map?                        string
     |     |  +--ro state
     |     |     +--ro originate?                        empty
     |     |     +--ro always-advertise-default-route?   empty
     |     |     +--ro metric?                           uint32
     |     |     +--ro metric-type?                      ipi-ospfv3-types:ospfv3_metric_type_t
     |     |     +--ro route-map?                        string
     |     +--rw distribute-list {feature-list:HAVE_ACL}?
     |     |  +--rw filter-in
     |     |  |  +--rw config
     |     |  |  |  +--rw access-control-list?   string
     |     |  |  +--ro state
     |     |  |     +--ro access-control-list?   string
     |     |  +--rw filter-out
     |     |     +--rw routing-protocols
     |     |     |  +--rw routing-protocol* [protocol]
     |     |     |     +--rw protocol    -> ../config/protocol
     |     |     |     +--rw config
     |     |     |     |  +--rw protocol?              ipi-ospfv3-types:ospfv3_route_source_type_t
     |     |     |     |  +--rw access-control-list    string
     |     |     |     +--ro state
     |     |     |        +--ro protocol?              ipi-ospfv3-types:ospfv3_route_source_type_t
     |     |     |        +--ro access-control-list    string
     |     |     +--rw ospf-processes
     |     |        +--rw ospf-process* [ospf-process-id]
     |     |           +--rw ospf-process-id    -> ../config/ospf-process-id
     |     |           +--rw config
     |     |           |  +--rw ospf-process-id?       ipi-ospfv3-types:ospfv3_string_t
     |     |           |  +--rw access-control-list    string
     |     |           +--ro state
     |     |              +--ro ospf-process-id?       ipi-ospfv3-types:ospfv3_string_t
     |     |              +--ro access-control-list    string
     |     +--rw redistribute
     |     |  +--rw routing-protocols
     |     |  |  +--rw routing-protocol* [protocol]
     |     |  |     +--rw protocol    -> ../config/protocol
     |     |  |     +--rw config
     |     |  |     |  +--rw metric?        uint32
     |     |  |     |  +--rw metric-type?   ipi-ospfv3-types:ospfv3_metric_type_t
     |     |  |     |  +--rw route-map?     string
     |     |  |     |  +--rw route-tag?     uint32
     |     |  |     |  +--rw protocol?      ipi-ospfv3-types:ospfv3_route_source_type_t
     |     |  |     +--ro state
     |     |  |        +--ro metric?        uint32
     |     |  |        +--ro metric-type?   ipi-ospfv3-types:ospfv3_metric_type_t
     |     |  |        +--ro route-map?     string
     |     |  |        +--ro route-tag?     uint32
     |     |  |        +--ro protocol?      ipi-ospfv3-types:ospfv3_route_source_type_t
     |     |  +--rw ospf-processes
     |     |     +--rw ospf-process* [ospf-process-id]
     |     |        +--rw ospf-process-id    -> ../config/ospf-process-id
     |     |        +--rw config
     |     |        |  +--rw metric?            uint32
     |     |        |  +--rw metric-type?       ipi-ospfv3-types:ospfv3_metric_type_t
     |     |        |  +--rw route-map?         string
     |     |        |  +--rw route-tag?         uint32
     |     |        |  +--rw ospf-process-id?   ipi-ospfv3-types:ospfv3_string_t
     |     |        +--ro state
     |     |           +--ro metric?            uint32
     |     |           +--ro metric-type?       ipi-ospfv3-types:ospfv3_metric_type_t
     |     |           +--ro route-map?         string
     |     |           +--ro route-tag?         uint32
     |     |           +--ro ospf-process-id?   ipi-ospfv3-types:ospfv3_string_t
     |     +--rw areas
     |     |  +--rw area* [area-id]
     |     |     +--rw area-id           -> ../config/area-id
     |     |     +--rw config
     |     |     |  +--rw area-id?        ipi-ospfv3-types:ospfv3_area_t
     |     |     |  +--rw default-cost?   uint32
     |     |     +--ro state
     |     |     |  +--ro area-id?        ipi-ospfv3-types:ospfv3_area_t
     |     |     |  +--ro default-cost?   uint32
     |     |     +--rw stub
     |     |     |  +--rw config!
     |     |     |  |  +--rw enable        empty
     |     |     |  |  +--rw no-summary?   empty
     |     |     |  +--ro state
     |     |     |     +--ro enable        empty
     |     |     |     +--ro no-summary?   empty
     |     |     +--rw nssa {feature-list:HAVE_NSSA}?
     |     |     |  +--rw config!
     |     |     |  |  +--rw enable                           empty
     |     |     |  |  +--rw no-summary?                      empty
     |     |     |  |  +--rw stability-interval?              uint32
     |     |     |  |  +--rw translator-role?                 ipi-ospfv3-types:ospfv3_translator_role_t
     |     |     |  |  +--rw no-redistribution?               empty
     |     |     |  |  +--rw default-information-originate?   empty
     |     |     |  |  +--rw metric?                          uint32
     |     |     |  |  +--rw metric-type?                     ipi-ospfv3-types:ospfv3_metric_type_t
     |     |     |  |  +--rw route-map?                       string
     |     |     |  +--ro state
     |     |     |     +--ro enable                           empty
     |     |     |     +--ro no-summary?                      empty
     |     |     |     +--ro stability-interval?              uint32
     |     |     |     +--ro translator-role?                 ipi-ospfv3-types:ospfv3_translator_role_t
     |     |     |     +--ro no-redistribution?               empty
     |     |     |     +--ro default-information-originate?   empty
     |     |     |     +--ro metric?                          uint32
     |     |     |     +--ro metric-type?                     ipi-ospfv3-types:ospfv3_metric_type_t
     |     |     |     +--ro route-map?                       string
     |     |     +--rw virtual-links
     |     |     |  +--rw virtual-link* [remote-router-id]
     |     |     |     +--rw remote-router-id    -> ../config/remote-router-id
     |     |     |     +--rw config
     |     |     |     |  +--rw remote-router-id?           inet:ipv4-address
     |     |     |     |  +--rw bfd-fall-over?              empty {feature-list:HAVE_BFD}?
     |     |     |     |  +--rw instance-id?                uint8
     |     |     |     |  +--rw authentication-cryptomap?   -> /ipi-ipsec:ipsec/crypto-maps/crypto-map/config/name {feature-list:HAVE_IPSEC,feature-list:HAVE_TUNNEL}?
     |     |     |     +--ro state
     |     |     |     |  +--ro remote-router-id?                     inet:ipv4-address
     |     |     |     |  +--ro bfd-fall-over?                        empty {feature-list:HAVE_BFD}?
     |     |     |     |  +--ro instance-id?                          uint8
     |     |     |     |  +--ro authentication-cryptomap?             -> /ipi-ipsec:ipsec/crypto-maps/crypto-map/config/name {feature-list:HAVE_IPSEC,feature-list:HAVE_TUNNEL}?
     |     |     |     |  +--ro name?                                 string
     |     |     |     |  +--ro status?                               ipi-ospfv3-types:ospfv3_link_status_t
     |     |     |     |  +--ro interface-name?                       string
     |     |     |     |  +--ro virtual-link-interface-state?         string
     |     |     |     |  +--ro local-address?                        inet:ipv4-address
     |     |     |     |  +--ro remote-address?                       inet:ipv4-address
     |     |     |     |  +--ro virtual-link-instance-id?             uint32
     |     |     |     |  +--ro hello-suppression-enable?             empty
     |     |     |     |  +--ro do-not-age-lsa-enable?                empty
     |     |     |     |  +--ro hello-due-in?                         yang:date-and-time
     |     |     |     |  +--ro adjacency-state?                      string
     |     |     |     |  +--ro virtual-link-config-error
     |     |     |     |  |  +--ro router-id?     inet:ipv4-address
     |     |     |     |  |  +--ro instance-id?   uint8
     |     |     |     |  |  +--ro error-type?    ipi-ospfv3-types:ospfv3_config_error_type_t
     |     |     |     |  |  +--ro packet-type?   ipi-ospfv3-types:ospfv3_packet_type_t
     |     |     |     |  +--ro virtual-link-state-change
     |     |     |     |  |  +--ro router-id?            inet:ipv4-address
     |     |     |     |  |  +--ro instance-id?          uint8
     |     |     |     |  |  +--ro virtual-link-state?   ipi-ospfv3-types:ospfv3_interface_state_t
     |     |     |     |  +--ro virtual-link-neighbor-state-change
     |     |     |     |  |  +--ro router-id?        inet:ipv4-address
     |     |     |     |  |  +--ro instance-id?      uint8
     |     |     |     |  |  +--ro neighbor-state?   ipi-ospfv3-types:ospfv3_interface_state_t
     |     |     |     |  +--ro virtual-link-tx-retransmit
     |     |     |     |  |  +--ro router-id?        inet:ipv4-address
     |     |     |     |  |  +--ro instance-id?      uint8
     |     |     |     |  |  +--ro packet-type?      ipi-ospfv3-types:ospfv3_packet_type_t
     |     |     |     |  |  +--ro lsdb-type?        uint32
     |     |     |     |  |  +--ro lsdb-lsid?        uint32
     |     |     |     |  |  +--ro lsdb-router-id?   inet:ipv4-address
     |     |     |     |  +--ro virtual-link-rx-bad-packet
     |     |     |     |     +--ro router-id?     inet:ipv4-address
     |     |     |     |     +--ro instance-id?   uint8
     |     |     |     |     +--ro packet-type?   ipi-ospfv3-types:ospfv3_packet_type_t
     |     |     |     +--rw timers
     |     |     |        +--rw config
     |     |     |        |  +--rw dead-interval?             uint16
     |     |     |        |  +--rw hello-interval?            uint16
     |     |     |        |  +--rw transmission-delay?        uint16
     |     |     |        |  +--rw retransmission-interval?   uint16
     |     |     |        +--ro state
     |     |     |           +--ro dead-interval?             uint16
     |     |     |           +--ro hello-interval?            uint16
     |     |     |           +--ro transmission-delay?        uint16
     |     |     |           +--ro retransmission-interval?   uint16
     |     |     +--rw address-ranges
     |     |        +--rw address-range* [address]
     |     |           +--rw address    -> ../config/address
     |     |           +--rw config
     |     |           |  +--rw address?         cml-data-types:cml_ipv6_prefix_t
     |     |           |  +--rw not-advertise?   empty
     |     |           +--ro state
     |     |              +--ro address?         cml-data-types:cml_ipv6_prefix_t
     |     |              +--ro not-advertise?   empty
     |     +--ro area-info* [area-id]
     |     |  +--ro area-id    -> ../state/area-id
     |     |  +--ro state
     |     |  |  +--ro statistics
     |     |  |  |  +--ro active-interface-count?         yang:counter64
     |     |  |  |  +--ro interface-count?                yang:counter64
     |     |  |  |  +--ro spf-algorithm-executed-count?   yang:counter64
     |     |  |  |  +--ro lsa-count?                      yang:counter64
     |     |  |  |  +--ro lsa-checksum?                   string
     |     |  |  |  +--ro unknown-lsa-count?              yang:counter64
     |     |  |  +--ro area-id?          inet:ipv4-address
     |     |  |  +--ro interface-name*   string
     |     |  |  +--ro backbone?         empty
     |     |  |  +--ro active?           empty
     |     |  |  +--ro asbr?             empty
     |     |  +--ro vertex* [router-id]
     |     |     +--ro router-id    -> ../state/router-id
     |     |     +--ro next-hop* [address]
     |     |     |  +--ro address    -> ../state/address
     |     |     |  +--ro state
     |     |     |     +--ro address?          inet:ip-address
     |     |     |     +--ro interface-name?   string
     |     |     |     +--ro transit-area?     empty
     |     |     |     +--ro area-id?          inet:ipv4-address
     |     |     |     +--ro connected?        empty
     |     |     |     +--ro invalid?          empty
     |     |     |     +--ro code?             string
     |     |     +--ro state
     |     |        +--ro router-id?   inet:ipv4-address
     |     |        +--ro distance?    uint8
     |     +--rw address-family
     |     |  +--rw ipv4
     |     |     +--rw config
     |     |     |  +--rw enable-af?   empty
     |     |     +--ro state
     |     |     |  +--ro enable-af?   empty
     |     |     +--rw areas
     |     |     |  +--rw area* [area-id]
     |     |     |     +--rw area-id           -> ../config/area-id
     |     |     |     +--rw config
     |     |     |     |  +--rw area-id?   ipi-ospfv3-types:ospfv3_area_t
     |     |     |     +--ro state
     |     |     |     |  +--ro area-id?   ipi-ospfv3-types:ospfv3_area_t
     |     |     |     +--rw address-ranges
     |     |     |        +--rw address-range* [address]
     |     |     |           +--rw address    -> ../config/address
     |     |     |           +--rw config
     |     |     |           |  +--rw address?         cml-data-types:cml_ipv4_addr_prefix_t
     |     |     |           |  +--rw not-advertise?   empty
     |     |     |           +--ro state
     |     |     |              +--ro address?         cml-data-types:cml_ipv4_addr_prefix_t
     |     |     |              +--ro not-advertise?   empty
     |     |     +--rw summary-addresses
     |     |     |  +--rw summary-address* [address]
     |     |     |     +--rw address    -> ../config/address
     |     |     |     +--rw config
     |     |     |     |  +--rw address?         cml-data-types:cml_ipv4_prefix_t
     |     |     |     |  +--rw not-advertise?   empty
     |     |     |     |  +--rw tag?             uint32
     |     |     |     +--ro state
     |     |     |        +--ro address?         cml-data-types:cml_ipv4_prefix_t
     |     |     |        +--ro not-advertise?   empty
     |     |     |        +--ro tag?             uint32
     |     |     +--rw default-information
     |     |     |  +--rw config
     |     |     |  |  +--rw originate?                        empty
     |     |     |  |  +--rw always-advertise-default-route?   empty
     |     |     |  |  +--rw metric?                           uint32
     |     |     |  |  +--rw metric-type?                      ipi-ospfv3-types:ospfv3_metric_type_t
     |     |     |  |  +--rw route-map?                        string
     |     |     |  +--ro state
     |     |     |     +--ro originate?                        empty
     |     |     |     +--ro always-advertise-default-route?   empty
     |     |     |     +--ro metric?                           uint32
     |     |     |     +--ro metric-type?                      ipi-ospfv3-types:ospfv3_metric_type_t
     |     |     |     +--ro route-map?                        string
     |     |     +--rw redistribute
     |     |        +--rw routing-protocols
     |     |        |  +--rw routing-protocol* [protocol-af]
     |     |        |     +--rw protocol-af    -> ../config/protocol-af
     |     |        |     +--rw config
     |     |        |     |  +--rw protocol-af?   ipi-ospfv3-types:ospfv3_af_route_source_type_t
     |     |        |     |  +--rw metric?        uint32
     |     |        |     |  +--rw metric-type?   ipi-ospfv3-types:ospfv3_metric_type_t
     |     |        |     |  +--rw route-map?     string
     |     |        |     |  +--rw route-tag?     uint32
     |     |        |     +--ro state
     |     |        |        +--ro protocol-af?   ipi-ospfv3-types:ospfv3_af_route_source_type_t
     |     |        |        +--ro metric?        uint32
     |     |        |        +--ro metric-type?   ipi-ospfv3-types:ospfv3_metric_type_t
     |     |        |        +--ro route-map?     string
     |     |        |        +--ro route-tag?     uint32
     |     |        +--rw ospf-processes
     |     |           +--rw ospf-process* [ospfv2-process-id]
     |     |              +--rw ospfv2-process-id    -> ../config/ospfv2-process-id
     |     |              +--rw config
     |     |              |  +--rw ospfv2-process-id?   uint16
     |     |              |  +--rw metric?              uint32
     |     |              |  +--rw metric-type?         ipi-ospfv3-types:ospfv3_metric_type_t
     |     |              |  +--rw route-map?           string
     |     |              |  +--rw route-tag?           uint32
     |     |              +--ro state
     |     |                 +--ro ospfv2-process-id?   uint16
     |     |                 +--ro metric?              uint32
     |     |                 +--ro metric-type?         ipi-ospfv3-types:ospfv3_metric_type_t
     |     |                 +--ro route-map?           string
     |     |                 +--ro route-tag?           uint32
     |     +--ro originate-lsa
     |     |  +--ro router-id?        -> /ospfv3/processes/process/state/router-id
     |     |  +--ro lsdb-area-id?     inet:ipv4-address
     |     |  +--ro lsdb-type?        uint32
     |     |  +--ro lsdb-id?          uint32
     |     |  +--ro lsdb-router-id?   inet:ipv4-address
     |     +--ro tx-retransmit
     |     |  +--ro router-id?            inet:ipv4-address
     |     |  +--ro if-index?             int32
     |     |  +--ro instance-id?          uint8
     |     |  +--ro neighbor-router-id?   inet:ipv4-address
     |     |  +--ro packet-type?          ipi-ospfv3-types:ospfv3_packet_type_t
     |     |  +--ro lsdb-type?            uint32
     |     |  +--ro lsdb-lsid?            uint32
     |     |  +--ro lsdb-router-id?       inet:ipv4-address
     |     +--ro neighbor-state-change
     |     |  +--ro router-id?            inet:ipv4-address
     |     |  +--ro if-index?             int32
     |     |  +--ro instance-id?          uint8
     |     |  +--ro neighbor-router-id?   inet:ipv4-address
     |     |  +--ro neighbor-state?       ipi-ospfv3-types:ospfv3_neighbor_state_change_t
     |     +--rw bgp-link-state {feature-list:HAVE_BGP_LS}?
     |        +--rw distribute
     |           +--rw config
     |           |  +--rw enabled?          empty
     |           |  +--rw throttle-timer?   uint8
     |           +--ro state
     |              +--ro enabled?          empty
     |              +--ro throttle-timer?   uint8
     +--rw debug
     |  +--rw config
     |  |  +--rw bfd?                 empty {feature-list:HAVE_BFD}?
     |  |  +--rw retransmission?      empty
     |  |  +--rw dist-ls?             empty {feature-list:HAVE_BGP_LS}?
     |  |  +--rw events?              ipi-ospfv3-types:ospfv3_debug_event_t
     |  |  +--rw ifsm?                ipi-ospfv3-types:ospfv3_debug_ifsm_t
     |  |  +--rw lsa?                 ipi-ospfv3-types:ospfv3_debug_lsa_t
     |  |  +--rw nfsm?                ipi-ospfv3-types:ospfv3_debug_nfsm_t
     |  |  +--rw nsm?                 ipi-ospfv3-types:ospfv3_debug_nsm_t
     |  |  +--rw rib?                 ipi-ospfv3-types:ospfv3_debug_rib_t {feature-list:HAVE_RIBD}?
     |  |  +--rw route?               ipi-ospfv3-types:ospfv3_debug_route_t
     |  |  +--rw packet-hello?        ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |  |  +--rw packet-dd?           ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |  |  +--rw packet-ls-request?   ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |  |  +--rw packet-ls-update?    ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |  |  +--rw packet-ls-ack?       ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |  +--ro state
     |     +--ro bfd?                     empty {feature-list:HAVE_BFD}?
     |     +--ro retransmission?          empty
     |     +--ro dist-ls?                 empty {feature-list:HAVE_BGP_LS}?
     |     +--ro events?                  ipi-ospfv3-types:ospfv3_debug_event_t
     |     +--ro ifsm?                    ipi-ospfv3-types:ospfv3_debug_ifsm_t
     |     +--ro lsa?                     ipi-ospfv3-types:ospfv3_debug_lsa_t
     |     +--ro nfsm?                    ipi-ospfv3-types:ospfv3_debug_nfsm_t
     |     +--ro nsm?                     ipi-ospfv3-types:ospfv3_debug_nsm_t
     |     +--ro rib?                     ipi-ospfv3-types:ospfv3_debug_rib_t {feature-list:HAVE_RIBD}?
     |     +--ro route?                   ipi-ospfv3-types:ospfv3_debug_route_t
     |     +--ro packet-hello?            ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |     +--ro packet-dd?               ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |     +--ro packet-ls-request?       ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |     +--ro packet-ls-update?        ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |     +--ro packet-ls-ack?           ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |     +--ro terminal-debug-status
     |        +--ro bfd?                 cml-data-types:cml_on_off_t {feature-list:HAVE_BFD}?
     |        +--ro retransmission?      cml-data-types:cml_on_off_t
     |        +--ro dist-ls?             empty {feature-list:HAVE_BGP_LS}?
     |        +--ro events?              ipi-ospfv3-types:ospfv3_debug_event_t
     |        +--ro ifsm?                ipi-ospfv3-types:ospfv3_debug_ifsm_t
     |        +--ro lsa?                 ipi-ospfv3-types:ospfv3_debug_lsa_t
     |        +--ro nfsm?                ipi-ospfv3-types:ospfv3_debug_nfsm_t
     |        +--ro nsm?                 ipi-ospfv3-types:ospfv3_debug_nsm_t
     |        +--ro rib?                 ipi-ospfv3-types:ospfv3_debug_rib_t {feature-list:HAVE_RIBD}?
     |        +--ro route?               ipi-ospfv3-types:ospfv3_debug_route_t
     |        +--ro packet-hello?        ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |        +--ro packet-dd?           ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |        +--ro packet-ls-request?   ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |        +--ro packet-ls-update?    ipi-ospfv3-types:ospfv3_debug_packet_options_t
     |        +--ro packet-ls-ack?       ipi-ospfv3-types:ospfv3_debug_packet_options_t
     +--rw interfaces
        +--rw interface* [interface-name]
           +--rw interface-name    -> ../config/interface-name
           +--rw config
           |  +--rw interface-name?   -> /ipi-interface:interfaces/interface/name
           |  +--rw shutdown?         empty
           +--ro state
           |  +--ro interface-name?            -> /ipi-interface:interfaces/interface/name
           |  +--ro shutdown?                  empty
           |  +--ro interface-config-error
           |  |  +--ro router-id?               inet:ipv4-address
           |  |  +--ro interface-index?         uint32
           |  |  +--ro interface-instance-id?   uint8
           |  |  +--ro error-type?              ipi-ospfv3-types:ospfv3_config_error_type_t
           |  |  +--ro packet-type?             ipi-ospfv3-types:ospfv3_packet_type_t
           |  +--ro interface-state-change
           |  |  +--ro router-id?               inet:ipv4-address
           |  |  +--ro interface-index?         uint32
           |  |  +--ro interface-instance-id?   uint8
           |  |  +--ro interface-state?         ipi-ospfv3-types:ospfv3_interface_state_t
           |  +--ro interface-rx-bad-packet
           |     +--ro router-id?               inet:ipv4-address
           |     +--ro interface-index?         uint32
           |     +--ro interface-instance-id?   uint8
           |     +--ro packet-src?              inet:ipv6-address
           |     +--ro packet-type?             ipi-ospfv3-types:ospfv3_packet_type_t
           +--rw instances
              +--rw instance* [instance-id]
                 +--rw instance-id                 -> ../config/instance-id
                 +--rw config
                 |  +--rw instance-id?                   uint8
                 |  +--rw network-type?                  ipi-ospfv3-types:ospfv3_network_type_t
                 |  +--rw cost?                          uint16
                 |  +--rw priority?                      uint8
                 |  +--rw traffic-engineering-metric?    uint16 {feature-list:HAVE_OSPF6_TE}?
                 |  +--rw mtu?                           uint16
                 |  +--rw mtu-ignore?                    empty
                 |  +--rw enable-link-lsa-suppression?   empty
                 |  +--rw enable-bfd?                    boolean {feature-list:HAVE_BFD}?
                 |  +--rw authentication-cryptomap?      -> /ipi-ipsec:ipsec/crypto-maps/crypto-map/config/name {feature-list:HAVE_IPSEC,feature-list:HAVE_TUNNEL}?
                 +--ro state
                 |  +--ro statistics
                 |  |  +--ro neighbor-count?             uint32
                 |  |  +--ro adjacent-neighbor-count?    uint32
                 |  |  +--ro hello-due-in?               string
                 |  |  +--ro hello-in?                   yang:counter64
                 |  |  +--ro hello-out?                  yang:counter64
                 |  |  +--ro database-description-in?    yang:counter64
                 |  |  +--ro database-description-out?   yang:counter64
                 |  |  +--ro ls-request-in?              yang:counter64
                 |  |  +--ro ls-request-out?             yang:counter64
                 |  |  +--ro ls-update-in?               yang:counter64
                 |  |  +--ro ls-update-out?              yang:counter64
                 |  |  +--ro ls-ack-in?                  yang:counter64
                 |  |  +--ro ls-ack-out?                 yang:counter64
                 |  |  +--ro ls-ack-discarded?           yang:counter64
                 |  +--ro instance-id?                   uint8
                 |  +--ro network-type?                  ipi-ospfv3-types:ospfv3_network_type_t
                 |  +--ro cost?                          uint16
                 |  +--ro priority?                      uint8
                 |  +--ro traffic-engineering-metric?    uint16 {feature-list:HAVE_OSPF6_TE}?
                 |  +--ro mtu?                           uint16
                 |  +--ro mtu-ignore?                    empty
                 |  +--ro enable-link-lsa-suppression?   empty
                 |  +--ro enable-bfd?                    boolean {feature-list:HAVE_BFD}?
                 |  +--ro authentication-cryptomap?      -> /ipi-ipsec:ipsec/crypto-maps/crypto-map/config/name {feature-list:HAVE_IPSEC,feature-list:HAVE_TUNNEL}?
                 |  +--ro administrative-state?          ipi-ospfv3-types:ospfv3_interface_admin_state_t
                 |  +--ro interface-index?               uint32
                 |  +--ro interface-state?               ipi-ospfv3-types:ospfv3_interface_state_t
                 |  +--ro address?                       inet:ipv6-address
                 |  +--ro link-local-address?            inet:ipv6-address
                 |  +--ro router-id?                     inet:ipv4-address
                 +--rw routers
                 |  +--rw router* [ospfv3-id area-id]
                 |     +--rw ospfv3-id    -> ../config/ospfv3-id
                 |     +--rw area-id      -> ../config/area-id
                 |     +--rw config
                 |     |  +--rw ospfv3-id?   ipi-ospfv3-types:ospfv3_string_t
                 |     |  +--rw area-id?     ipi-ospfv3-types:ospfv3_area_t
                 |     +--ro state
                 |        +--ro ospfv3-id?   ipi-ospfv3-types:ospfv3_string_t
                 |        +--ro area-id?     ipi-ospfv3-types:ospfv3_area_t
                 +--rw timers
                 |  +--rw config
                 |  |  +--rw dead-interval?             uint16
                 |  |  +--rw hello-interval?            uint16
                 |  |  +--rw transmission-delay?        uint16
                 |  |  +--rw retransmission-interval?   uint16
                 |  +--ro state
                 |     +--ro dead-interval?             uint16
                 |     +--ro hello-interval?            uint16
                 |     +--ro transmission-delay?        uint16
                 |     +--ro retransmission-interval?   uint16
                 +--rw neighbors-static
                 |  +--rw neighbor-static* [address]
                 |     +--rw address    -> ../config/address
                 |     +--rw config
                 |     |  +--rw address?         inet:ipv6-address
                 |     |  +--rw cost?            uint16
                 |     |  +--rw priority?        uint8
                 |     |  +--rw poll-interval?   uint32
                 |     +--ro state
                 |        +--ro address?           inet:ipv6-address
                 |        +--ro cost?              uint16
                 |        +--ro priority?          uint8
                 |        +--ro poll-interval?     uint32
                 |        +--ro interface-state?   string
                 +--ro designated-router
                 |  +--ro state
                 |     +--ro router-id?   inet:ipv4-address
                 |     +--ro address?     inet:ipv6-address
                 +--ro backup-designated-router
                 |  +--ro state
                 |     +--ro router-id?   inet:ipv4-address
                 |     +--ro address?     inet:ipv6-address
                 +--ro neighbor* [router-id]
                    +--ro router-id    -> ../state/router-id
                    +--ro state
                    |  +--ro statistics
                    |  |  +--ro dead-timer-due-in?         string
                    |  |  +--ro timer-dump?                string
                    |  |  +--ro state-changes?             yang:counter64
                    |  |  +--ro database-summary-count?    yang:counter64
                    |  |  +--ro ls-request-count?          yang:counter64
                    |  |  +--ro ls-retransmissiom-count?   yang:counter64
                    |  +--ro router-id?                            inet:ipv4-address
                    |  +--ro address?                              inet:ipv6-address
                    |  +--ro area-id?                              inet:ipv4-address
                    |  +--ro state?                                string
                    |  +--ro state-message?                        string
                    |  +--ro bfd-enable?                           empty {feature-list:HAVE_BFD}?
                    |  +--ro priority?                             uint8
                    |  +--ro neighbor-options?                     ipi-ospfv3-types:ospfv3_ls_options_t
                    |  +--ro designated-router-router-id?          inet:ipv4-address
                    |  +--ro backup-designated-router-router-id?   inet:ipv4-address
                    +--ro route* [prefix]
                       +--ro prefix        -> ../state/prefix
                       +--ro next-hop* [address]
                       |  +--ro address    -> ../state/address
                       |  +--ro state
                       |     +--ro address?          inet:ip-address
                       |     +--ro interface-name?   string
                       |     +--ro transit-area?     empty
                       |     +--ro area-id?          inet:ipv4-address
                       |     +--ro connected?        empty
                       |     +--ro invalid?          empty
                       |     +--ro code?             string
                       +--ro state
                       |  +--ro prefix?     cml-data-types:cml_ip_prefix_t
                       |  +--ro distance?   uint8
                       +--ro route-path
                          +--ro state
                             +--ro type?                 ipi-ospfv3-types:ospfv3_path_type_t
                             +--ro code?                 string
                             +--ro discard-connection?   empty
                             +--ro cost?                 uint32
                             +--ro type-2-cost?          uint32
                             +--ro path-flags?           ipi-ospfv3-types:ospfv3_path_flags_t
 
  rpcs:
    +---x ospfv3-terminal-debug-ospf-all-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    +---x ospfv3-terminal-debug-ospf-all-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    +---x ospfv3-terminal-debug-bfd-on {feature-list:HAVE_BFD}?
    +---x ospfv3-terminal-debug-bfd-off {feature-list:HAVE_BFD}?
    +---x ospfv3-terminal-debug-retransmission-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    +---x ospfv3-terminal-debug-retransmission-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    +---x ospfv3-terminal-debug-dist-ls-on {feature-list:HAVE_BGP_LS}?
    +---x ospfv3-terminal-debug-dist-ls-off {feature-list:HAVE_BGP_LS}?
    +---x ospfv3-terminal-debug-events-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w events    ipi-ospfv3-types:ospfv3_debug_event_t
    +---x ospfv3-terminal-debug-events-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w events    ipi-ospfv3-types:ospfv3_debug_event_t
    +---x ospfv3-terminal-debug-ifsm-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w ifsm    ipi-ospfv3-types:ospfv3_debug_ifsm_t
    +---x ospfv3-terminal-debug-ifsm-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w ifsm    ipi-ospfv3-types:ospfv3_debug_ifsm_t
    +---x ospfv3-terminal-debug-lsa-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w lsa    ipi-ospfv3-types:ospfv3_debug_lsa_t
    +---x ospfv3-terminal-debug-lsa-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w lsa    ipi-ospfv3-types:ospfv3_debug_lsa_t
    +---x ospfv3-terminal-debug-nfsm-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w nfsm    ipi-ospfv3-types:ospfv3_debug_nfsm_t
    +---x ospfv3-terminal-debug-nfsm-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w nfsm    ipi-ospfv3-types:ospfv3_debug_nfsm_t
    +---x ospfv3-terminal-debug-nsm-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w nsm    ipi-ospfv3-types:ospfv3_debug_nsm_t
    +---x ospfv3-terminal-debug-nsm-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w nsm    ipi-ospfv3-types:ospfv3_debug_nsm_t
    +---x ospfv3-terminal-debug-packet-all-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w all    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-all-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w all    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-hello-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w hello    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-hello-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w hello    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-dd-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w dd    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-dd-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w dd    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-ls-request-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w ls-request    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-ls-request-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w ls-request    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-ls-update-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w ls-update    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-ls-update-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w ls-update    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-ls-ack-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w ls-ack    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-packet-ls-ack-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w ls-ack    ipi-ospfv3-types:ospfv3_debug_packet_options_t
    +---x ospfv3-terminal-debug-rib-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w rib    ipi-ospfv3-types:ospfv3_debug_rib_t
    +---x ospfv3-terminal-debug-rib-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w rib    ipi-ospfv3-types:ospfv3_debug_rib_t
    +---x ospfv3-terminal-debug-route-on {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w route    ipi-ospfv3-types:ospfv3_debug_route_t
    +---x ospfv3-terminal-debug-route-off {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w route    ipi-ospfv3-types:ospfv3_debug_route_t
    +---x ospfv3-clear-process {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w process-id    string
    +---x ospfv3-clear-process-all {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    +---x ospfv3-graceful-restart {feature-list:HAVE_OSPF6D,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w grace-period    uint16
    +---x ospfv3-snmp-restart {feature-list:HAVE_SNMP}?
 
  notifications:
    +---n ospfv3-originate-lsa
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro ospfv3-id?        ipi-ospfv3-types:ospfv3_string_t
    |  +--ro router-id?        inet:ipv4-address
    |  +--ro lsdb-area-id?     inet:ipv4-address
    |  +--ro lsdb-type?        uint32
    |  +--ro lsdb-id?          uint32
    |  +--ro lsdb-router-id?   inet:ipv4-address
    +---n ospfv3-tx-retransmit
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro ospfv3-id?            ipi-ospfv3-types:ospfv3_string_t
    |  +--ro router-id?            inet:ipv4-address
    |  +--ro if-index?             int32
    |  +--ro instance-id?          uint8
    |  +--ro neighbor-router-id?   inet:ipv4-address
    |  +--ro packet-type?          ipi-ospfv3-types:ospfv3_packet_type_t
    |  +--ro lsdb-type?            uint32
    |  +--ro lsdb-lsid?            uint32
    |  +--ro lsdb-router-id?       inet:ipv4-address
    +---n ospfv3-neighbor-state-change
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro ospfv3-id?            ipi-ospfv3-types:ospfv3_string_t
    |  +--ro router-id?            inet:ipv4-address
    |  +--ro if-index?             int32
    |  +--ro instance-id?          uint8
    |  +--ro neighbor-router-id?   inet:ipv4-address
    |  +--ro neighbor-state?       ipi-ospfv3-types:ospfv3_neighbor_state_change_t
    +---n ospfv3-virtual-link-config-error
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?   inet:ipv4-address
    |  +--ro area-id?            ipi-ospfv3-types:ospfv3_area_t
    |  +--ro ospfv3-id?          ipi-ospfv3-types:ospfv3_string_t
    |  +--ro router-id?          inet:ipv4-address
    |  +--ro instance-id?        uint8
    |  +--ro error-type?         ipi-ospfv3-types:ospfv3_config_error_type_t
    |  +--ro packet-type?        ipi-ospfv3-types:ospfv3_packet_type_t
    +---n ospfv3-virtual-link-state-change
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?     inet:ipv4-address
    |  +--ro area-id?              ipi-ospfv3-types:ospfv3_area_t
    |  +--ro ospfv3-id?            ipi-ospfv3-types:ospfv3_string_t
    |  +--ro router-id?            inet:ipv4-address
    |  +--ro instance-id?          uint8
    |  +--ro virtual-link-state?   ipi-ospfv3-types:ospfv3_interface_state_t
    +---n ospfv3-virtual-link-neighbor-state-change
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?   inet:ipv4-address
    |  +--ro area-id?            ipi-ospfv3-types:ospfv3_area_t
    |  +--ro ospfv3-id?          ipi-ospfv3-types:ospfv3_string_t
    |  +--ro router-id?          inet:ipv4-address
    |  +--ro instance-id?        uint8
    |  +--ro neighbor-state?     ipi-ospfv3-types:ospfv3_interface_state_t
    +---n ospfv3-virtual-link-rx-bad-packet
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?   inet:ipv4-address
    |  +--ro area-id?            ipi-ospfv3-types:ospfv3_area_t
    |  +--ro ospfv3-id?          ipi-ospfv3-types:ospfv3_string_t
    |  +--ro router-id?          inet:ipv4-address
    |  +--ro instance-id?        uint8
    |  +--ro packet-type?        ipi-ospfv3-types:ospfv3_packet_type_t
    +---n ospfv3-virtual-link-tx-retransmit
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro remote-router-id?   inet:ipv4-address
    |  +--ro area-id?            ipi-ospfv3-types:ospfv3_area_t
    |  +--ro ospfv3-id?          ipi-ospfv3-types:ospfv3_string_t
    |  +--ro router-id?          inet:ipv4-address
    |  +--ro instance-id?        uint8
    |  +--ro packet-type?        ipi-ospfv3-types:ospfv3_packet_type_t
    |  +--ro lsdb-type?          uint32
    |  +--ro lsdb-lsid?          uint32
    |  +--ro lsdb-router-id?     inet:ipv4-address
    +---n ospfv3-interface-config-error
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro interface-name?          string
    |  +--ro router-id?               inet:ipv4-address
    |  +--ro interface-index?         uint32
    |  +--ro interface-instance-id?   uint8
    |  +--ro error-type?              ipi-ospfv3-types:ospfv3_config_error_type_t
    |  +--ro packet-type?             ipi-ospfv3-types:ospfv3_packet_type_t
    +---n ospfv3-interface-state-change
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro interface-name?          string
    |  +--ro router-id?               inet:ipv4-address
    |  +--ro interface-index?         uint32
    |  +--ro interface-instance-id?   uint8
    |  +--ro interface-state?         ipi-ospfv3-types:ospfv3_interface_state_t
    +---n ospfv3-interface-rx-bad-packet
       +--ro severity?                cml-data-types:cml_notif_severity_t
       +--ro eventClass?              cml-data-types:cml_notif_class_t
       +--ro interface-name?          string
       +--ro router-id?               inet:ipv4-address
       +--ro interface-index?         uint32
       +--ro interface-instance-id?   uint8
       +--ro packet-src?              inet:ipv6-address
       +--ro packet-type?             ipi-ospfv3-types:ospfv3_packet_type_t
 
module: ipi-pbr
  +--rw pbr
     +--rw config
     |  +--rw enabled?   empty
     +--ro state
     |  +--ro enabled?   empty
     +--rw interfaces
        +--rw interface* [name]
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?                -> /ipi-interface:interfaces/interface/name
           |  +--rw route-map-name?      string
           |  +--rw route-map-v6-name?   string {feature-list:HAVE_IPV6}?
           +--ro state
              +--ro name?                -> /ipi-interface:interfaces/interface/name
              +--ro route-map-name?      string
              +--ro route-map-v6-name?   string {feature-list:HAVE_IPV6}?
 
  rpcs:
    +---x clear-route-map-pbr-statistics {feature-list:HAVE_PBR}?
       +---w input
          +---w route-map-name    string
 
 
 
 
 
module: ipi-pcep
  +--rw pcep
     +--rw entities
     |  +--rw entity* [entity-id]
     |     +--rw entity-id       -> ../config/entity-id
     |     +--rw config
     |     |  +--rw entity-id?                 uint32
     |     |  +--rw keep-alive-interval?       uint8
     |     |  +--rw dead-interval?             uint8
     |     |  +--rw request-timeout?           uint16
     |     |  +--rw tolerance-keepalive?       uint32
     |     |  +--rw tolerance-dead-interval?   uint32
     |     |  +--rw cool-off-timeout?          int32
     |     |  +--rw source-address?            inet:ip-address
     |     |  +--rw recovery-policy?           ipi-pcep-types:pcep_dlg_recovery_type_t
     |     +--ro state
     |     |  +--ro entity-id?                 uint32
     |     |  +--ro keep-alive-interval?       uint8
     |     |  +--ro dead-interval?             uint8
     |     |  +--ro request-timeout?           uint16
     |     |  +--ro tolerance-keepalive?       uint32
     |     |  +--ro tolerance-dead-interval?   uint32
     |     |  +--ro cool-off-timeout?          int32
     |     |  +--ro source-address?            inet:ip-address
     |     |  +--ro recovery-policy?           ipi-pcep-types:pcep_dlg_recovery_type_t
     |     |  +--ro role?                      ipi-pcep-types:pcep_role_t
     |     |  +--ro connect-timer?             uint32
     |     |  +--ro connect-max-retry?         uint32
     |     |  +--ro init-backoff-timer?        uint32
     |     |  +--ro max-backoff-timer?         uint32
     |     |  +--ro open-wait-timer?           uint32
     |     |  +--ro keep-wait-timer?           uint32
     |     +--rw capability
     |     |  +--rw config
     |     |  |  +--rw pce-instantiate?      empty
     |     |  |  +--rw segment-routing?      empty {feature-list:HAVE_PCEP_SR}?
     |     |  |  +--rw segment-routing-v6?   empty {feature-list:HAVE_PCEP_SRV6}?
     |     |  +--ro state
     |     |     +--ro pce-instantiate?      empty
     |     |     +--ro segment-routing?      empty {feature-list:HAVE_PCEP_SR}?
     |     |     +--ro segment-routing-v6?   empty {feature-list:HAVE_PCEP_SRV6}?
     |     +--rw stateful
     |     |  +--rw config
     |     |  |  +--rw redelegation-timeout?   uint32
     |     |  |  +--rw lsp-state-timeout?      ipi-pcep-types:pcep_lsp_state_timeout_t
     |     |  +--ro state
     |     |     +--ro redelegation-timeout?   uint32
     |     |     +--ro lsp-state-timeout?      ipi-pcep-types:pcep_lsp_state_timeout_t
     |     +--rw flap-limit
     |     |  +--rw config!
     |     |  |  +--rw flap-count       int32
     |     |  |  +--rw flap-interval    int32
     |     |  +--ro state
     |     |     +--ro flap-count       int32
     |     |     +--ro flap-interval    int32
     |     +--rw update-limit
     |     |  +--rw config!
     |     |  |  +--rw count       int32
     |     |  |  +--rw interval    int32
     |     |  +--ro state
     |     |     +--ro count       int32
     |     |     +--ro interval    int32
     |     +--rw lsp-database
     |     |  +--ro ingress-tunnel* [plsp-id]
     |     |     +--ro plsp-id           -> ../state/plsp-id
     |     |     +--ro lsp* [lsp-id]
     |     |     |  +--ro lsp-id                  -> ../state/lsp-id
     |     |     |  +--ro state
     |     |     |  |  +--ro lsp-id?              uint32
     |     |     |  |  +--ro operational-state?   ipi-pcep-types:pcep_lsp_oper_status_t
     |     |     |  |  +--ro last-lsp-error?      ipi-pcep-types:pcep_lsp_error_t
     |     |     |  +--ro binding-label-status
     |     |     |     +--ro state
     |     |     |        +--ro label-value?       uint32
     |     |     |        +--ro allocation-mode?   ipi-pcep-types:pcep_binding_alloc_mode_t
     |     |     +--ro state
     |     |     |  +--ro plsp-id?               uint32
     |     |     |  +--ro tunnel-id?             uint32
     |     |     |  +--ro candidate-path-id?     uint32 {feature-list:HAVE_PCEP_SR}?
     |     |     |  +--ro source?                inet:ipv4-address
     |     |     |  +--ro destination?           inet:ipv4-address
     |     |     |  +--ro extended-tunnel-id?    inet:ipv4-address
     |     |     |  +--ro admin-state?           boolean
     |     |     |  +--ro symbolic-name?         string
     |     |     |  +--ro tunnel-name?           string
     |     |     |  +--ro setup-type?            ipi-pcep-types:pcep_lsp_setup_type_t
     |     |     |  +--ro local-policy-active?   empty
     |     |     |  +--ro request-id?            uint32
     |     |     |  +--ro request-state?         ipi-pcep-types:pcep_tunnel_request_state_t
     |     |     |  +--ro request-flags?         ipi-pcep-types:pcep_tunnel_request_flags_t
     |     |     |  +--ro error-flags?           ipi-pcep-types:pcep_tunnel_err_flags_t
     |     |     |  +--ro recent-lsp-id?         uint32 {feature-list:HAVE_PCEP_RSVP}?
     |     |     |  +--ro pending-updates?       empty
     |     |     |  +--ro last-event?            ipi-pcep-types:pcep_tunnel_recent_event_t
     |     |     +--ro pce-delegation
     |     |     |  +--ro state
     |     |     |     +--ro enabled?                         empty
     |     |     |     +--ro address?                         inet:ipv4-address
     |     |     |     +--ro stateful-request-parameter-id?   uint32
     |     |     +--ro initiation
     |     |        +--ro state
     |     |           +--ro enabled?   empty
     |     |           +--ro address?   inet:ipv4-address
     |     +--rw peers
     |        +--rw peer* [address]
     |           +--rw address       -> ../config/address
     |           +--rw config
     |           |  +--rw address?                 ipi-pcep-types:pcep_ip_addr_t
     |           |  +--rw delegation-preference?   uint32
     |           |  +--rw authentication-key?      string {feature-list:HAVE_TCP_MD5SIG}?
     |           +--ro state
     |           |  +--ro address?                 ipi-pcep-types:pcep_ip_addr_t
     |           |  +--ro delegation-preference?   uint32
     |           |  +--ro authentication-key?      string {feature-list:HAVE_TCP_MD5SIG}?
     |           |  +--ro role?                    ipi-pcep-types:pcep_role_t
     |           |  +--ro session-exists?          empty
     |           |  +--ro session-up-time?         yang:timestamp
     |           |  +--ro session-fail-time?       yang:timestamp
     |           |  +--ro counters
     |           |     +--ro stateful
     |           |     |  +--ro tx-path-reports?   yang:counter32
     |           |     |  +--ro tx-reports?        yang:counter32
     |           |     |  +--ro rx-path-updates?   yang:counter32
     |           |     |  +--ro rx-updates?        yang:counter32
     |           |     |  +--ro rx-pc-initiate?    yang:counter32
     |           |     |  +--ro rx-lsp-initiate?   yang:counter32
     |           |     +--ro session-setup-fail?              yang:counter32
     |           |     +--ro tx-open-message?                 yang:counter32
     |           |     +--ro tx-keep-alive?                   yang:counter32
     |           |     +--ro tx-pc-notifications?             yang:counter32
     |           |     +--ro tx-path-request-errors?          yang:counter32
     |           |     +--ro tx-path-request?                 yang:counter32
     |           |     +--ro tx-request?                      yang:counter32
     |           |     +--ro tx-request-for-pending-reply?    yang:counter32
     |           |     +--ro tx-request-for-error-received?   yang:counter32
     |           |     +--ro tx-request-for-nopath-receive?   yang:counter32
     |           |     +--ro tx-request-for-cancel-receive?   yang:counter32
     |           |     +--ro tx-request-for-ero-received?     yang:counter32
     |           |     +--ro tx-request-timed-out?            yang:counter32
     |           |     +--ro tx-request-sent-cancel-sent?     yang:counter32
     |           |     +--ro tx-request-sent-closed?          yang:counter32
     |           |     +--ro rx-open-message?                 yang:counter32
     |           |     +--ro rx-keep-alive?                   yang:counter32
     |           |     +--ro rx-pc-notifications?             yang:counter32
     |           |     +--ro rx-path-request-errors?          yang:counter32
     |           |     +--ro rx-path-reply?                   yang:counter32
     |           |     +--ro rx-unknown?                      yang:counter32
     |           |     +--ro rx-corrupt?                      yang:counter32
     |           +--ro capability
     |           |  +--ro state
     |           |     +--ro pce-instantiate?   empty
     |           |     +--ro segment-routing?   empty {feature-list:HAVE_PCEP_SR}?
     |           |     +--ro lsp-update?        empty
     |           +--ro session
     |              +--ro state
     |                 +--ro initiator?                     ipi-pcep-types:pcep_initiator_t
     |                 +--ro state?                         ipi-pcep-types:pcep_session_state_t
     |                 +--ro state-changes?                 uint32
     |                 +--ro state-last-change?             yang:timestamp
     |                 +--ro creation-time?                 yang:timestamp
     |                 +--ro connect-retry?                 yang:counter32
     |                 +--ro open-retry?                    uint8
     |                 +--ro local-id?                      uint8
     |                 +--ro remote-id?                     uint8
     |                 +--ro peer-overloaded?               boolean
     |                 +--ro peer-overload-time?            uint32
     |                 +--ro keepalive-timer?               uint8
     |                 +--ro peer-keepalive-timer?          uint8
     |                 +--ro dead-timer?                    uint8
     |                 +--ro peer-dead-timer?               uint8
     |                 +--ro keepalive-hold-timer-remain?   uint8
     |                 +--ro max-unknown-message?           uint32
     +--rw init-lsp-limit
     |  +--rw config!
     |  |  +--rw lsp-limit    uint32
     |  +--ro state
     |     +--ro lsp-limit    uint32
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-pcep-types:pcep_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-pcep-types:pcep_debug_t
     |     +--ro terminal-debug-status?   ipi-pcep-types:pcep_debug_t
     +--rw srv6-spirent-comp
        +--rw config
        |  +--rw srv6-spirent-comp?   empty
        +--ro state
           +--ro srv6-spirent-comp?   empty
 
  rpcs:
    +---x clear-pcep-peer-all {feature-list:HAVE_PCEP}?
    +---x clear-pcep-peer {feature-list:HAVE_PCEP}?
    |  +---w input
    |     +---w address    inet:ip-address
    +---x clear-pcep-statistics {feature-list:HAVE_PCEP}?
    +---x debug-pcep-all {feature-list:HAVE_PCEP}?
    +---x pcep-terminal-debug-on {feature-list:HAVE_PCEP}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-pcep-types:pcep_debug_t
    +---x pcep-terminal-debug-off {feature-list:HAVE_PCEP}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-pcep-types:pcep_debug_t
    +---x clear-pcep-requests {feature-list:HAVE_PCEP}?
       +---w input
          +---w tunnel-id    string
 
  notifications:
    +---n pcep-session-up
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro address?             ipi-pcep-types:pcep_ip_addr_t
    |  +--ro entity-id?           uint32
    |  +--ro initiator?           ipi-pcep-types:pcep_initiator_t
    |  +--ro state-last-change?   yang:timestamp
    |  +--ro state?               ipi-pcep-types:pcep_session_state_t
    +---n pcep-session-down
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro address?             ipi-pcep-types:pcep_ip_addr_t
    |  +--ro entity-id?           uint32
    |  +--ro initiator?           ipi-pcep-types:pcep_initiator_t
    |  +--ro state-last-change?   yang:timestamp
    |  +--ro state?               ipi-pcep-types:pcep_session_state_t
    +---n pcep-session-peer-overload
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro address?              ipi-pcep-types:pcep_ip_addr_t
    |  +--ro entity-id?            uint32
    |  +--ro initiator?            ipi-pcep-types:pcep_initiator_t
    |  +--ro peer-overloaded?      boolean
    |  +--ro peer-overload-time?   uint32
    +---n pcep-session-peer-overload-clear
       +--ro severity?          cml-data-types:cml_notif_severity_t
       +--ro eventClass?        cml-data-types:cml_notif_class_t
       +--ro address?           ipi-pcep-types:pcep_ip_addr_t
       +--ro entity-id?         uint32
       +--ro initiator?         ipi-pcep-types:pcep_initiator_t
       +--ro peer-overloaded?   boolean
 
 
 
 
 
 
 
 
 
 
 
 
 
 
module: ipi-pim
  +--rw pim
     +--rw debug {feature-list:HAVE_BFD}?
     |  +--rw config
     |  |  +--rw bfd?   empty
     |  +--ro state
     |     +--ro bfd?                     empty
     |     +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
     +--rw ipv4
     |  +--rw instances
     |  |  +--rw instance* [vrf-name]
     |  |     +--rw vrf-name                 -> ../config/vrf-name
     |  |     +--rw config
     |  |     |  +--rw vrf-name?                    -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |  |     |  +--rw router-id?                   inet:ipv4-address {feature-list:HAVE_PIM_SM}?
     |  |     |  +--rw join-prune-interval?         uint16 {feature-list:HAVE_PIM_SM}?
     |  |     |  +--rw ecmp-bundle*                 string {feature-list:HAVE_PIM_ECMP_REDIRECT}?
     |  |     |  +--rw enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD}?
     |  |     +--ro state
     |  |     |  +--ro vrf-name?                    -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |  |     |  +--ro router-id?                   inet:ipv4-address {feature-list:HAVE_PIM_SM}?
     |  |     |  +--ro join-prune-interval?         uint16 {feature-list:HAVE_PIM_SM}?
     |  |     |  +--ro ecmp-bundle*                 string {feature-list:HAVE_PIM_ECMP_REDIRECT}?
     |  |     |  +--ro enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD}?
     |  |     |  +--ro counters
     |  |     |  |  +--ro joins-sent?       yang:counter64
     |  |     |  |  +--ro joins-received?   yang:counter64
     |  |     |  +--ro rp-sets
     |  |     |     +--ro rp-set* [group-address]
     |  |     |        +--ro group-address    -> ../state/group-address
     |  |     |        +--ro state
     |  |     |        |  +--ro group-address?     cml-data-types:cml_ipv4_addr_prefix_t
     |  |     |        |  +--ro fragment-tag?      uint16
     |  |     |        |  +--ro number-of-rp?      uint32
     |  |     |        |  +--ro expiration-time?   string
     |  |     |        +--ro rps
     |  |     |           +--ro rp* [rp-address]
     |  |     |              +--ro rp-address    -> ../state/rp-address
     |  |     |              +--ro state
     |  |     |                 +--ro rp-address?        inet:ipv4-address
     |  |     |                 +--ro from?              inet:ipv4-address
     |  |     |                 +--ro mode?              ipi-pim-ipv4-types:pim_ipv4_rp_mode_t
     |  |     |                 +--ro type?              ipi-pim-ipv4-types:pim_ipv4_rp_type_t
     |  |     |                 +--ro priority?          uint8
     |  |     |                 +--ro hold-time?         uint16
     |  |     |                 +--ro up-time?           string
     |  |     |                 +--ro expiration-time?   string
     |  |     +--ro next-hop-destinations
     |  |     |  +--ro next-hop-destination* [destination-address]
     |  |     |     +--ro destination-address    -> ../state/destination-address
     |  |     |     +--ro state
     |  |     |     |  +--ro destination-address?             inet:ipv4-address
     |  |     |     |  +--ro destination-type?                ipi-pim-ipv4-types:pim_ipv4_next_hop_flags_t
     |  |     |     |  +--ro next-hop-count?                  uint32
     |  |     |     |  +--ro preference?                      uint16
     |  |     |     |  +--ro metric?                          uint32
     |  |     |     |  +--ro reference-count?                 uint32
     |  |     |     |  +--ro route-type?                      ipi-pim-ipv4-types:pim_ipv4_route_type_t
     |  |     |     |  +--ro route-sub-type?                  ipi-pim-ipv4-types:pim_ipv4_route_sub_type_t
     |  |     |     |  +--ro subaddress-familiy-identifier?   uint32
     |  |     |     |  +--ro interface-index?                 uint16
     |  |     |     +--ro next-hops
     |  |     |        +--ro next-hop* [ipv4-address]
     |  |     |           +--ro ipv4-address    -> ../state/ipv4-address
     |  |     |           +--ro state
     |  |     |              +--ro ipv4-address?                inet:ipv4-address
     |  |     |              +--ro type?                        ipi-pim-ipv4-types:pim_ipv4_next_hop_type_t
     |  |     |              +--ro recursive-active-next-hop?   uint8
     |  |     |              +--ro recursive-type?              ipi-pim-ipv4-types:pim_ipv4_next_hop_type_t
     |  |     |              +--ro recursive-interface-id?      uint8
     |  |     |              +--ro interface-index?             uint16
     |  |     |              +--ro bfd-interface-index?         uint16
     |  |     |              +--ro interface-name?              string
     |  |     +--rw register-packet {feature-list:HAVE_PIM_SM}?
     |  |     |  +--rw config
     |  |     |  |  +--rw register-reachability-check?   cml-data-types:cml_enable_disable_t
     |  |     |  |  +--rw rate-limit?                    uint16
     |  |     |  |  +--rw suppress-interval?             uint16
     |  |     |  |  +--rw keep-alive-interval?           uint16
     |  |     |  |  +--rw source-address?                ipi-pim-ipv4-types:pim_ipv4_reg_source_t
     |  |     |  |  +--rw accept-register?               string
     |  |     |  +--ro state
     |  |     |     +--ro register-reachability-check?   cml-data-types:cml_enable_disable_t
     |  |     |     +--ro rate-limit?                    uint16
     |  |     |     +--ro suppress-interval?             uint16
     |  |     |     +--ro keep-alive-interval?           uint16
     |  |     |     +--ro source-address?                ipi-pim-ipv4-types:pim_ipv4_reg_source_t
     |  |     |     +--ro accept-register?               string
     |  |     |     +--ro counters
     |  |     |        +--ro register-packet-received?   yang:counter64
     |  |     |        +--ro register-null-received?     yang:counter64
     |  |     |        +--ro register-stop-sent?         yang:counter64
     |  |     |        +--ro register-stop-received?     yang:counter64
     |  |     +--rw interop
     |  |     |  +--rw config
     |  |     |  |  +--rw ignore-rp-set-priority?     empty {feature-list:HAVE_PIM_SM}?
     |  |     |  |  +--rw cisco-bsr-interop-enable?   empty {feature-list:HAVE_PIM_SM}?
     |  |     |  +--ro state
     |  |     |  |  +--ro ignore-rp-set-priority?     empty {feature-list:HAVE_PIM_SM}?
     |  |     |  |  +--ro cisco-bsr-interop-enable?   empty {feature-list:HAVE_PIM_SM}?
     |  |     |  +--rw register-packet
     |  |     |     +--rw config!
     |  |     |     |  +--rw cisco-register-checksum-enable    empty {feature-list:HAVE_PIM_SM}?
     |  |     |     |  +--rw access-control-list?              string {feature-list:HAVE_PIM_SM}?
     |  |     |     +--ro state
     |  |     |        +--ro cisco-register-checksum-enable    empty {feature-list:HAVE_PIM_SM}?
     |  |     |        +--ro access-control-list?              string {feature-list:HAVE_PIM_SM}?
     |  |     +--rw spt-switch
     |  |     |  +--rw config!
     |  |     |  |  +--rw enable                 empty {feature-list:HAVE_PIM_SM}?
     |  |     |  |  +--rw access-control-list?   string {feature-list:HAVE_PIM_SM}?
     |  |     |  +--ro state
     |  |     |     +--ro enable                 empty {feature-list:HAVE_PIM_SM}?
     |  |     |     +--ro access-control-list?   string {feature-list:HAVE_PIM_SM}?
     |  |     +--rw ssm {feature-list:HAVE_PIM_SSM}?
     |  |     |  +--rw config
     |  |     |  |  +--rw range-policy?   ipi-pim-ipv4-types:pim_ipv4_ssm_range_policy_type_t
     |  |     |  +--ro state
     |  |     |     +--ro range-policy?   ipi-pim-ipv4-types:pim_ipv4_ssm_range_policy_type_t
     |  |     +--rw anycast-rps {feature-list:HAVE_PIM_SM}?
     |  |     |  +--rw anycast-rp* [anycast-rp-address member-rp-address]
     |  |     |     +--rw anycast-rp-address    -> ../config/anycast-rp-address
     |  |     |     +--rw member-rp-address     -> ../config/member-rp-address
     |  |     |     +--rw config
     |  |     |     |  +--rw anycast-rp-address?   inet:ipv4-address
     |  |     |     |  +--rw member-rp-address?    inet:ipv4-address
     |  |     |     +--ro state
     |  |     |        +--ro anycast-rp-address?   inet:ipv4-address
     |  |     |        +--ro member-rp-address?    inet:ipv4-address
     |  |     +--rw rendezvous-point
     |  |     |  +--rw static-rps
     |  |     |  |  +--rw static-rps-default
     |  |     |  |     +--rw static-rp-default* [rp-address]
     |  |     |  |        +--rw rp-address    -> ../config/rp-address
     |  |     |  |        +--rw config
     |  |     |  |        |  +--rw rp-address?                        inet:ipv4-address
     |  |     |  |        |  +--rw access-control-list?               string
     |  |     |  |        |  +--rw override-dynamically-learned-rp?   empty
     |  |     |  |        +--ro state
     |  |     |  |           +--ro rp-address?                        inet:ipv4-address
     |  |     |  |           +--ro access-control-list?               string
     |  |     |  |           +--ro override-dynamically-learned-rp?   empty
     |  |     |  +--rw bootstrap-router
     |  |     |  |  +--rw bsr-candidate
     |  |     |  |     +--rw config
     |  |     |  |     |  +--rw interface-name?     -> /ipi-interface:interfaces/interface/name
     |  |     |  |     |  +--rw hash-mask-length?   uint8
     |  |     |  |     |  +--rw priority?           uint8
     |  |     |  |     +--ro state
     |  |     |  |        +--ro interface-name?     -> /ipi-interface:interfaces/interface/name
     |  |     |  |        +--ro hash-mask-length?   uint8
     |  |     |  |        +--ro priority?           uint8
     |  |     |  +--rw rp-candidates
     |  |     |     +--rw rp-candidate* [interface-name]
     |  |     |        +--rw interface-name    -> ../config/interface-name
     |  |     |        +--rw config
     |  |     |        |  +--rw interface-name?           -> /ipi-interface:interfaces/interface/name
     |  |     |        |  +--rw access-control-list?      string
     |  |     |        |  +--rw advertisement-interval?   uint16
     |  |     |        |  +--rw priority?                 uint8
     |  |     |        +--ro state
     |  |     |           +--ro interface-name?           -> /ipi-interface:interfaces/interface/name
     |  |     |           +--ro access-control-list?      string
     |  |     |           +--ro advertisement-interval?   uint16
     |  |     |           +--ro priority?                 uint8
     |  |     +--rw msdp {feature-list:HAVE_PIM_MSDP}?
     |  |     |  +--rw config
     |  |     |  |  +--rw originator-id?   string
     |  |     |  +--ro state
     |  |     |  |  +--ro originator-id?                         string
     |  |     |  |  +--ro source-active-entries-entries-count?   uint32
     |  |     |  +--rw source-active-entries
     |  |     |  |  +--rw source-active-entry* [source-address group-address]
     |  |     |  |     +--rw source-address    -> ../config/source-address
     |  |     |  |     +--rw group-address     -> ../config/group-address
     |  |     |  |     +--rw config
     |  |     |  |     |  +--rw source-address?   inet:ipv4-address
     |  |     |  |     |  +--rw group-address?    inet:ipv4-address
     |  |     |  |     |  +--rw rp-address        inet:ipv4-address
     |  |     |  |     +--ro state
     |  |     |  |        +--ro source-address?                 inet:ipv4-address
     |  |     |  |        +--ro group-address?                  inet:ipv4-address
     |  |     |  |        +--ro rp-address                      inet:ipv4-address
     |  |     |  |        +--ro static-configured?              empty
     |  |     |  |        +--ro uptime?                         string
     |  |     |  |        +--ro expire-time?                    uint32
     |  |     |  |        +--ro stopped?                        empty
     |  |     |  |        +--ro sa-rp-forward-count?            yang:counter64
     |  |     |  |        +--ro reverse-path-forwarding-peer?   inet:ipv4-address
     |  |     |  +--rw peers
     |  |     |     +--rw peer* [address]
     |  |     |        +--rw address           -> ../config/address
     |  |     |        +--rw config
     |  |     |        |  +--rw address?          inet:ipv4-address
     |  |     |        |  +--rw source-address?   ipi-pim-ipv4-types:pim_ipv4_reg_source_t
     |  |     |        |  +--rw mesh-group?       string
     |  |     |        |  +--rw default-peer?     empty
     |  |     |        |  +--rw prefix-list?      ipi-pim-ipv4-types:pim_ipv4_msdp_peer_acl_t
     |  |     |        +--ro state
     |  |     |        |  +--ro counters
     |  |     |        |  |  +--ro keepalives-sent?       yang:counter64
     |  |     |        |  |  +--ro keepalives-received?   yang:counter64
     |  |     |        |  |  +--ro connection-retries?    yang:counter64
     |  |     |        |  +--ro address?          inet:ipv4-address
     |  |     |        |  +--ro source-address?   ipi-pim-ipv4-types:pim_ipv4_reg_source_t
     |  |     |        |  +--ro mesh-group?       string
     |  |     |        |  +--ro default-peer?     empty
     |  |     |        |  +--ro prefix-list?      ipi-pim-ipv4-types:pim_ipv4_msdp_peer_acl_t
     |  |     |        |  +--ro peer-state?       ipi-pim-ipv4-types:pim_ipv4_msdp_peer_state_t
     |  |     |        |  +--ro peer-role?        ipi-pim-ipv4-types:pim_ipv4_msdp_peer_role_t
     |  |     |        +--rw authentication
     |  |     |           +--rw config
     |  |     |           |  +--rw password?   string {feature-list:HAVE_TCP_MD5SIG}?
     |  |     |           +--ro state
     |  |     |              +--ro password?   string {feature-list:HAVE_TCP_MD5SIG}?
     |  |     +--rw debug
     |  |     |  +--rw config
     |  |     |  |  +--rw options?   ipi-pim-ipv4-types:pim_ipv4_debug_t
     |  |     |  +--ro state
     |  |     |     +--ro options?                 ipi-pim-ipv4-types:pim_ipv4_debug_t
     |  |     |     +--ro terminal-debug-status?   ipi-pim-ipv4-types:pim_ipv4_debug_t
     |  |     +--ro multicast-route-table
     |  |        +--ro state
     |  |        |  +--ro counters
     |  |        |     +--ro xxrp-entries?       yang:counter32
     |  |        |     +--ro g-prefix-entries?   yang:counter32
     |  |        |     +--ro xg-entries?         yang:counter32
     |  |        |     +--ro sg-entries?         yang:counter32
     |  |        |     +--ro sg-rpt-entries?     yang:counter32
     |  |        |     +--ro fcr-entries?        yang:counter32
     |  |        +--ro multicast-routes
     |  |           +--ro multicast-route* [source-address group-address type]
     |  |              +--ro source-address                -> ../state/source-address
     |  |              +--ro group-address                 -> ../state/group-address
     |  |              +--ro type                          -> ../state/type
     |  |              +--ro state
     |  |              |  +--ro source-address?            inet:ipv4-address
     |  |              |  +--ro group-address?             inet:ipv4-address
     |  |              |  +--ro mode?                      ipi-pim-ipv4-types:pim_ipv4_multicast_route_mode_t
     |  |              |  +--ro type?                      ipi-pim-ipv4-types:pim_ipv4_multicast_route_type_t
     |  |              |  +--ro uptime?                    string
     |  |              |  +--ro next-hop-address?          inet:ipv4-address
     |  |              |  +--ro next-hop-interface-name?   string
     |  |              |  +--ro last-rendezvous-point?     inet:ipv4-address
     |  |              |  +--ro spt-switch?                empty
     |  |              |  +--ro local-olist*               string
     |  |              |  +--ro joined-olist*              string
     |  |              |  +--ro inherited-olist*           string
     |  |              |  +--ro pruned-olist*              string
     |  |              +--ro upstream-xxrp
     |  |              |  +--ro state
     |  |              |     +--ro route-state?                 ipi-pim-ipv4-types:pim_ipv4_multicast_route_upstream_state_t
     |  |              |     +--ro join-prune-timer?            uint32
     |  |              |     +--ro last-rpf-neighbor-address?   inet:ipv4-address
     |  |              |     +--ro last-rpf-next-hop-address?   inet:ipv4-address
     |  |              |     +--ro macro-state?                 ipi-pim-ipv4-types:pim_ipv4_multicast_route_upstream_macro_state_t {feature-list:HAVE_PIM_SM}?
     |  |              +--ro upstream-xg
     |  |              |  +--ro state
     |  |              |     +--ro route-state?                 ipi-pim-ipv4-types:pim_ipv4_multicast_route_upstream_state_t
     |  |              |     +--ro join-prune-timer?            uint32
     |  |              |     +--ro last-rpf-neighbor-address?   inet:ipv4-address
     |  |              |     +--ro macro-state?                 ipi-pim-ipv4-types:pim_ipv4_multicast_route_upstream_macro_state_t {feature-list:HAVE_PIM_SM}?
     |  |              +--ro upstream-sg
     |  |              |  +--ro state
     |  |              |     +--ro route-state?                 ipi-pim-ipv4-types:pim_ipv4_multicast_route_upstream_state_t
     |  |              |     +--ro join-prune-timer?            uint32
     |  |              |     +--ro last-rpf-neighbor-address?   inet:ipv4-address
     |  |              |     +--ro keep-alive-timer?            uint32
     |  |              |     +--ro spt-switch?                  empty
     |  |              |     +--ro macro-state?                 ipi-pim-ipv4-types:pim_ipv4_multicast_route_upstream_macro_state_t {feature-list:HAVE_PIM_SM}?
     |  |              +--ro upstream-sg-rpt
     |  |              |  +--ro state
     |  |              |     +--ro route-state?      ipi-pim-ipv4-types:pim_ipv4_multicast_route_upstream_sg_rpt_mode_t
     |  |              |     +--ro override-timer?   uint32
     |  |              +--ro forwarding-cache-registers
     |  |              |  +--ro forwarding-cache-register* [address]
     |  |              |     +--ro address    -> ../state/address
     |  |              |     +--ro state
     |  |              |        +--ro address?            inet:ipv4-address
     |  |              |        +--ro keep-alive-timer?   uint32
     |  |              |        +--ro inherited-olist*    string
     |  |              +--ro downstream-interfaces
     |  |                 +--ro downstream-interface* [interface-name]
     |  |                    +--ro interface-name            -> ../state/interface-name
     |  |                    +--ro state
     |  |                    |  +--ro interface-name?   string
     |  |                    +--ro downstream-xg-sg
     |  |                    |  +--ro state
     |  |                    |     +--ro route-state?           ipi-pim-ipv4-types:pim_ipv4_multicast_route_downstream_state_t
     |  |                    |     +--ro expiry-timer?          uint32
     |  |                    |     +--ro prune-pending-timer?   uint32
     |  |                    |     +--ro assert-state?          ipi-pim-ipv4-types:pim_ipv4_multicast_route_downstream_assert_state_t
     |  |                    |     +--ro assert-timer?          uint32
     |  |                    |     +--ro winner-address?        inet:ipv4-address
     |  |                    |     +--ro metric?                uint32
     |  |                    |     +--ro preference?            uint32
     |  |                    |     +--ro rpt-bit?               empty
     |  |                    |     +--ro macro-state?           ipi-pim-ipv4-types:pim_ipv4_multicast_route_downstream_macro_state_t
     |  |                    +--ro downstream-xxrp-sg-rpt
     |  |                       +--ro state
     |  |                          +--ro route-state?           ipi-pim-ipv4-types:pim_ipv4_multicast_route_downstream_state_t
     |  |                          +--ro rpt-state?             ipi-pim-ipv4-types:pim_ipv4_multicast_route_downstream_rpt_state_t
     |  |                          +--ro expiry-timer?          uint32
     |  |                          +--ro prune-pending-timer?   uint32
     |  +--rw interfaces
     |     +--rw interface* [name]
     |        +--rw name              -> ../config/name
     |        +--rw config
     |        |  +--rw name?                                  -> /ipi-interface:interfaces/interface/name
     |        |  +--rw pim-mode?                              ipi-pim-ipv4-types:pim_ipv4_mode_t
     |        |  +--rw bsr-border?                            empty {feature-list:HAVE_PIM_SM}?
     |        |  +--rw dr-priority?                           uint32
     |        |  +--rw hello-interval?                        uint16
     |        |  +--rw hello-holdtime?                        uint16
     |        |  +--rw passive-enable?                        empty
     |        |  +--rw exclude-generated-id?                  empty {feature-list:HAVE_PIM_SM}?
     |        |  +--rw unicast-bootstrap-router?              empty {feature-list:HAVE_PIM_SM}?
     |        |  +--rw neighbor-access-control-list-filter?   string
     |        |  +--rw state-refresh-origination-interval?    uint16 {feature-list:HAVE_PIM_DM}?
     |        |  +--rw ecmp-bundle?                           string {feature-list:HAVE_PIM_ECMP_REDIRECT}?
     |        |  +--rw propagation-delay?                     uint16
     |        |  +--rw enable-bfd?                            cml-data-types:cml_enable_disable_t {feature-list:HAVE_BFD}?
     |        +--ro state
     |        |  +--ro name?                                  -> /ipi-interface:interfaces/interface/name
     |        |  +--ro pim-mode?                              ipi-pim-ipv4-types:pim_ipv4_mode_t
     |        |  +--ro bsr-border?                            empty {feature-list:HAVE_PIM_SM}?
     |        |  +--ro dr-priority?                           uint32
     |        |  +--ro hello-interval?                        uint16
     |        |  +--ro hello-holdtime?                        uint16
     |        |  +--ro passive-enable?                        empty
     |        |  +--ro exclude-generated-id?                  empty {feature-list:HAVE_PIM_SM}?
     |        |  +--ro unicast-bootstrap-router?              empty {feature-list:HAVE_PIM_SM}?
     |        |  +--ro neighbor-access-control-list-filter?   string
     |        |  +--ro state-refresh-origination-interval?    uint16 {feature-list:HAVE_PIM_DM}?
     |        |  +--ro ecmp-bundle?                           string {feature-list:HAVE_PIM_ECMP_REDIRECT}?
     |        |  +--ro propagation-delay?                     uint16
     |        |  +--ro enable-bfd?                            cml-data-types:cml_enable_disable_t {feature-list:HAVE_BFD}?
     |        |  +--ro next-hello?                            string
     |        |  +--ro router-id?                             inet:ipv4-address
     |        |  +--ro local-id?                              uint32
     |        |  +--ro dr-address?                            inet:ipv4-address
     |        +--ro neighbors
     |        |  +--ro neighbor* [address]
     |        |     +--ro address    -> ../state/address
     |        |     +--ro state
     |        |        +--ro address?                 inet:ipv4-address
     |        |        +--ro designated-router?       empty
     |        |        +--ro neighbor-established?    string
     |        |        +--ro neighbor-expires?        string
     |        |        +--ro secondary-address*       inet:ipv4-address
     |        |        +--ro hello-holdtime?          uint16
     |        |        +--ro lan-delay?               uint16
     |        |        +--ro override-interval?       uint32
     |        |        +--ro dr-priority?             uint32 {feature-list:HAVE_PIM_SM}?
     |        |        +--ro generated-id?            uint32
     |        |        +--ro router-id?               inet:ipv4-address
     |        |        +--ro local-id?                uint32
     |        |        +--ro tracking-support?        empty
     |        |        +--ro ecmp-redirect-enabled?   empty {feature-list:HAVE_PIM_ECMP_REDIRECT}?
     |        +--rw pim-redundancy
     |           +--rw vrrp {feature-list:HAVE_PIM_SM_VRRP_AWARE}?
     |              +--rw config!
     |              |  +--rw virtual-router-id    uint8
     |              |  +--rw dr-priority          uint32
     |              +--ro state
     |                 +--ro virtual-router-id       uint8
     |                 +--ro dr-priority             uint32
     |                 +--ro selected-dr-priority?   uint32
     |                 +--ro vrrp-master?            boolean
     +--rw ipv6
        +--rw instances
        |  +--rw instance* [vrf-name]
        |     +--rw vrf-name                 -> ../config/vrf-name
        |     +--rw config
        |     |  +--rw vrf-name?                    -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
        |     |  +--rw router-id?                   inet:ipv4-address {feature-list:HAVE_PIM_SM}?
        |     |  +--rw join-prune-interval?         uint16 {feature-list:HAVE_PIM_SM}?
        |     |  +--rw ecmp-bundle*                 string {feature-list:HAVE_PIM_ECMP_REDIRECT}?
        |     |  +--rw enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD}?
        |     +--ro state
        |     |  +--ro vrf-name?                    -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
        |     |  +--ro router-id?                   inet:ipv4-address {feature-list:HAVE_PIM_SM}?
        |     |  +--ro join-prune-interval?         uint16 {feature-list:HAVE_PIM_SM}?
        |     |  +--ro ecmp-bundle*                 string {feature-list:HAVE_PIM_ECMP_REDIRECT}?
        |     |  +--ro enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD}?
        |     |  +--ro counters
        |     |  |  +--ro joins-sent?       yang:counter64
        |     |  |  +--ro joins-received?   yang:counter64
        |     |  +--ro rp-sets
        |     |     +--ro rp-set* [group-address]
        |     |        +--ro group-address    -> ../state/group-address
        |     |        +--ro state
        |     |        |  +--ro group-address?     cml-data-types:cml_ipv6_prefix_t
        |     |        |  +--ro fragment-tag?      uint16
        |     |        |  +--ro number-of-rp?      uint32
        |     |        |  +--ro expiration-time?   string
        |     |        +--ro rps
        |     |           +--ro rp* [rp-address]
        |     |              +--ro rp-address    -> ../state/rp-address
        |     |              +--ro state
        |     |                 +--ro rp-address?        inet:ipv6-address
        |     |                 +--ro from?              inet:ipv6-address
        |     |                 +--ro mode?              ipi-pim-ipv6-types:pim_ipv6_rp_mode_t
        |     |                 +--ro type?              ipi-pim-ipv6-types:pim_ipv6_rp_type_t
        |     |                 +--ro priority?          uint8
        |     |                 +--ro hold-time?         uint16
        |     |                 +--ro up-time?           string
        |     |                 +--ro expiration-time?   string
        |     +--ro next-hop-destinations
        |     |  +--ro next-hop-destination* [destination-address]
        |     |     +--ro destination-address    -> ../state/destination-address
        |     |     +--ro state
        |     |     |  +--ro destination-address?             inet:ipv6-address
        |     |     |  +--ro destination-type?                ipi-pim-ipv6-types:pim_ipv6_next_hop_flags_t
        |     |     |  +--ro next-hop-count?                  uint32
        |     |     |  +--ro preference?                      uint16
        |     |     |  +--ro metric?                          uint32
        |     |     |  +--ro reference-count?                 uint32
        |     |     |  +--ro route-type?                      ipi-pim-ipv6-types:pim_ipv6_route_type_t
        |     |     |  +--ro route-sub-type?                  ipi-pim-ipv6-types:pim_ipv6_route_sub_type_t
        |     |     |  +--ro subaddress-familiy-identifier?   uint32
        |     |     |  +--ro interface-index?                 uint16
        |     |     +--ro next-hops
        |     |        +--ro next-hop* [ipv6-address]
        |     |           +--ro ipv6-address    -> ../state/ipv6-address
        |     |           +--ro state
        |     |              +--ro ipv6-address?                inet:ipv6-address
        |     |              +--ro type?                        ipi-pim-ipv6-types:pim_ipv6_next_hop_type_t
        |     |              +--ro recursive-active-next-hop?   uint8
        |     |              +--ro recursive-type?              ipi-pim-ipv6-types:pim_ipv6_next_hop_type_t
        |     |              +--ro recursive-interface-id?      uint8
        |     |              +--ro interface-index?             uint16
        |     |              +--ro bfd-interface-index?         uint16
        |     |              +--ro interface-name?              string
        |     +--rw register-packet {feature-list:HAVE_PIM_SM}?
        |     |  +--rw config
        |     |  |  +--rw register-reachability-check?   cml-data-types:cml_enable_disable_t
        |     |  |  +--rw rate-limit?                    uint16
        |     |  |  +--rw suppress-interval?             uint16
        |     |  |  +--rw keep-alive-interval?           uint16
        |     |  |  +--rw source-address?                ipi-pim-ipv6-types:pim_ipv6_reg_source_t
        |     |  |  +--rw accept-register?               string
        |     |  +--ro state
        |     |     +--ro register-reachability-check?   cml-data-types:cml_enable_disable_t
        |     |     +--ro rate-limit?                    uint16
        |     |     +--ro suppress-interval?             uint16
        |     |     +--ro keep-alive-interval?           uint16
        |     |     +--ro source-address?                ipi-pim-ipv6-types:pim_ipv6_reg_source_t
        |     |     +--ro accept-register?               string
        |     |     +--ro counters
        |     |        +--ro register-packet-received?   yang:counter64
        |     |        +--ro register-null-received?     yang:counter64
        |     |        +--ro register-stop-sent?         yang:counter64
        |     |        +--ro register-stop-received?     yang:counter64
        |     +--rw interop
        |     |  +--rw config
        |     |  |  +--rw ignore-rp-set-priority?     empty {feature-list:HAVE_PIM_SM}?
        |     |  |  +--rw cisco-bsr-interop-enable?   empty {feature-list:HAVE_PIM_SM}?
        |     |  +--ro state
        |     |  |  +--ro ignore-rp-set-priority?     empty {feature-list:HAVE_PIM_SM}?
        |     |  |  +--ro cisco-bsr-interop-enable?   empty {feature-list:HAVE_PIM_SM}?
        |     |  +--rw register-packet
        |     |     +--rw config!
        |     |     |  +--rw cisco-register-checksum-enable    empty {feature-list:HAVE_PIM_SM}?
        |     |     |  +--rw access-control-list?              string {feature-list:HAVE_PIM_SM}?
        |     |     +--ro state
        |     |        +--ro cisco-register-checksum-enable    empty {feature-list:HAVE_PIM_SM}?
        |     |        +--ro access-control-list?              string {feature-list:HAVE_PIM_SM}?
        |     +--rw spt-switch
        |     |  +--rw config!
        |     |  |  +--rw enable                 empty {feature-list:HAVE_PIM_SM}?
        |     |  |  +--rw access-control-list?   string {feature-list:HAVE_PIM_SM}?
        |     |  +--ro state
        |     |     +--ro enable                 empty {feature-list:HAVE_PIM_SM}?
        |     |     +--ro access-control-list?   string {feature-list:HAVE_PIM_SM}?
        |     +--rw ssm {feature-list:HAVE_PIM_SSM}?
        |     |  +--rw config
        |     |  |  +--rw range-policy?   ipi-pim-ipv6-types:pim_ipv6_ssm_range_policy_type_t
        |     |  +--ro state
        |     |     +--ro range-policy?   ipi-pim-ipv6-types:pim_ipv6_ssm_range_policy_type_t
        |     +--rw anycast-rps {feature-list:HAVE_PIM_SM}?
        |     |  +--rw anycast-rp* [anycast-rp-address member-rp-address]
        |     |     +--rw anycast-rp-address    -> ../config/anycast-rp-address
        |     |     +--rw member-rp-address     -> ../config/member-rp-address
        |     |     +--rw config
        |     |     |  +--rw anycast-rp-address?   inet:ipv6-address
        |     |     |  +--rw member-rp-address?    inet:ipv6-address
        |     |     +--ro state
        |     |        +--ro anycast-rp-address?   inet:ipv6-address
        |     |        +--ro member-rp-address?    inet:ipv6-address
        |     +--rw rendezvous-point
        |     |  +--rw config
        |     |  |  +--rw embed-rp?   cml-data-types:cml_enable_disable_t
        |     |  +--ro state
        |     |  |  +--ro embed-rp?   cml-data-types:cml_enable_disable_t
        |     |  +--rw static-rps
        |     |  |  +--rw static-rps-default
        |     |  |     +--rw static-rp-default* [rp-address]
        |     |  |        +--rw rp-address    -> ../config/rp-address
        |     |  |        +--rw config
        |     |  |        |  +--rw rp-address?                        inet:ipv6-address
        |     |  |        |  +--rw access-control-list?               string
        |     |  |        |  +--rw override-dynamically-learned-rp?   empty
        |     |  |        +--ro state
        |     |  |           +--ro rp-address?                        inet:ipv6-address
        |     |  |           +--ro access-control-list?               string
        |     |  |           +--ro override-dynamically-learned-rp?   empty
        |     |  +--rw bootstrap-router
        |     |  |  +--rw bsr-candidate
        |     |  |     +--rw config
        |     |  |     |  +--rw interface-name?     -> /ipi-interface:interfaces/interface/name
        |     |  |     |  +--rw hash-mask-length?   uint8
        |     |  |     |  +--rw priority?           uint8
        |     |  |     +--ro state
        |     |  |        +--ro interface-name?     -> /ipi-interface:interfaces/interface/name
        |     |  |        +--ro hash-mask-length?   uint8
        |     |  |        +--ro priority?           uint8
        |     |  +--rw rp-candidates
        |     |     +--rw rp-candidate* [interface-name]
        |     |        +--rw interface-name    -> ../config/interface-name
        |     |        +--rw config
        |     |        |  +--rw interface-name?           -> /ipi-interface:interfaces/interface/name
        |     |        |  +--rw access-control-list?      string
        |     |        |  +--rw advertisement-interval?   uint16
        |     |        |  +--rw priority?                 uint8
        |     |        +--ro state
        |     |           +--ro interface-name?           -> /ipi-interface:interfaces/interface/name
        |     |           +--ro access-control-list?      string
        |     |           +--ro advertisement-interval?   uint16
        |     |           +--ro priority?                 uint8
        |     +--rw debug
        |     |  +--rw config
        |     |  |  +--rw options?   ipi-pim-ipv6-types:pim_ipv6_debug_t
        |     |  +--ro state
        |     |     +--ro options?                 ipi-pim-ipv6-types:pim_ipv6_debug_t
        |     |     +--ro terminal-debug-status?   ipi-pim-ipv6-types:pim_ipv6_debug_t
        |     +--ro multicast-route-table
        |        +--ro state
        |        |  +--ro counters
        |        |     +--ro xxrp-entries?       yang:counter32
        |        |     +--ro g-prefix-entries?   yang:counter32
        |        |     +--ro xg-entries?         yang:counter32
        |        |     +--ro sg-entries?         yang:counter32
        |        |     +--ro sg-rpt-entries?     yang:counter32
        |        |     +--ro fcr-entries?        yang:counter32
        |        +--ro multicast-routes
        |           +--ro multicast-route* [source-address group-address type]
        |              +--ro source-address                -> ../state/source-address
        |              +--ro group-address                 -> ../state/group-address
        |              +--ro type                          -> ../state/type
        |              +--ro state
        |              |  +--ro source-address?            inet:ipv6-address
        |              |  +--ro group-address?             inet:ipv6-address
        |              |  +--ro mode?                      ipi-pim-ipv6-types:pim_ipv6_multicast_route_mode_t
        |              |  +--ro type?                      ipi-pim-ipv6-types:pim_ipv6_multicast_route_type_t
        |              |  +--ro uptime?                    string
        |              |  +--ro next-hop-address?          inet:ipv6-address
        |              |  +--ro next-hop-interface-name?   string
        |              |  +--ro last-rendezvous-point?     inet:ipv6-address
        |              |  +--ro spt-switch?                empty
        |              |  +--ro local-olist*               string
        |              |  +--ro joined-olist*              string
        |              |  +--ro inherited-olist*           string
        |              |  +--ro pruned-olist*              string
        |              +--ro upstream-xxrp
        |              |  +--ro state
        |              |     +--ro route-state?                 ipi-pim-ipv6-types:pim_ipv6_multicast_route_upstream_state_t
        |              |     +--ro join-prune-timer?            uint32
        |              |     +--ro last-rpf-neighbor-address?   inet:ipv6-address
        |              |     +--ro last-rpf-next-hop-address?   inet:ipv6-address
        |              |     +--ro macro-state?                 ipi-pim-ipv6-types:pim_ipv6_multicast_route_upstream_macro_state_t {feature-list:HAVE_PIM_SM}?
        |              +--ro upstream-xg
        |              |  +--ro state
        |              |     +--ro route-state?                 ipi-pim-ipv6-types:pim_ipv6_multicast_route_upstream_state_t
        |              |     +--ro join-prune-timer?            uint32
        |              |     +--ro last-rpf-neighbor-address?   inet:ipv6-address
        |              |     +--ro macro-state?                 ipi-pim-ipv6-types:pim_ipv6_multicast_route_upstream_macro_state_t {feature-list:HAVE_PIM_SM}?
        |              +--ro upstream-sg
        |              |  +--ro state
        |              |     +--ro route-state?                 ipi-pim-ipv6-types:pim_ipv6_multicast_route_upstream_state_t
        |              |     +--ro join-prune-timer?            uint32
        |              |     +--ro last-rpf-neighbor-address?   inet:ipv6-address
        |              |     +--ro keep-alive-timer?            uint32
        |              |     +--ro spt-switch?                  empty
        |              |     +--ro macro-state?                 ipi-pim-ipv6-types:pim_ipv6_multicast_route_upstream_macro_state_t {feature-list:HAVE_PIM_SM}?
        |              +--ro upstream-sg-rpt
        |              |  +--ro state
        |              |     +--ro route-state?      ipi-pim-ipv6-types:pim_ipv6_multicast_route_upstream_sgrpt_mode_t
        |              |     +--ro override-timer?   uint32
        |              +--ro forwarding-cache-registers
        |              |  +--ro forwarding-cache-register* [address]
        |              |     +--ro address    -> ../state/address
        |              |     +--ro state
        |              |        +--ro address?            inet:ipv6-address
        |              |        +--ro keep-alive-timer?   uint32
        |              |        +--ro inherited-olist*    string
        |              +--ro downstream-interfaces
        |                 +--ro downstream-interface* [interface-name]
        |                    +--ro interface-name            -> ../state/interface-name
        |                    +--ro state
        |                    |  +--ro interface-name?   string
        |                    +--ro downstream-xg-sg
        |                    |  +--ro state
        |                    |     +--ro route-state?           ipi-pim-ipv6-types:pim_ipv6_multicast_route_downstream_state_t
        |                    |     +--ro expiry-timer?          uint32
        |                    |     +--ro prune-pending-timer?   uint32
        |                    |     +--ro assert-state?          ipi-pim-ipv6-types:pim_ipv6_multicast_route_downstream_assert_state_t
        |                    |     +--ro assert-timer?          uint32
        |                    |     +--ro winner-address?        inet:ipv6-address
        |                    |     +--ro metric?                uint32
        |                    |     +--ro preference?            uint32
        |                    |     +--ro rpt-bit?               empty
        |                    |     +--ro macro-state?           ipi-pim-ipv6-types:pim_ipv6_multicast_route_downstream_macro_state_t
        |                    +--ro downstream-xxrp-sg-rpt
        |                       +--ro state
        |                          +--ro route-state?           ipi-pim-ipv6-types:pim_ipv6_multicast_route_downstream_state_t
        |                          +--ro rpt-state?             ipi-pim-ipv6-types:pim_ipv6_multicast_route_downstream_rpt_state_t
        |                          +--ro expiry-timer?          uint32
        |                          +--ro prune-pending-timer?   uint32
        +--rw interfaces
           +--rw interface* [name]
              +--rw name         -> ../config/name
              +--rw config
              |  +--rw name?                                  -> /ipi-interface:interfaces/interface/name
              |  +--rw pim-mode?                              ipi-pim-ipv6-types:pim_ipv6_mode_t
              |  +--rw bsr-border?                            empty {feature-list:HAVE_PIM_SM}?
              |  +--rw dr-priority?                           uint32
              |  +--rw hello-interval?                        uint16
              |  +--rw hello-holdtime?                        uint16
              |  +--rw passive-enable?                        empty
              |  +--rw exclude-generated-id?                  empty {feature-list:HAVE_PIM_SM}?
              |  +--rw unicast-bootstrap-router?              empty {feature-list:HAVE_PIM_SM}?
              |  +--rw neighbor-access-control-list-filter?   string
              |  +--rw state-refresh-origination-interval?    uint16 {feature-list:HAVE_PIM_DM}?
              |  +--rw ecmp-bundle?                           string {feature-list:HAVE_PIM_ECMP_REDIRECT}?
              |  +--rw propagation-delay?                     uint16
              |  +--rw enable-bfd?                            cml-data-types:cml_enable_disable_t {feature-list:HAVE_BFD}?
              +--ro state
              |  +--ro name?                                  -> /ipi-interface:interfaces/interface/name
              |  +--ro pim-mode?                              ipi-pim-ipv6-types:pim_ipv6_mode_t
              |  +--ro bsr-border?                            empty {feature-list:HAVE_PIM_SM}?
              |  +--ro dr-priority?                           uint32
              |  +--ro hello-interval?                        uint16
              |  +--ro hello-holdtime?                        uint16
              |  +--ro passive-enable?                        empty
              |  +--ro exclude-generated-id?                  empty {feature-list:HAVE_PIM_SM}?
              |  +--ro unicast-bootstrap-router?              empty {feature-list:HAVE_PIM_SM}?
              |  +--ro neighbor-access-control-list-filter?   string
              |  +--ro state-refresh-origination-interval?    uint16 {feature-list:HAVE_PIM_DM}?
              |  +--ro ecmp-bundle?                           string {feature-list:HAVE_PIM_ECMP_REDIRECT}?
              |  +--ro propagation-delay?                     uint16
              |  +--ro enable-bfd?                            cml-data-types:cml_enable_disable_t {feature-list:HAVE_BFD}?
              |  +--ro next-hello?                            string
              |  +--ro router-id?                             inet:ipv4-address
              |  +--ro local-id?                              uint32
              |  +--ro dr-address?                            inet:ipv6-address
              +--ro neighbors
                 +--ro neighbor* [address]
                    +--ro address    -> ../state/address
                    +--ro state
                       +--ro address?                 inet:ipv6-address
                       +--ro designated-router?       empty
                       +--ro neighbor-established?    string
                       +--ro neighbor-expires?        string
                       +--ro secondary-address*       inet:ipv6-address
                       +--ro hello-holdtime?          uint16
                       +--ro lan-delay?               uint16
                       +--ro override-interval?       uint32
                       +--ro dr-priority?             uint32 {feature-list:HAVE_PIM_SM}?
                       +--ro generated-id?            uint32
                       +--ro router-id?               inet:ipv4-address
                       +--ro local-id?                uint32
                       +--ro tracking-support?        empty
                       +--ro ecmp-redirect-enabled?   empty {feature-list:HAVE_PIM_ECMP_REDIRECT}?
 
  rpcs:
    +---x pim-snmp-restart {feature-list:HAVE_SNMP}?
    +---x pim-ipv4-clear-bsr-rendezvous-point {feature-list:HAVE_PIM_IPV4,feature-list:HAVE_PIM_SM}?
    |  +---w input
    |     +---w vrf-name?   string
    |     +---w pim-mode    ipi-pim-ipv4-types:pim_ipv4_mode_clear_bsr_rp_t
    +---x pim-ipv4-clear-multicast-route {feature-list:HAVE_PIM_IPV4}?
    |  +---w input
    |     +---w vrf-name?   string
    |     +---w pim-mode    ipi-pim-ipv4-types:pim_ipv4_mode_t
    +---x pim-ipv4-clear-multicast-route-source-group {feature-list:HAVE_PIM_IPV4}?
    |  +---w input
    |     +---w vrf-name?        string
    |     +---w group-address    inet:ipv4-address
    +---x pim-ipv4-clear-multicast-route-source-group-mode {feature-list:HAVE_PIM_IPV4}?
    |  +---w input
    |     +---w vrf-name?         string
    |     +---w group-address     inet:ipv4-address
    |     +---w source-address    inet:ipv4-address
    |     +---w pim-mode          ipi-pim-ipv4-types:pim_ipv4_mode_t
    +---x pim-ipv4-clear-msdp-peer {feature-list:HAVE_PIM_IPV4,feature-list:HAVE_PIM_MSDP_API}?
    |  +---w input
    |     +---w vrf-name?   string
    |     +---w address     inet:ipv4-address
    +---x pim-ipv4-clear-msdp-sa-cache {feature-list:HAVE_PIM_IPV4,feature-list:HAVE_PIM_MSDP_API}?
    |  +---w input
    |     +---w vrf-name?        string
    |     +---w group-address    inet:ipv4-address
    +---x pim-ipv4-terminal-debug-on {feature-list:HAVE_PIM_IPV4}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-pim-ipv4-types:pim_ipv4_debug_t
    +---x pim-ipv4-terminal-debug-off {feature-list:HAVE_PIM_IPV4}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-pim-ipv4-types:pim_ipv4_debug_t
    +---x pim-ipv4-terminal-debug-all-on {feature-list:HAVE_PIM_IPV4}?
    |  +---w input
    |     +---w vrf-name?   string
    +---x pim-ipv4-terminal-debug-all-off {feature-list:HAVE_PIM_IPV4}?
    |  +---w input
    |     +---w vrf-name?   string
    +---x pim-ipv6-clear-bsr-rendezvous-point {feature-list:HAVE_PIM_IPV6,feature-list:HAVE_PIM_SM}?
    |  +---w input
    |     +---w vrf-name?   string
    |     +---w pim-mode    ipi-pim-ipv6-types:pim_ipv6_mode_clear_bsr_rp_t
    +---x pim-ipv6-clear-multicast-route {feature-list:HAVE_PIM_IPV6}?
    |  +---w input
    |     +---w vrf-name?   string
    |     +---w pim-mode    ipi-pim-ipv6-types:pim_ipv6_mode_t
    +---x pim-ipv6-clear-multicast-route-source-group {feature-list:HAVE_PIM_IPV6}?
    |  +---w input
    |     +---w vrf-name?        string
    |     +---w group-address    inet:ipv6-address
    +---x pim-ipv6-clear-multicast-route-source-group-mode {feature-list:HAVE_PIM_IPV6}?
    |  +---w input
    |     +---w vrf-name?         string
    |     +---w group-address     inet:ipv6-address
    |     +---w source-address    inet:ipv6-address
    |     +---w pim-mode          ipi-pim-ipv6-types:pim_ipv6_mode_t
    +---x pim-terminal-debug-bfd-on {feature-list:HAVE_PIMD,feature-list:HAVE_PIM_IPV4,feature-list:HAVE_PIM_IPV4_OR_HAVE_PIM_IPV6}?
    +---x pim-terminal-debug-bfd-off {feature-list:HAVE_PIMD,feature-list:HAVE_PIM_IPV4,feature-list:HAVE_PIM_IPV4_OR_HAVE_PIM_IPV6}?
    +---x pim-ipv6-terminal-debug-on {feature-list:HAVE_PIM_IPV6}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-pim-ipv6-types:pim_ipv6_debug_t
    +---x pim-ipv6-terminal-debug-off {feature-list:HAVE_PIM_IPV6}?
    |  +---w input
    |     +---w vrf-name?                 string
    |     +---w terminal-debug-options    ipi-pim-ipv6-types:pim_ipv6_debug_t
    +---x pim-ipv6-terminal-debug-all-on {feature-list:HAVE_PIM_IPV6}?
    |  +---w input
    |     +---w vrf-name?   string
    +---x pim-ipv6-terminal-debug-all-off {feature-list:HAVE_PIM_IPV6}?
       +---w input
          +---w vrf-name?   string
 
 
module: ipi-ping
  +--rw ping
     +--ro test-result* [test-name]
        +--ro test-name          -> ../state/test-name
        +--ro replies* [sequence-number]
        |  +--ro sequence-number    -> ../state/sequence-number
        |  +--ro state
        |     +--ro sequence-number?    uint32
        |     +--ro ttl-or-hop-limit?   uint8
        |     +--ro round-trip-time?    decimal64
        |     +--ro result?             ipi-ping-types:ping_packet_result_t
        +--ro state
        |  +--ro test-name?     string
        |  +--ro test-status?   ipi-ping-types:ping_test_status_t
        |  +--ro start-time?    yang:date-and-time
        |  +--ro end-time?      yang:date-and-time
        +--ro test-parameters
        |  +--ro state
        |     +--ro destination?     string
        |     +--ro protocol?        ipi-ping-types:ping_ip_protocol_t
        |     +--ro vrf-name?        string
        |     +--ro repeat-count?    uint32
        |     +--ro interval?        uint16
        |     +--ro time-to-live?    uint8
        |     +--ro datagram-size?   uint32
        |     +--ro timeout?         uint32
        |     +--ro deadline?        uint32
        +--ro summary-info
           +--ro state
              +--ro packets-transmitted?   uint32
              +--ro packets-received?      uint32
              +--ro success-rate?          uint8
              +--ro loss-rate?             uint8
              +--ro min-rtt?               decimal64
              +--ro rtt-avg?               decimal64
              +--ro max-rtt?               decimal64
 
  rpcs:
    +---x ping-start-test {feature-list:HAVE_HOSTPD}?
    |  +---w input
    |     +---w test-name        string
    |     +---w destination      string
    |     +---w protocol         ipi-ping-types:ping_ip_protocol_t
    |     +---w vrf-name?        string
    |     +---w repeat-count?    uint32
    |     +---w interval?        uint16
    |     +---w time-to-live?    uint8
    |     +---w datagram-size?   uint32
    |     +---w timeout?         uint32
    |     +---w deadline?        uint32
    +---x ping-stop {feature-list:HAVE_HOSTPD}?
       +---w input
          +---w test-name    string
 
  notifications:
    +---n ping-test-completed
       +--ro severity?      cml-data-types:cml_notif_severity_t
       +--ro eventClass?    cml-data-types:cml_notif_class_t
       +--ro test-name?     string
       +--ro test-status?   ipi-ping-types:ping_test_status_t
       +--ro destination?   string
 
 
 
 
 
 
 
 
 
 
 
module: ipi-platform-port
 
  augment /ipi-platform:components/ipi-platform:component:
    +--ro port
 
 
 
 
 
 
 
 
 
 
 
 
module: ipi-platform-transceiver-smart-sfp
  +--rw smart-sfp
     +--rw interfaces
     |  +--rw interface* [interface-name]
     |     +--rw interface-name    -> ../config/interface-name
     |     +--rw config
     |     |  +--rw interface-name?         -> /ipi-interface:interfaces/interface/name
     |     |  +--rw xcvr-loopback-remote?   cmm_xcvr_direction_t
     |     +--ro state
     |        +--ro interface-name?         -> /ipi-interface:interfaces/interface/name
     |        +--ro xcvr-loopback-remote?   cmm_xcvr_direction_t
     +--rw components
        +--ro component* [name]
           +--ro name     -> ../state/name
           +--ro state
              +--ro name?   string
 
  rpcs:
    +---x smart-sfp-xcvr-txdisable-duration {feature-list:HAVE_CMMD}?
    |  +---w input
    |     +---w if-name                     string
    |     +---w xcvr-tx-disable-duration    uint16
    +---x smart-sfp-xcvr-reset-remote {feature-list:HAVE_CMMD}?
       +---w input
          +---w if-name    string
 
 
 
 
 
 
module: ipi-platform
  +--rw components
  |  +--ro component* [name]
  |  |  +--ro name                      -> ../state/name
  |  |  +--ro state
  |  |  |  +--ro name?                           string
  |  |  |  +--ro type?                           ipi-platform-types:cmm_component_type_t {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro location?                       string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro mfg-name?                       string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro mfg-date?                       yang:date-and-time {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro description?                    string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro hardware-version?               string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro firmware-version?               string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro software-version?               string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro serial-no?                      string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro part-no?                        string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro removable?                      boolean {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro oper-status?                    ipi-platform-types:cmm_component_oper_status_t {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro product-name?                   string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro asset-tag?                      string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro component-additional-details*   string {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro parent?                         -> /components/component/state/name {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro empty?                          boolean {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro memory {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  |  +--ro available?   uint64
  |  |  |  |  +--ro utilized?    uint64
  |  |  |  +--ro board-fru {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  |  +--ro board-name?        string
  |  |  |  |  +--ro board-serial-no?   string
  |  |  |  |  +--ro board-mfg-name?    string
  |  |  |  |  +--ro board-mfg-date?    yang:date-and-time
  |  |  |  +--ro temperature
  |  |  |     +--ro instant?                         decimal64
  |  |  |     +--ro min?                             decimal64
  |  |  |     +--ro max?                             decimal64
  |  |  |     +--ro avg?                             decimal64
  |  |  |     +--ro interval?                        uint32
  |  |  |     +--ro sensor-name?                     string
  |  |  |     +--ro sensor-index?                    uint8
  |  |  |     +--ro alarm-status?                    boolean
  |  |  |     +--ro alarm-threshold?                 decimal64
  |  |  |     +--ro alarm-severity?                  cml_alarm_severity_t
  |  |  |     +--ro minimum-emergency-temperature?   decimal64
  |  |  |     +--ro maximum-emergency-temperature?   decimal64
  |  |  |     +--ro minimum-alert-temperature?       decimal64
  |  |  |     +--ro maximum-alert-temperature?       decimal64
  |  |  |     +--ro minimum-critical-temperature?    decimal64
  |  |  |     +--ro maximum-critical-temperature?    decimal64
  |  |  +--ro bmc-sensor-data-record {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro state
  |  |  |     +--ro sensor-name?             string
  |  |  |     +--ro value?                   ipi-platform-types:cmm_bmc_value_t
  |  |  |     +--ro units?                   string
  |  |  |     +--ro lower-non-recoverable?   decimal64
  |  |  |     +--ro lower-non-critical?      decimal64
  |  |  |     +--ro lower-critical?          decimal64
  |  |  |     +--ro upper-non-critical?      decimal64
  |  |  |     +--ro upper-critical?          decimal64
  |  |  |     +--ro upper-non-recoverable?   decimal64
  |  |  |     +--ro operational-status?      string
  |  |  |     +--ro threshold?               decimal64
  |  |  |     +--ro event-type?              ipi-platform-types:cmm_bmc_event_type_t
  |  |  +--ro subcomponents
  |  |  |  +--ro subcomponent* [subcomponent-name]
  |  |  |     +--ro subcomponent-name    -> ../state/subcomponent-name
  |  |  |     +--ro state
  |  |  |        +--ro subcomponent-name?   -> /components/component/state/name
  |  |  +--ro cpu
  |  |  |  +--ro state
  |  |  |     +--ro processor-count?               uint32
  |  |  |     +--ro cpu-1min-load-percentage?      decimal64
  |  |  |     +--ro cpu-5min-load-percentage?      decimal64
  |  |  |     +--ro cpu-15min-load-percentage?     decimal64
  |  |  |     +--ro cpu-1min-alert-threshold?      uint8
  |  |  |     +--ro cpu-1min-critical-threshold?   uint8
  |  |  |     +--ro cpu-5min-alert-threshold?      uint8
  |  |  |     +--ro cpu-15min-alert-threshold?     uint8
  |  |  |     +--ro cpu-utilization?               decimal64
  |  |  |     +--ro cpu-utilization-alert?         uint8
  |  |  |     +--ro cpu-utilization-critical?      uint8
  |  |  +--ro storage
  |  |  |  +--ro state
  |  |  |  |  +--ro serial-number?                                 string
  |  |  |  |  +--ro model-number?                                  string
  |  |  |  |  +--ro firmware-revision?                             string
  |  |  |  |  +--ro cylinder-count?                                uint16
  |  |  |  |  +--ro head-count?                                    uint16
  |  |  |  |  +--ro sector-count?                                  uint32
  |  |  |  |  +--ro unformatted-bytes-or-track?                    uint16
  |  |  |  |  +--ro unformatted-bytes-or-sector?                   uint16
  |  |  |  |  +--ro revision-number?                               string
  |  |  |  |  +--ro total-memory?                                  uint64
  |  |  |  |  +--ro used-memory?                                   uint64
  |  |  |  |  +--ro free-memory?                                   uint64
  |  |  |  |  +--ro usage-critical-threshold?                      int32
  |  |  |  |  +--ro usage-alert-threshold?                         int32
  |  |  |  |  +--ro remaining-life?                                int32
  |  |  |  |  +--ro remain-life-critical-threshold?                int32
  |  |  |  |  +--ro remain-life-alert-threshold?                   int32
  |  |  |  |  +--ro available-reserved-space?                      int32
  |  |  |  |  +--ro available-reserved-space-critical-threshold?   int32
  |  |  |  |  +--ro available-reserved-space-alert-threshold?      int32
  |  |  |  |  +--ro reallocated-sector-count?                      int32
  |  |  |  |  +--ro uncorrectable-sector-count?                    int32
  |  |  |  |  +--ro manufacturer-id?                               string
  |  |  |  |  +--ro manufacture-date?                              string
  |  |  |  |  +--ro device-type?                                   string
  |  |  |  |  +--ro cache-size?                                    uint64
  |  |  |  |  +--ro storage-status?                                ipi-platform-types:cml_cmm_storage_status_t
  |  |  |  +--ro harddisk-monitoring
  |  |  |  |  +--ro state
  |  |  |  |     +--ro interval?          int32
  |  |  |  |     +--ro read-average?      int32
  |  |  |  |     +--ro write-average?     int32
  |  |  |  |     +--ro read-current?      int32
  |  |  |  |     +--ro write-current?     int32
  |  |  |  |     +--ro read-threshold?    int32
  |  |  |  |     +--ro write-threshold?   int32
  |  |  |  +--ro mounted-filesystems
  |  |  |     +--ro mounted-filesystem* [mount-point]
  |  |  |        +--ro mount-point    -> ../state/mount-point
  |  |  |        +--ro state
  |  |  |           +--ro mount-point?   string
  |  |  |           +--ro total?         uint64
  |  |  |           +--ro used?          uint64
  |  |  |           +--ro free?          uint64
  |  |  |           +--ro usage?         uint8
  |  |  +--ro ram
  |  |  |  +--ro state
  |  |  |     +--ro total-memory?               uint64
  |  |  |     +--ro used-memory?                uint64
  |  |  |     +--ro available-memory?           uint64
  |  |  |     +--ro shared-memory?              uint64
  |  |  |     +--ro buffers?                    uint64
  |  |  |     +--ro total-swap?                 uint64
  |  |  |     +--ro free-swap?                  uint64
  |  |  |     +--ro current-process-count?      uint16
  |  |  |     +--ro total-high-memory?          uint64
  |  |  |     +--ro available-high-memory?      uint64
  |  |  |     +--ro unit-size?                  uint32
  |  |  |     +--ro usage-critical-threshold?   uint32
  |  |  |     +--ro usage-alert-threshold?      uint32
  |  |  +--ro transceiver {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro state
  |  |  |  |  +--ro port-no?                                   uint8
  |  |  |  |  +--ro presence?                                  ipi-platform-transceiver-types:ddm_cmm_trans_presence_t
  |  |  |  |  +--ro type?                                      ipi-platform-transceiver-types:ddm_cmm_trans_type_t
  |  |  |  |  +--ro channel-count?                             int32
  |  |  |  |  +--ro transceiver-identifier?                    ipi-platform-transceiver-types:ddm_cmm_trans_identifier_t
  |  |  |  |  +--ro connector-type?                            ipi-platform-transceiver-types:ddm_cmm_trans_connector_type_t
  |  |  |  |  +--ro ethernet-compliance-code?                  ipi-platform-transceiver-types:ddm_cmm_trans_eth_compliance_t
  |  |  |  |  +--ro extended-ethernet-compliance-code?         ipi-platform-transceiver-types:ddm_cmm_trans_ext_eth_compliance_t
  |  |  |  |  +--ro sonet-compliance-code?                     ipi-platform-transceiver-types:ddm_cmm_trans_sonet_compliance_t
  |  |  |  |  +--ro fiber-channel-link-length?                 ipi-platform-transceiver-types:ddm_cmm_trans_fiber_channel_linklen_t
  |  |  |  |  +--ro fiber-channel-transmission-technology?     ipi-platform-transceiver-types:ddm_cmm_trans_fiber_channel_transmittech_t
  |  |  |  |  +--ro fiber-channel-transmission-media?          ipi-platform-transceiver-types:ddm_cmm_trans_fiber_channel_transmitmedia_t
  |  |  |  |  +--ro serial-encoding-algorithm?                 ipi-platform-transceiver-types:ddm_cmm_trans_encoding_t
  |  |  |  |  +--ro link-length-kilometer?                     int32
  |  |  |  |  +--ro link-length-meter?                         int32
  |  |  |  |  +--ro om1-link-length?                           int32
  |  |  |  |  +--ro om2-link-length?                           int32
  |  |  |  |  +--ro om3-link-length?                           int32
  |  |  |  |  +--ro om4-link-length?                           int32
  |  |  |  |  +--ro vendor-name?                               string
  |  |  |  |  +--ro vendor-ieee-id?                            string
  |  |  |  |  +--ro vendor-part-number?                        string
  |  |  |  |  +--ro vendor-revision-number?                    string
  |  |  |  |  +--ro check-code?                                string
  |  |  |  |  +--ro extended-check-code?                       string
  |  |  |  |  +--ro nominal-signalling-rate?                   int32
  |  |  |  |  +--ro maximum-signalling-rate?                   int32
  |  |  |  |  +--ro minimum-signalling-rate?                   int32
  |  |  |  |  +--ro vendor-serial-number?                      string
  |  |  |  |  +--ro vendor-manufacturing-date?                 string
  |  |  |  |  +--ro ddm-type?                                  ipi-platform-transceiver-types:ddm_cmm_trans_ddm_support_t
  |  |  |  |  +--ro maximum-case-temperature?                  decimal64
  |  |  |  |  +--ro grid-spacing?                              decimal64
  |  |  |  |  +--ro first-frequency?                           decimal64
  |  |  |  |  +--ro last-frequency?                            decimal64
  |  |  |  |  +--ro frequency-error?                           decimal64
  |  |  |  |  +--ro frequency-error-critical-min-threshold?    decimal64
  |  |  |  |  +--ro frequency-error-critical-max-threshold?    decimal64
  |  |  |  |  +--ro frequency-error-alert-min-threshold?       decimal64
  |  |  |  |  +--ro frequency-error-alert-max-threshold?       decimal64
  |  |  |  |  +--ro wavelength-error?                          decimal64
  |  |  |  |  +--ro wavelength-error-critical-min-threshold?   decimal64
  |  |  |  |  +--ro wavelength-error-critical-max-threshold?   decimal64
  |  |  |  |  +--ro wavelength-error-alert-min-threshold?      decimal64
  |  |  |  |  +--ro wavelength-error-alert-max-threshold?      decimal64
  |  |  |  |  +--ro tx-tune-ready?                             boolean
  |  |  |  |  +--ro thermoelectric-cooler-fault?               boolean
  |  |  |  |  +--ro wavelength-locked?                         boolean
  |  |  |  |  +--ro transceiver-temperature?                   decimal64
  |  |  |  |  +--ro temperature-alert-max-threshold?           decimal64
  |  |  |  |  +--ro temperature-critical-max-threshold?        decimal64
  |  |  |  |  +--ro temperature-critical-min-threshold?        decimal64
  |  |  |  |  +--ro temperature-alert-min-threshold?           decimal64
  |  |  |  |  +--ro transceiver-voltage?                       decimal64
  |  |  |  |  +--ro voltage-alert-max-threshold?               decimal64
  |  |  |  |  +--ro voltage-critical-max-threshold?            decimal64
  |  |  |  |  +--ro voltage-critical-min-threshold?            decimal64
  |  |  |  |  +--ro voltage-alert-min-threshold?               decimal64
  |  |  |  |  +--ro module-functional-type?                    ipi-platform-transceiver-types:cmm_transceiver_functional_type_t
  |  |  |  +--ro sfp
  |  |  |  |  +--ro state
  |  |  |  |     +--ro transmit-status?                  ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro recieve-loss-status?              ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro sfp-identifier?                   ipi-platform-transceiver-types:ddm_cmm_trans_sfp_extended_identifier_t
  |  |  |  |     +--ro sfp-options-implemented?          ipi-platform-transceiver-types:ddm_cmm_trans_sfp_options_implemented_t
  |  |  |  |     +--ro fiber-channel-sfp-speed?          ipi-platform-transceiver-types:ddm_cmm_trans_fiber_channel_speed_t
  |  |  |  |     +--ro sfp-infiniband-compliance-code?   ipi-platform-transceiver-types:ddm_cmm_trans_sfp_infiniband_compliance_t
  |  |  |  |     +--ro sfp-escon-compliance-code?        ipi-platform-transceiver-types:ddm_cmm_trans_sfp_escon_compliance_t
  |  |  |  |     +--ro sfp-plus-cable-technology?        ipi-platform-transceiver-types:ddm_cmm_trans_sfp_plus_cable_tech_t
  |  |  |  +--ro xfp
  |  |  |  |  +--ro state
  |  |  |  |     +--ro transmit-status?                            ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro recieve-loss-status?                        ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro xsfp-identifier?                            ipi-platform-transceiver-types:ddm_cmm_trans_xfp_extended_identifier_t
  |  |  |  |     +--ro xfp-10g-ethernet-compliance-code?           ipi-platform-transceiver-types:ddm_cmm_trans_xfp_10g_eth_compliance_t
  |  |  |  |     +--ro xfp-10g-fiber-channel-compliance-code?      ipi-platform-transceiver-types:ddm_cmm_trans_xfp_10g_fiber_chn_compliance_t
  |  |  |  |     +--ro xfp-10g-copper-link-compliance-code?        ipi-platform-transceiver-types:ddm_cmm_trans_xfp_10g_copper_links_rsvd_t
  |  |  |  |     +--ro xfp-lower-speed-link-compliance-code?       ipi-platform-transceiver-types:ddm_cmm_trans_xfp_lower_speed_links_t
  |  |  |  |     +--ro xfp-sonet-interconnect-compliance-code?     ipi-platform-transceiver-types:ddm_cmm_trans_xfp_sonet_interconnect_t
  |  |  |  |     +--ro xfp-sonet-short-haul-compliance-code?       ipi-platform-transceiver-types:ddm_cmm_trans_xfp_sonet_short_haul_t
  |  |  |  |     +--ro xfp-sonet-long-haul-compliance-code?        ipi-platform-transceiver-types:ddm_cmm_trans_xfp_sonet_long_haul_t
  |  |  |  |     +--ro xfp-sonet-very-long-haul-compliance-code?   ipi-platform-transceiver-types:ddm_cmm_trans_xfp_sonet_very_long_haul_t
  |  |  |  |     +--ro xfp-serial-encoding-algorithm?              ipi-platform-transceiver-types:ddm_cmm_trans_xfp_encoding_t
  |  |  |  |     +--ro xsfp-options-implemented?                   ipi-platform-transceiver-types:ddm_cmm_trans_xfp_options_implemented_t
  |  |  |  |     +--ro xfp-auxillary-voltage?                      ipi-platform-transceiver-types:ddm_cmm_trans_xfp_voltage_aux_monitor_t
  |  |  |  +--ro qsfp
  |  |  |  |  +--ro state
  |  |  |  |     +--ro reset-status?               ipi-platform-transceiver-types:ddm_cmm_trans_reset_t
  |  |  |  |     +--ro power?                      ipi-platform-transceiver-types:ddm_cmm_trans_power_t
  |  |  |  |     +--ro lane1-transmission?         ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane1-transmission-loss?    ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane1-recieve-loss?         ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane2-transmission?         ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane2-transmission-loss?    ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane2-recieve-loss?         ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane3-transmission?         ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane3-transmission-loss?    ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane3-recieve-loss?         ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane4-transmission?         ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane4-transmission-loss?    ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro lane4-recieve-loss?         ipi-platform-transceiver-types:ddm_tx_rx_state_t
  |  |  |  |     +--ro qsfp-identifier?            ipi-platform-transceiver-types:ddm_cmm_qsfp_extended_identifier_t
  |  |  |  |     +--ro fiber-channel-qsfp-speed?   ipi-platform-transceiver-types:ddm_cmm_trans_fiber_channel_speed_t
  |  |  |  |     +--ro qsfp-options-implemented?   ipi-platform-transceiver-types:ddm_cmm_trans_qsfp_options_implemented_t
  |  |  |  +--ro channels
  |  |  |  |  +--ro channel* [index]
  |  |  |  |     +--ro index    -> ../state/index
  |  |  |  |     +--ro state
  |  |  |  |        +--ro index?                                       uint8
  |  |  |  |        +--ro input-power?                                 decimal64
  |  |  |  |        +--ro input-power-alert-max-threshold?             decimal64
  |  |  |  |        +--ro input-power-critical-max-threshold?          decimal64
  |  |  |  |        +--ro input-power-critical-min-threshold?          decimal64
  |  |  |  |        +--ro input-power-alert-min-threshold?             decimal64
  |  |  |  |        +--ro output-power?                                decimal64
  |  |  |  |        +--ro output-power-alert-max-threshold?            decimal64
  |  |  |  |        +--ro output-power-critical-max-threshold?         decimal64
  |  |  |  |        +--ro output-power-critical-min-threshold?         decimal64
  |  |  |  |        +--ro output-power-alert-min-threshold?            decimal64
  |  |  |  |        +--ro laser-bias-current?                          decimal64
  |  |  |  |        +--ro laser-bias-current-alert-max-threshold?      decimal64
  |  |  |  |        +--ro laser-bias-current-critical-max-threshold?   decimal64
  |  |  |  |        +--ro laser-bias-current-critical-min-threshold?   decimal64
  |  |  |  |        +--ro laser-bias-current-alert-min-threshold?      decimal64
  |  |  |  +--ro cmis-module
  |  |  |  |  +--ro eeprom
  |  |  |  |  |  +--ro state
  |  |  |  |  |     +--ro identifier?                   ipi-platform-sff8024-types:cmm_sff8024_identifier_t
  |  |  |  |  |     +--ro vendor-name?                  string
  |  |  |  |  |     +--ro vendor-oui?                   string
  |  |  |  |  |     +--ro part-number?                  string
  |  |  |  |  |     +--ro revision-level?               string
  |  |  |  |  |     +--ro serial-number?                string
  |  |  |  |  |     +--ro manufacturing-date?           string
  |  |  |  |  |     +--ro clei-code?                    string
  |  |  |  |  |     +--ro module-power-class?           ipi-platform-cmis-types:cmm_cmis_module_power_class_t
  |  |  |  |  |     +--ro module-max-power?             decimal64
  |  |  |  |  |     +--ro cooling-implemented?          ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |     +--ro temperature-max?              int16
  |  |  |  |  |     +--ro temperature-min?              int16
  |  |  |  |  |     +--ro operatin-voltage-min?         decimal64
  |  |  |  |  |     +--ro optical-detector?             ipi-platform-cmis-types:cmm_cmis_optical_detector_t
  |  |  |  |  |     +--ro rx-power-measurement?         ipi-platform-cmis-types:cmm_cmis_rx_power_measur_t
  |  |  |  |  |     +--ro tx-disable-module-wide?       ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |     +--ro cable-assembly-link-length?   int16
  |  |  |  |  |     +--ro connector-type?               ipi-platform-sff8024-types:cmm_sff8024_connector_type_t
  |  |  |  |  |     +--ro cca-5ghz?                     uint8
  |  |  |  |  |     +--ro cca-7ghz?                     uint8
  |  |  |  |  |     +--ro cca-12p9ghz?                  uint8
  |  |  |  |  |     +--ro cca-25p8ghz?                  uint8
  |  |  |  |  |     +--ro media-interface-technology?   ipi-platform-cmis-types:cmm_cmis_media_intf_tech_t
  |  |  |  |  |     +--ro cmis-revision?                string
  |  |  |  |  |     +--ro memory-model?                 ipi-platform-cmis-types:cmm_cmis_memory_model_t
  |  |  |  |  |     +--ro mci-max-speed?                ipi-platform-cmis-types:cmm_cmis_mci_max_speed_t
  |  |  |  |  |     +--ro active-firmware-revision?     string
  |  |  |  |  |     +--ro inactive-firmware-revision?   string
  |  |  |  |  |     +--ro hardware-revision?            string
  |  |  |  |  |     +--ro media-type?                   ipi-platform-cmis-types:cmm_cmis_media_type_t
  |  |  |  |  |     +--ro max-smf-link-length?          decimal64
  |  |  |  |  |     +--ro max-mmf-om2-link-length?      uint8
  |  |  |  |  |     +--ro max-mmf-om3-link-length?      uint16
  |  |  |  |  |     +--ro max-mmf-om4-link-length?      uint16
  |  |  |  |  |     +--ro max-mmf-om5-link-length?      uint16
  |  |  |  |  |     +--ro wavelength-nominal?           decimal64
  |  |  |  |  |     +--ro wavelength-tolerance?         decimal64
  |  |  |  |  +--ro advertisement
  |  |  |  |  |  +--ro applications
  |  |  |  |  |  |  +--ro application* [id]
  |  |  |  |  |  |     +--ro id       -> ../state/id
  |  |  |  |  |  |     +--ro state
  |  |  |  |  |  |     |  +--ro id?   uint8
  |  |  |  |  |  |     +--ro host
  |  |  |  |  |  |     |  +--ro state
  |  |  |  |  |  |     |     +--ro interface-type?           ipi-platform-cmis-types:cmm_cmis_interface_type_t
  |  |  |  |  |  |     |     +--ro application-bitrate?      ipi-platform-cmis-types:cmm_cmis_bit_rate_t
  |  |  |  |  |  |     |     +--ro lane-count?               uint8
  |  |  |  |  |  |     |     +--ro signal-bitrate?           ipi-platform-cmis-types:cmm_cmis_bit_rate_t
  |  |  |  |  |  |     |     +--ro modulation-format?        ipi-platform-cmis-types:cmm_cmis_modulation_format_t
  |  |  |  |  |  |     |     +--ro bits-per-unit-interval?   decimal64
  |  |  |  |  |  |     |     +--ro lane-assignment?          ipi-platform-cmis-types:cmm_cmis_lane_assignment_t
  |  |  |  |  |  |     |     +--ro host-config?              string
  |  |  |  |  |  |     +--ro media
  |  |  |  |  |  |        +--ro state
  |  |  |  |  |  |           +--ro interface-type?           ipi-platform-cmis-types:cmm_cmis_interface_type_t
  |  |  |  |  |  |           +--ro application-bitrate?      ipi-platform-cmis-types:cmm_cmis_bit_rate_t
  |  |  |  |  |  |           +--ro lane-count?               uint8
  |  |  |  |  |  |           +--ro signal-bitrate?           ipi-platform-cmis-types:cmm_cmis_bit_rate_t
  |  |  |  |  |  |           +--ro modulation-format?        ipi-platform-cmis-types:cmm_cmis_modulation_format_t
  |  |  |  |  |  |           +--ro bits-per-unit-interval?   decimal64
  |  |  |  |  |  |           +--ro lane-assignment?          ipi-platform-cmis-types:cmm_cmis_lane_assignment_t
  |  |  |  |  |  +--ro custom-application
  |  |  |  |  |  |  +--ro state
  |  |  |  |  |  |  |  +--ro application-selector?   uint8
  |  |  |  |  |  |  +--ro host-ids
  |  |  |  |  |  |  |  +--ro host-id* [id]
  |  |  |  |  |  |  |     +--ro id       -> ../state/id
  |  |  |  |  |  |  |     +--ro state
  |  |  |  |  |  |  |        +--ro id?                       uint8
  |  |  |  |  |  |  |        +--ro interface-type?           ipi-platform-cmis-types:cmm_cmis_interface_type_t
  |  |  |  |  |  |  |        +--ro application-bitrate?      ipi-platform-cmis-types:cmm_cmis_bit_rate_t
  |  |  |  |  |  |  |        +--ro lane-count?               uint8
  |  |  |  |  |  |  |        +--ro signal-bitrate?           ipi-platform-cmis-types:cmm_cmis_bit_rate_t
  |  |  |  |  |  |  |        +--ro modulation-format?        ipi-platform-cmis-types:cmm_cmis_modulation_format_t
  |  |  |  |  |  |  |        +--ro bits-per-unit-interval?   decimal64
  |  |  |  |  |  |  |        +--ro lane-assignment?          ipi-platform-cmis-types:cmm_cmis_lane_assignment_t
  |  |  |  |  |  |  |        +--ro host-config?              string
  |  |  |  |  |  |  +--ro media-ids
  |  |  |  |  |  |     +--ro media-id* [id]
  |  |  |  |  |  |        +--ro id       -> ../state/id
  |  |  |  |  |  |        +--ro state
  |  |  |  |  |  |           +--ro id?                       uint8
  |  |  |  |  |  |           +--ro interface-type?           ipi-platform-cmis-types:cmm_cmis_interface_type_t
  |  |  |  |  |  |           +--ro application-bitrate?      ipi-platform-cmis-types:cmm_cmis_bit_rate_t
  |  |  |  |  |  |           +--ro lane-count?               uint8
  |  |  |  |  |  |           +--ro signal-bitrate?           ipi-platform-cmis-types:cmm_cmis_bit_rate_t
  |  |  |  |  |  |           +--ro modulation-format?        ipi-platform-cmis-types:cmm_cmis_modulation_format_t
  |  |  |  |  |  |           +--ro bits-per-unit-interval?   decimal64
  |  |  |  |  |  |           +--ro lane-assignment?          ipi-platform-cmis-types:cmm_cmis_lane_assignment_t
  |  |  |  |  |  +--ro controls
  |  |  |  |  |  |  +--ro state
  |  |  |  |  |  |     +--ro wavelength-control?             ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro tunable-transmitter?            ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro tx-output-squelching-method?    ipi-platform-cmis-types:cmm_cmis_tx_squelch_method_t
  |  |  |  |  |  |     +--ro forced-tx-output-squelching?    ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro tx-output-squelching-disable?   ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro tx-output-disable?              ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro input-polarity-flip-tx?         ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro rx-output-squelching-disable?   ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro rx-output-disable?              ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro output-polarity-flip-rx?        ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  +--ro diagnostics
  |  |  |  |  |  |  +--ro module
  |  |  |  |  |  |  |  +--ro state
  |  |  |  |  |  |  |     +--ro simultaneous-host-and-media-loobpack?   ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro report-bit-error-ratio?                 ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro count-bits-and-errors?                  ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  +--ro host
  |  |  |  |  |  |  |  +--ro state
  |  |  |  |  |  |  |     +--ro output-loopack?            ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro input-loopack?             ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro per-lane-loopack?          ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro report-input-snr?          ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro report-fec?                ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro prbs-checker-post-fec?     ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro prbs-checker-pre-fec?      ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro prbs-checker-types?        ipi-platform-cmis-types:cmm_cmis_prbs_support_type_t
  |  |  |  |  |  |  |     +--ro prbs-generator-post-fec?   ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro prbs-generator-pre-fec?    ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |     +--ro prbs-generator-types?      ipi-platform-cmis-types:cmm_cmis_prbs_support_type_t
  |  |  |  |  |  |  +--ro media
  |  |  |  |  |  |     +--ro state
  |  |  |  |  |  |        +--ro output-loopack?            ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |        +--ro input-loopack?             ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |        +--ro per-lane-loopack?          ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |        +--ro report-input-snr?          ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |        +--ro report-fec?                ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |        +--ro prbs-checker-post-fec?     ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |        +--ro prbs-checker-pre-fec?      ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |        +--ro prbs-checker-types?        ipi-platform-cmis-types:cmm_cmis_prbs_support_type_t
  |  |  |  |  |  |        +--ro prbs-generator-post-fec?   ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |        +--ro prbs-generator-pre-fec?    ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |        +--ro prbs-generator-types?      ipi-platform-cmis-types:cmm_cmis_prbs_support_type_t
  |  |  |  |  |  +--ro durations
  |  |  |  |  |  |  +--ro state
  |  |  |  |  |  |     +--ro modsel-wait-time?               uint32
  |  |  |  |  |  |     +--ro dpinit-maximun-duration?        ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  |     +--ro dpdeinit-maximun-duration?      ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  |     +--ro dptxturnon-maximum-duration?    ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  |     +--ro dptxturnoff-maximum-duration?   ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  |     +--ro modulepwrup-maximum-duration?   ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  |     +--ro modulepwrdn-maximum-duration?   ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  |     +--ro npinit-maximum-duration?        ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  |     +--ro npdeinit-maximum-duration?      ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  |     +--ro nptxturnon-maximum-duration?    ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  |     +--ro nptxturnoff-maximum-duration?   ipi-platform-cmis-types:cmm_cmis_durations_t
  |  |  |  |  |  +--ro laser
  |  |  |  |  |  |  +--ro state
  |  |  |  |  |  |  |  +--ro supported-grids?                      ipi-platform-cmis-types:cmm_cmis_laser_grid_support_t
  |  |  |  |  |  |  |  +--ro fine-tune-supported?                  ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |  +--ro fine-tune-resolution?                 decimal64
  |  |  |  |  |  |  |  +--ro fine-tune-low-offset?                 decimal64
  |  |  |  |  |  |  |  +--ro fine-tune-high-offset?                decimal64
  |  |  |  |  |  |  |  +--ro per-lane-programmable-output-power?   ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |  +--ro minimum-programmable-output-power?    decimal64
  |  |  |  |  |  |  |  +--ro maximum-programmable-output-power?    decimal64
  |  |  |  |  |  |  +--ro grids
  |  |  |  |  |  |     +--ro grid* [id]
  |  |  |  |  |  |        +--ro id       -> ../state/id
  |  |  |  |  |  |        +--ro state
  |  |  |  |  |  |           +--ro id?                          ipi-platform-cmis-types:cmm_cmis_laser_grid_spacing_t
  |  |  |  |  |  |           +--ro lowest-channel-frequency?    decimal64
  |  |  |  |  |  |           +--ro highest-channel-frequency?   decimal64
  |  |  |  |  |  |           +--ro channel-count?               uint16
  |  |  |  |  |  +--ro monitoring
  |  |  |  |  |  |  +--ro module
  |  |  |  |  |  |  |  +--ro monitors
  |  |  |  |  |  |  |     +--ro monitor* [id]
  |  |  |  |  |  |  |        +--ro id       -> ../state/id
  |  |  |  |  |  |  |        +--ro state
  |  |  |  |  |  |  |           +--ro id?          ipi-platform-cmis-types:cmm_cmis_module_monitor_id_t
  |  |  |  |  |  |  |           +--ro supported?   ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  +--ro host
  |  |  |  |  |  |  |  +--ro monitors
  |  |  |  |  |  |  |  |  +--ro monitor* [id]
  |  |  |  |  |  |  |  |     +--ro id       -> ../state/id
  |  |  |  |  |  |  |  |     +--ro state
  |  |  |  |  |  |  |  |        +--ro id?               ipi-platform-cmis-types:cmm_cmis_host_monitor_id_t
  |  |  |  |  |  |  |  |        +--ro supported?        ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |  |        +--ro lanes-assigned?   ipi-platform-cmis-types:cmm_cmis_lane_assignment_t
  |  |  |  |  |  |  |  +--ro flags
  |  |  |  |  |  |  |     +--ro flag* [id]
  |  |  |  |  |  |  |        +--ro id       -> ../state/id
  |  |  |  |  |  |  |        +--ro state
  |  |  |  |  |  |  |           +--ro id?               ipi-platform-cmis-types:cmm_cmis_host_flag_id_t
  |  |  |  |  |  |  |           +--ro supported?        ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |  |           +--ro lanes-assigned?   ipi-platform-cmis-types:cmm_cmis_lane_assignment_t
  |  |  |  |  |  |  +--ro media
  |  |  |  |  |  |     +--ro monitors
  |  |  |  |  |  |     |  +--ro monitor* [id]
  |  |  |  |  |  |     |     +--ro id       -> ../state/id
  |  |  |  |  |  |     |     +--ro state
  |  |  |  |  |  |     |        +--ro id?               ipi-platform-cmis-types:cmm_cmis_media_monitor_id_t
  |  |  |  |  |  |     |        +--ro supported?        ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     |        +--ro lanes-assigned?   ipi-platform-cmis-types:cmm_cmis_lane_assignment_t
  |  |  |  |  |  |     +--ro flags
  |  |  |  |  |  |        +--ro flag* [id]
  |  |  |  |  |  |           +--ro id       -> ../state/id
  |  |  |  |  |  |           +--ro state
  |  |  |  |  |  |              +--ro id?               ipi-platform-cmis-types:cmm_cmis_media_flag_id_t
  |  |  |  |  |  |              +--ro supported?        ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |              +--ro lanes-assigned?   ipi-platform-cmis-types:cmm_cmis_lane_assignment_t
  |  |  |  |  |  +--ro pages
  |  |  |  |  |  |  +--ro state
  |  |  |  |  |  |     +--ro network-path-pages-supported?   ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro vdm-pages-supported?            ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro vdm-groups?                     ipi-platform-cmis-types:cmm_cmis_vdm_pages_support_t
  |  |  |  |  |  |     +--ro diagnostics-pages-supported?    ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro user-page-supported?            ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |  |     +--ro banks-per-page?                 ipi-platform-cmis-types:cmm_cmis_bank_per_page_support_t
  |  |  |  |  |  +--ro signal-integrity
  |  |  |  |  |     +--ro state
  |  |  |  |  |        +--ro tx-input-manual-eq?             ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |        +--ro tx-input-eq-max?                uint8
  |  |  |  |  |        +--ro rx-output-eq-pre-cursor?        ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |        +--ro rx-output-eq-pre-cursor-max?    uint8
  |  |  |  |  |        +--ro rx-output-eq-post-cursor?       ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |        +--ro rx-output-eq-post-cursor-max?   uint8
  |  |  |  |  |        +--ro rx-output-amp?                  ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |        +--ro rx-output-amp-codes?            ipi-platform-cmis-types:cmm_cmis_si_amp_codes_t
  |  |  |  |  |        +--ro tx-cdr?                         ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |        +--ro tx-cdr-bypass?                  ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |        +--ro rx-cdr?                         ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  |        +--ro rx-cdr-bypass?                  ipi-platform-cmis-types:cmm_cmis_yes_no_t
  |  |  |  |  +--ro module-state
  |  |  |  |  |  +--ro state
  |  |  |  |  |  |  +--ro fault-state?     ipi-platform-cmis-types:cmm_cmis_module_fault_state_t
  |  |  |  |  |  |  +--ro current-state?   ipi-platform-cmis-types:cmm_cmis_module_state_t
  |  |  |  |  |  +--ro datapaths
  |  |  |  |  |     +--ro datapath* [lane]
  |  |  |  |  |        +--ro lane     -> ../state/lane
  |  |  |  |  |        +--ro state
  |  |  |  |  |           +--ro lane?             uint8
  |  |  |  |  |           +--ro current-state?    ipi-platform-cmis-types:cmm_cmis_datapath_states_t
  |  |  |  |  |           +--ro host-rate?        decimal64
  |  |  |  |  |           +--ro media-rate?       decimal64
  |  |  |  |  |           +--ro interface-name?   string
  |  |  |  |  +--ro module-monitors
  |  |  |  |  |  +--ro monitors
  |  |  |  |  |  |  +--ro monitor* [id]
  |  |  |  |  |  |     +--ro id       -> ../state/id
  |  |  |  |  |  |     +--ro state
  |  |  |  |  |  |        +--ro id?             ipi-platform-cmis-types:cmm_cmis_module_monitor_id_t
  |  |  |  |  |  |        +--ro description?    string
  |  |  |  |  |  |        +--ro value?          decimal64
  |  |  |  |  |  |        +--ro high-alarm?     decimal64
  |  |  |  |  |  |        +--ro high-warning?   decimal64
  |  |  |  |  |  |        +--ro low-warning?    decimal64
  |  |  |  |  |  |        +--ro low-alarm?      decimal64
  |  |  |  |  |  +--ro monitor-alarm
  |  |  |  |  |     +--ro state
  |  |  |  |  |        +--ro alarm-id?            ipi-platform-cmis-types:cmm_cmis_module_monitor_id_t
  |  |  |  |  |        +--ro alarm-type?          ipi-platform-cmis-types:cmm_cmis_threshold_alarm_t
  |  |  |  |  |        +--ro current-value?       decimal64
  |  |  |  |  |        +--ro threshold-minimum?   decimal64
  |  |  |  |  |        +--ro threshold-maximum?   decimal64
  |  |  |  |  +--ro host-monitors
  |  |  |  |  |  +--ro lanes
  |  |  |  |  |     +--ro lane* [number]
  |  |  |  |  |        +--ro number           -> ../state/number
  |  |  |  |  |        +--ro state
  |  |  |  |  |        |  +--ro number?        uint8
  |  |  |  |  |        |  +--ro dp-assigned?   boolean
  |  |  |  |  |        +--ro monitors
  |  |  |  |  |        |  +--ro monitor* [id]
  |  |  |  |  |        |     +--ro id       -> ../state/id
  |  |  |  |  |        |     +--ro state
  |  |  |  |  |        |        +--ro id?             ipi-platform-cmis-types:cmm_cmis_host_monitor_id_t
  |  |  |  |  |        |        +--ro description?    string
  |  |  |  |  |        |        +--ro value?          decimal64
  |  |  |  |  |        |        +--ro high-alarm?     decimal64
  |  |  |  |  |        |        +--ro high-warning?   decimal64
  |  |  |  |  |        |        +--ro low-warning?    decimal64
  |  |  |  |  |        |        +--ro low-alarm?      decimal64
  |  |  |  |  |        +--ro flags
  |  |  |  |  |        |  +--ro flag* [id]
  |  |  |  |  |        |     +--ro id       -> ../state/id
  |  |  |  |  |        |     +--ro state
  |  |  |  |  |        |        +--ro id?            ipi-platform-cmis-types:cmm_cmis_host_flag_id_t
  |  |  |  |  |        |        +--ro description?   string
  |  |  |  |  |        |        +--ro value?         boolean
  |  |  |  |  |        +--ro monitor-alarm
  |  |  |  |  |        |  +--ro state
  |  |  |  |  |        |     +--ro alarm-id?            ipi-platform-cmis-types:cmm_cmis_host_monitor_id_t
  |  |  |  |  |        |     +--ro alarm-type?          ipi-platform-cmis-types:cmm_cmis_threshold_alarm_t
  |  |  |  |  |        |     +--ro current-value?       decimal64
  |  |  |  |  |        |     +--ro threshold-minimum?   decimal64
  |  |  |  |  |        |     +--ro threshold-maximum?   decimal64
  |  |  |  |  |        +--ro flag-alarm
  |  |  |  |  |           +--ro state
  |  |  |  |  |              +--ro alarm-id?   ipi-platform-cmis-types:cmm_cmis_host_flag_id_t
  |  |  |  |  +--ro media-monitors
  |  |  |  |  |  +--ro lanes
  |  |  |  |  |     +--ro lane* [number]
  |  |  |  |  |        +--ro number           -> ../state/number
  |  |  |  |  |        +--ro state
  |  |  |  |  |        |  +--ro number?   uint8
  |  |  |  |  |        +--ro monitors
  |  |  |  |  |        |  +--ro monitor* [id]
  |  |  |  |  |        |     +--ro id       -> ../state/id
  |  |  |  |  |        |     +--ro state
  |  |  |  |  |        |        +--ro id?             ipi-platform-cmis-types:cmm_cmis_media_monitor_id_t
  |  |  |  |  |        |        +--ro description?    string
  |  |  |  |  |        |        +--ro value?          decimal64
  |  |  |  |  |        |        +--ro high-alarm?     decimal64
  |  |  |  |  |        |        +--ro high-warning?   decimal64
  |  |  |  |  |        |        +--ro low-warning?    decimal64
  |  |  |  |  |        |        +--ro low-alarm?      decimal64
  |  |  |  |  |        +--ro flags
  |  |  |  |  |        |  +--ro flag* [id]
  |  |  |  |  |        |     +--ro id       -> ../state/id
  |  |  |  |  |        |     +--ro state
  |  |  |  |  |        |        +--ro id?            ipi-platform-cmis-types:cmm_cmis_media_flag_id_t
  |  |  |  |  |        |        +--ro description?   string
  |  |  |  |  |        |        +--ro value?         boolean
  |  |  |  |  |        +--ro monitor-alarm
  |  |  |  |  |        |  +--ro state
  |  |  |  |  |        |     +--ro alarm-id?            ipi-platform-cmis-types:cmm_cmis_media_monitor_id_t
  |  |  |  |  |        |     +--ro alarm-type?          ipi-platform-cmis-types:cmm_cmis_threshold_alarm_t
  |  |  |  |  |        |     +--ro current-value?       decimal64
  |  |  |  |  |        |     +--ro threshold-minimum?   decimal64
  |  |  |  |  |        |     +--ro threshold-maximum?   decimal64
  |  |  |  |  |        +--ro flag-alarm
  |  |  |  |  |           +--ro state
  |  |  |  |  |              +--ro alarm-id?   ipi-platform-cmis-types:cmm_cmis_media_flag_id_t
  |  |  |  |  +--ro user-thresholds
  |  |  |  |  |  +--ro host
  |  |  |  |  |  |  +--ro lanes
  |  |  |  |  |  |     +--ro lane* [number]
  |  |  |  |  |  |        +--ro number        -> ../state/number
  |  |  |  |  |  |        +--ro state
  |  |  |  |  |  |        |  +--ro number?   uint8
  |  |  |  |  |  |        +--ro thresholds
  |  |  |  |  |  |           +--ro threshold* [id]
  |  |  |  |  |  |              +--ro id       -> ../state/id
  |  |  |  |  |  |              +--ro state
  |  |  |  |  |  |                 +--ro id?        ipi-platform-cmis-types:cmm_ccmis_thres_state_host_id_t
  |  |  |  |  |  |                 +--ro value?     decimal64
  |  |  |  |  |  |                 +--ro minimum?   decimal64
  |  |  |  |  |  |                 +--ro maximum?   decimal64
  |  |  |  |  |  |                 +--ro active?    boolean
  |  |  |  |  |  +--ro media
  |  |  |  |  |     +--ro lanes
  |  |  |  |  |        +--ro lane* [number]
  |  |  |  |  |           +--ro number        -> ../state/number
  |  |  |  |  |           +--ro state
  |  |  |  |  |           |  +--ro number?   uint8
  |  |  |  |  |           +--ro thresholds
  |  |  |  |  |              +--ro threshold* [id]
  |  |  |  |  |                 +--ro id       -> ../state/id
  |  |  |  |  |                 +--ro state
  |  |  |  |  |                    +--ro id?        ipi-platform-cmis-types:cmm_ccmis_thres_state_media_id_t
  |  |  |  |  |                    +--ro value?     decimal64
  |  |  |  |  |                    +--ro minimum?   decimal64
  |  |  |  |  |                    +--ro maximum?   decimal64
  |  |  |  |  |                    +--ro active?    boolean
  |  |  |  |  +--ro signal-integrity
  |  |  |  |  |  +--ro host
  |  |  |  |  |     +--ro lanes
  |  |  |  |  |        +--ro lane* [number]
  |  |  |  |  |           +--ro number    -> ../state/number
  |  |  |  |  |           +--ro state
  |  |  |  |  |              +--ro number?                                   uint8
  |  |  |  |  |              +--ro tx-input-equalizer-target?                uint8
  |  |  |  |  |              +--ro rx-output-equalizer-pre-cursor-target?    uint8
  |  |  |  |  |              +--ro rx-output-equalizer-post-cursor-target?   uint8
  |  |  |  |  |              +--ro rx-output-amplitude-target?               uint8
  |  |  |  |  |              +--ro tx-cdr-bypass?                            boolean
  |  |  |  |  |              +--ro rx-cdr-bypass?                            boolean
  |  |  |  |  +--ro laser-status
  |  |  |  |     +--ro media
  |  |  |  |        +--ro lanes
  |  |  |  |           +--ro lane* [number]
  |  |  |  |              +--ro number    -> ../state/number
  |  |  |  |              +--ro state
  |  |  |  |                 +--ro number?            uint8
  |  |  |  |                 +--ro laser-frequency?   decimal64
  |  |  |  |                 +--ro wavelength?        decimal64
  |  |  |  +--ro tibit-olt-microplug
  |  |  |     +--ro state
  |  |  |     |  +--ro interface-name?                  -> /ipi-interface:interfaces/interface/name
  |  |  |     |  +--ro warranty-seal?                   ipi-platform-transceiver-tibit-types:trans_tibit_cmm_warranty_seal_t
  |  |  |     |  +--ro operational-management?          ipi-platform-transceiver-tibit-types:trans_tibit_cmm_oper_mode_t
  |  |  |     |  +--ro pon-mode?                        ipi-platform-transceiver-tibit-types:trans_tibit_cmm_pon_mode_t
  |  |  |     |  +--ro active-firmware-bank-id?         uint8
  |  |  |     |  +--ro next-active-firmware-bank-id?    uint8
  |  |  |     |  +--ro management-vlan-tpid?            string
  |  |  |     |  +--ro management-vlan-id?              uint16
  |  |  |     |  +--ro pon-mac-address?                 string
  |  |  |     |  +--ro ethernet-mac-address?            string
  |  |  |     |  +--ro pon-port-administrative-state?   ipi-platform-transceiver-tibit-types:trans_tibit_cmm_pon_status_t
  |  |  |     |  +--ro pon-port-operational-status?     ipi-platform-transceiver-tibit-types:trans_tibit_cmm_pon_status_t
  |  |  |     |  +--ro pon-link-count?                  uint16
  |  |  |     +--ro firmware-banks
  |  |  |        +--ro bank* [bank-id]
  |  |  |           +--ro bank-id    -> ../state/bank-id
  |  |  |           +--ro state
  |  |  |              +--ro bank-id?               uint8
  |  |  |              +--ro release-type?          string
  |  |  |              +--ro major-version?         uint8
  |  |  |              +--ro minor-version?         uint8
  |  |  |              +--ro maintenance-version?   uint8
  |  |  |              +--ro suffix-build-tag?      ipi-platform-transceiver-tibit-types:trans_tibit_cmm_string_t
  |  |  |              +--ro suffix-build-number?   uint16
  |  |  |              +--ro build-sha?             ipi-platform-transceiver-tibit-types:trans_tibit_cmm_string_t
  |  |  |              +--ro application-type?      ipi-platform-transceiver-tibit-types:trans_tibit_cmm_application_type_t
  |  |  |              +--ro created-timestamp?     yang:date-and-time
  |  |  |              +--ro updated-timestamp?     yang:date-and-time
  |  |  +--ro power-supply
  |  |  |  +--ro state
  |  |  |     +--ro operational-status?              cml_cmm_power_supply_operstatus_t
  |  |  |     +--ro hot-swap-state?                  ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro capacity?                        decimal64
  |  |  |     +--ro power-consumption?               decimal64
  |  |  |     +--ro input-power?                     decimal64
  |  |  |     +--ro input-voltage?                   decimal64
  |  |  |     +--ro output-voltage?                  decimal64
  |  |  |     +--ro input-current?                   decimal64
  |  |  |     +--ro output-current?                  decimal64
  |  |  |     +--ro temperature-sensor1?             decimal64
  |  |  |     +--ro temperature-sensor2?             decimal64
  |  |  |     +--ro temperature-sensor3?             decimal64
  |  |  |     +--ro fan1-rpm?                        uint32
  |  |  |     +--ro fan2-rpm?                        uint32
  |  |  |     +--ro fan3-rpm?                        uint32
  |  |  |     +--ro fan4-rpm?                        uint32
  |  |  |     +--ro input-power-status?              ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro output-power-status?             ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro supported-parameters?            cml_cmm_psu_pmbus_param_support_t
  |  |  |     +--ro vin-alert-threshold-min?         decimal64
  |  |  |     +--ro vin-alert-threshold-max?         decimal64
  |  |  |     +--ro vin-critical-threshold-min?      decimal64
  |  |  |     +--ro vin-critical-threshold-max?      decimal64
  |  |  |     +--ro vout-alert-threshold-min?        decimal64
  |  |  |     +--ro vout-alert-threshold-max?        decimal64
  |  |  |     +--ro vout-critical-threshold-min?     decimal64
  |  |  |     +--ro vout-critical-threshold-max?     decimal64
  |  |  |     +--ro pout-alert-threshold-min?        decimal64
  |  |  |     +--ro pout-alert-threshold-max?        decimal64
  |  |  |     +--ro pout-critical-threshold-min?     decimal64
  |  |  |     +--ro pout-critical-threshold-max?     decimal64
  |  |  |     +--ro pin-alert-threshold-min?         decimal64
  |  |  |     +--ro pin-alert-threshold-max?         decimal64
  |  |  |     +--ro pin-critical-threshold-min?      decimal64
  |  |  |     +--ro pin-critical-threshold-max?      decimal64
  |  |  |     +--ro iin-alert-threshold-min?         decimal64
  |  |  |     +--ro iin-alert-threshold-max?         decimal64
  |  |  |     +--ro iin-critical-threshold-min?      decimal64
  |  |  |     +--ro iin-critical-threshold-max?      decimal64
  |  |  |     +--ro iout-alert-threshold-min?        decimal64
  |  |  |     +--ro iout-alert-threshold-max?        decimal64
  |  |  |     +--ro iout-critical-threshold-min?     decimal64
  |  |  |     +--ro iout-critical-threshold-max?     decimal64
  |  |  |     +--ro temp1-alert-threshold-min?       decimal64
  |  |  |     +--ro temp1-alert-threshold-max?       decimal64
  |  |  |     +--ro temp1-critical-threshold-min?    decimal64
  |  |  |     +--ro temp1-critical-threshold-max?    decimal64
  |  |  |     +--ro temp2-alert-threshold-min?       decimal64
  |  |  |     +--ro temp2-alert-threshold-max?       decimal64
  |  |  |     +--ro temp2-critical-threshold-min?    decimal64
  |  |  |     +--ro temp2-critical-threshold-max?    decimal64
  |  |  |     +--ro vin-hw-shut-max-threshold?       decimal64
  |  |  |     +--ro vin-hw-shut-min-threshold?       decimal64
  |  |  |     +--ro vin-hw-resume_max_threshold?     decimal64
  |  |  |     +--ro vin-hw-resume_min_threshold?     decimal64
  |  |  |     +--ro vout-hw-shut-max-threshold?      decimal64
  |  |  |     +--ro vout-hw-shut-min-threshold?      decimal64
  |  |  |     +--ro vout-hw-resume_max_threshold?    decimal64
  |  |  |     +--ro vout-hw-resume_min_threshold?    decimal64
  |  |  |     +--ro pin-hw-shut-max-threshold?       decimal64
  |  |  |     +--ro pin-hw-shut-min-threshold?       decimal64
  |  |  |     +--ro pin-hw-resume_max_threshold?     decimal64
  |  |  |     +--ro pin-hw-resume_min_threshold?     decimal64
  |  |  |     +--ro pout-hw-shut-max-threshold?      decimal64
  |  |  |     +--ro pout-hw-shut-min-threshold?      decimal64
  |  |  |     +--ro pout-hw-resume_max_threshold?    decimal64
  |  |  |     +--ro pout-hw-resume_min_threshold?    decimal64
  |  |  |     +--ro iin-hw-shut-max-threshold?       decimal64
  |  |  |     +--ro iin-hw-shut-min-threshold?       decimal64
  |  |  |     +--ro iin-hw-resume_max_threshold?     decimal64
  |  |  |     +--ro iin-hw-resume_min_threshold?     decimal64
  |  |  |     +--ro iout-hw-shut-max-threshold?      decimal64
  |  |  |     +--ro iout-hw-shut-min-threshold?      decimal64
  |  |  |     +--ro iout-hw-resume_max_threshold?    decimal64
  |  |  |     +--ro iout-hw-resume_min_threshold?    decimal64
  |  |  |     +--ro temp1-hw-shut-max-threshold?     decimal64
  |  |  |     +--ro temp1-hw-shut-min-threshold?     decimal64
  |  |  |     +--ro temp1-hw-resume_max_threshold?   decimal64
  |  |  |     +--ro temp1-hw-resume_min_threshold?   decimal64
  |  |  |     +--ro temp2-hw-shut-max-threshold?     decimal64
  |  |  |     +--ro temp2-hw-shut-min-threshold?     decimal64
  |  |  |     +--ro temp2-hw-resume_max_threshold?   decimal64
  |  |  |     +--ro temp2-hw-resume_min_threshold?   decimal64
  |  |  |     +--ro temp3-alert-threshold-min?       decimal64
  |  |  |     +--ro temp3-alert-threshold-max?       decimal64
  |  |  |     +--ro temp3-critical-threshold-min?    decimal64
  |  |  |     +--ro temp3-critical-threshold-max?    decimal64
  |  |  |     +--ro temp3-hw-shut-max-threshold?     decimal64
  |  |  |     +--ro temp3-hw-shut-min-threshold?     decimal64
  |  |  |     +--ro temp3-hw-resume_max_threshold?   decimal64
  |  |  |     +--ro temp3-hw-resume_min_threshold?   decimal64
  |  |  +--ro fan
  |  |  |  +--ro state
  |  |  |     +--ro fan-index?      uint8
  |  |  |     +--ro rpm?            uint32
  |  |  |     +--ro minimum-rpm?    uint32
  |  |  |     +--ro maximum-rpm?    uint32
  |  |  |     +--ro fan-status?     cml_cmm_fan_status_t
  |  |  |     +--ro fan-location?   cml_cmm_fan_location_t
  |  |  +--ro fan-tray
  |  |  |  +--ro state
  |  |  |     +--ro tray-number?   uint8
  |  |  |     +--ro status?        cml_cmm_fan_tray_status_t
  |  |  |     +--ro led-color?     cml_cmm_led_color_code_t
  |  |  |     +--ro fan-count?     uint32
  |  |  +--ro chassis
  |  |  |  +--ro state
  |  |  |     +--ro up-time?                          yang:timeticks
  |  |  |     +--ro mac-address?                      yang:mac-address
  |  |  |     +--ro label-revision?                   string
  |  |  |     +--ro country-code?                     string
  |  |  |     +--ro fan-tray-count?                   uint32
  |  |  |     +--ro power-supplies-count?             uint32
  |  |  |     +--ro chassis-fast-ethernet-count?      uint32
  |  |  |     +--ro chassis-1g-ethernet-count?        uint32
  |  |  |     +--ro chassis-10g-ethernet-count?       uint32
  |  |  |     +--ro chassis-25g-ethernet-count?       uint32
  |  |  |     +--ro chassis-40g-ethernet-count?       uint32
  |  |  |     +--ro chassis-50g-ethernet-count?       uint32
  |  |  |     +--ro chassis-100g-ethernet-count?      uint32
  |  |  |     +--ro chassis-400g-ethernet-count?      uint32
  |  |  |     +--ro service-tag?                      string
  |  |  |     +--ro platform-name?                    string
  |  |  |     +--ro onie-version?                     string
  |  |  |     +--ro vendor-name?                      string
  |  |  |     +--ro diagnostic-version?               string
  |  |  |     +--ro cyclic-redundancy-32bit-value?    string
  |  |  |     +--ro switch-chip-revision?             string
  |  |  |     +--ro fan-board-id?                     string
  |  |  |     +--ro supported-label-revision?         string
  |  |  |     +--ro supported-switch-chip-revision?   string
  |  |  |     +--ro system_status?                    ipi-platform-types:platform_system_status_type_t
  |  |  |     +--ro cpu_status?                       ipi-platform-types:platform_system_status_type_t
  |  |  |     +--ro ram_status?                       ipi-platform-types:platform_system_status_type_t
  |  |  |     +--ro storage_status?                   ipi-platform-types:platform_system_status_type_t
  |  |  |     +--ro temperature_status?               ipi-platform-types:platform_system_status_type_t
  |  |  |     +--ro fan_status?                       ipi-platform-types:platform_system_status_type_t
  |  |  |     +--ro psu_status?                       ipi-platform-types:platform_system_status_type_t
  |  |  |     +--ro software_status?                  ipi-platform-types:platform_system_status_type_t
  |  |  +--ro linecard
  |  |  |  +--ro state
  |  |  |     +--ro slot-id?   string
  |  |  +--ro power-rail
  |  |  |  +--ro state
  |  |  |     +--ro power-vddr-status?                    ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-core-status?                    ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v1p1-power-rail?                      ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro main-board-power-rail?                ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vcc-5v-power-status?                  ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vcc-3v-power-status?                  ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vcc-1v-mac-power-status?              ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vcc-1v-mac-avs-power-status?          ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vccv1p05-power-status?                ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vccv1p5-power-status?                 ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vccv1p8-power-status?                 ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v1p05-power-rail?                     ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vcc-power-rail?                       ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro sbv1p5-power-rail?                    ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v1p0-power-rail?                      ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v1p5-power-rail?                      ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v3p3-power-rail?                      ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v1p8-power-rail?                      ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v1p9-power-rail?                      ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v1p35-power-rail?                     ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vcc-avs-1v-power-status?              ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro ddrvtt-power-status?                  ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro vcc-mac-v1p25-power-status?           ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro mac-v1p8-power-status?                ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-supply-1-power-status?          ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-supply-2-power-status?          ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-supply-1-power-rail?            ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-supply-2-power-rail?            ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-supply-1-v12-power-rail?        ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-supply-2-v12-power-rail?        ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-supply-1-ac-alert-power-rail?   ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-supply-2-ac-alert-power-rail?   ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro power-vccp-status?                    ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v5a-power-rail?                       ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro v3p3a-power-rail?                     ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro hot-swap-1-power-rail?                ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro hot-swap-2-power-rail?                ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro xp0r-v75-power-rail?                  ipi-platform-types:cml_cmm_power_rail_t
  |  |  |     +--ro xp1r-v07-cp-power-rail?               ipi-platform-types:cml_cmm_power_rail_t
  |  |  +--ro ceragon
  |  |  |  +--ro cpld-attr
  |  |  |  |  +--ro state
  |  |  |  |     +--ro usb-over-current-status?      uint8
  |  |  |  |     +--ro loss-of-input-clock-status?   uint8
  |  |  |  +--ro poe
  |  |  |     +--ro state
  |  |  |        +--ro port-index?   uint8
  |  |  |        +--ro port-name?    string
  |  |  |        +--ro port-state?   ipi-platform-ceragon-types:cmm_poe_port_status_t
  |  |  +--ro edfas
  |  |  |  +--ro edfa* [port]
  |  |  |     +--ro port             -> ../state/port
  |  |  |     +--ro state
  |  |  |     |  +--ro port?   uint8
  |  |  |     +--ro monitors
  |  |  |     |  +--ro monitor* [id]
  |  |  |     |     +--ro id       -> ../state/id
  |  |  |     |     +--ro state
  |  |  |     |        +--ro id?             ipi-platform-transceiver-types:cmm_edfa_ddm_monitor_id_t
  |  |  |     |        +--ro description?    string
  |  |  |     |        +--ro value?          decimal64
  |  |  |     |        +--ro high-alarm?     decimal64
  |  |  |     |        +--ro high-warning?   decimal64
  |  |  |     |        +--ro low-warning?    decimal64
  |  |  |     |        +--ro low-alarm?      decimal64
  |  |  |     +--ro monitor-alarm
  |  |  |        +--ro state
  |  |  |           +--ro alarm-id?            ipi-platform-transceiver-types:cmm_edfa_ddm_monitor_id_t
  |  |  |           +--ro alarm-type?          ipi-platform-transceiver-types:cmm_ddm_threshold_alarm_t
  |  |  |           +--ro current-value?       decimal64
  |  |  |           +--ro threshold-minimum?   decimal64
  |  |  |           +--ro threshold-maximum?   decimal64
  |  |  +--ro remote-sfps
  |  |     +--ro remote-sfp* [port]
  |  |        +--ro port             -> ../state/port
  |  |        +--ro state
  |  |        |  +--ro port?   uint8
  |  |        +--ro eeprom
  |  |        |  +--ro state
  |  |        |     +--ro identifier?                              ipi-platform-transceiver-types:ddm_cmm_trans_identifier_t
  |  |        |     +--ro sfp-extended-identifier?                 ipi-platform-transceiver-types:ddm_cmm_trans_sfp_extended_identifier_t
  |  |        |     +--ro connector-type?                          ipi-platform-transceiver-types:ddm_cmm_trans_connector_type_t
  |  |        |     +--ro ethernet-compliance-code?                ipi-platform-transceiver-types:ddm_cmm_trans_eth_compliance_t
  |  |        |     +--ro extended-ethernet-compliance-code?       ipi-platform-transceiver-types:ddm_cmm_trans_ext_eth_compliance_t
  |  |        |     +--ro sonet-compliance-code?                   ipi-platform-transceiver-types:ddm_cmm_trans_sonet_compliance_t
  |  |        |     +--ro fiber-channel-link-length?               ipi-platform-transceiver-types:ddm_cmm_trans_fiber_channel_linklen_t
  |  |        |     +--ro fiber-channel-transmission-technology?   ipi-platform-transceiver-types:ddm_cmm_trans_fiber_channel_transmittech_t
  |  |        |     +--ro fiber-channel-transmission-media?        ipi-platform-transceiver-types:ddm_cmm_trans_fiber_channel_transmitmedia_t
  |  |        |     +--ro fiber-channel-sfp-speed?                 ipi-platform-transceiver-types:ddm_cmm_trans_fiber_channel_speed_t
  |  |        |     +--ro sfp-infiniband-compliance-code?          ipi-platform-transceiver-types:ddm_cmm_trans_sfp_infiniband_compliance_t
  |  |        |     +--ro sfp-escon-compliance-code?               ipi-platform-transceiver-types:ddm_cmm_trans_sfp_escon_compliance_t
  |  |        |     +--ro sfp-plus-cable-technology?               ipi-platform-transceiver-types:ddm_cmm_trans_sfp_plus_cable_tech_t
  |  |        |     +--ro serial-encoding-algorithm?               ipi-platform-transceiver-types:ddm_cmm_trans_encoding_t
  |  |        |     +--ro link-length-kilometer?                   int32
  |  |        |     +--ro link-length-meter?                       int32
  |  |        |     +--ro om1-link-length?                         int32
  |  |        |     +--ro om2-link-length?                         int32
  |  |        |     +--ro om3-link-length?                         int32
  |  |        |     +--ro om4-link-length?                         int32
  |  |        |     +--ro vendor-name?                             string
  |  |        |     +--ro vendor-ieee-id?                          string
  |  |        |     +--ro vendor-part-number?                      string
  |  |        |     +--ro vendor-revision-number?                  string
  |  |        |     +--ro check-code?                              string
  |  |        |     +--ro extended-check-code?                     string
  |  |        |     +--ro nominal-signalling-rate?                 int32
  |  |        |     +--ro maximum-signalling-rate?                 int32
  |  |        |     +--ro minimum-signalling-rate?                 int32
  |  |        |     +--ro vendor-serial-number?                    string
  |  |        |     +--ro vendor-manufacturing-date?               string
  |  |        |     +--ro ddm-type?                                ipi-platform-transceiver-types:ddm_cmm_trans_ddm_support_t
  |  |        |     +--ro maximum-case-temperature?                decimal64
  |  |        |     +--ro sfp-options-implemented?                 ipi-platform-transceiver-types:ddm_cmm_trans_sfp_options_implemented_t
  |  |        +--ro monitors
  |  |        |  +--ro monitor* [id]
  |  |        |     +--ro id       -> ../state/id
  |  |        |     +--ro state
  |  |        |        +--ro id?             ipi-platform-transceiver-types:cmm_smart_sfp_ddm_monitor_id_t
  |  |        |        +--ro description?    string
  |  |        |        +--ro value?          decimal64
  |  |        |        +--ro high-alarm?     decimal64
  |  |        |        +--ro high-warning?   decimal64
  |  |        |        +--ro low-warning?    decimal64
  |  |        |        +--ro low-alarm?      decimal64
  |  |        +--ro monitor-alarm
  |  |        |  +--ro state
  |  |        |     +--ro alarm-id?            ipi-platform-transceiver-types:cmm_smart_sfp_ddm_monitor_id_t
  |  |        |     +--ro alarm-type?          ipi-platform-transceiver-types:cmm_ddm_threshold_alarm_t
  |  |        |     +--ro current-value?       decimal64
  |  |        |     +--ro threshold-minimum?   decimal64
  |  |        |     +--ro threshold-maximum?   decimal64
  |  |        +--ro protocol
  |  |           +--ro state
  |  |           |  +--ro protocol-running-state?   ipi-platform-transceiver-types:cmm_smart_sfp_protocol_running_state_t
  |  |           |  +--ro protocol-local-status?    ipi-platform-transceiver-types:cmm_smart_sfp_protocol_status_t
  |  |           |  +--ro protocol-remote-status?   ipi-platform-transceiver-types:cmm_smart_sfp_protocol_status_t
  |  |           |  +--ro packets-rx?               int32
  |  |           |  +--ro packets-tx?               int32
  |  |           |  +--ro packets-error?            int32
  |  |           +--ro alarm
  |  |              +--ro state
  |  |                 +--ro alarm-id?         ipi-platform-transceiver-types:cmm_smart_sfp_protocol_alarm_id_t
  |  |                 +--ro current-status?   ipi-platform-transceiver-types:cmm_smart_sfp_protocol_status_t
  |  +--rw debug
  |  |  +--rw config
  |  |  |  +--rw enable-cmm?   empty
  |  |  |  +--rw enable-ddm?   empty {feature-list:NOT_HAVE_TIBIT}?
  |  |  +--ro state
  |  |     +--ro enable-cmm?                  empty
  |  |     +--ro enable-ddm?                  empty {feature-list:NOT_HAVE_TIBIT}?
  |  |     +--ro terminal-debug-status-cmm?   cml-data-types:cml_on_off_t
  |  |     +--ro terminal-debug-status-ddm?   cml-data-types:cml_on_off_t {feature-list:NOT_HAVE_TIBIT}?
  |  +--rw global
  |  |  +--rw config
  |  |  |  +--rw warning-repeat?                    empty
  |  |  |  +--rw locator-led-enable?                empty {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--rw ddm-monitor-time-interval?         uint16 {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--rw service-unsupported-transceiver?   empty {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--rw enable-ddm-monitor?                empty {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--rw gps-satellite?                     ipi-platform-types:gps_satellite_system_t {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1}?
  |  |  +--ro state
  |  |  |  +--ro warning-repeat?                    empty
  |  |  |  +--ro locator-led-enable?                empty {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro ddm-monitor-time-interval?         uint16 {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro service-unsupported-transceiver?   empty {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro enable-ddm-monitor?                empty {feature-list:NOT_HAVE_TIBIT}?
  |  |  |  +--ro gps-satellite?                     ipi-platform-types:gps_satellite_system_t {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1}?
  |  |  +--rw system-load-average-thresholds
  |  |  |  +--rw system-load-average-threshold* [system-1min-load-avg-warning-threshold system-1min-load-avg-alarm system-5min-load-avg-alarm system-15min-load-avg-alarm]
  |  |  |     +--rw system-1min-load-avg-warning-threshold    -> ../config/system-1min-load-avg-warning-threshold
  |  |  |     +--rw system-1min-load-avg-alarm                -> ../config/system-1min-load-avg-alarm
  |  |  |     +--rw system-5min-load-avg-alarm                -> ../config/system-5min-load-avg-alarm
  |  |  |     +--rw system-15min-load-avg-alarm               -> ../config/system-15min-load-avg-alarm
  |  |  |     +--rw config
  |  |  |     |  +--rw system-1min-load-avg-warning-threshold?   uint8
  |  |  |     |  +--rw system-1min-load-avg-alarm?               uint8
  |  |  |     |  +--rw system-5min-load-avg-alarm?               uint8
  |  |  |     |  +--rw system-15min-load-avg-alarm?              uint8
  |  |  |     +--ro state
  |  |  |        +--ro system-1min-load-avg-warning-threshold?   uint8
  |  |  |        +--ro system-1min-load-avg-alarm?               uint8
  |  |  |        +--ro system-5min-load-avg-alarm?               uint8
  |  |  |        +--ro system-15min-load-avg-alarm?              uint8
  |  |  +--rw cpu-core-usage-thresholds
  |  |  |  +--rw cpu-core-usage-threshold* [warning-threshold alarm-threshold]
  |  |  |     +--rw warning-threshold    -> ../config/warning-threshold
  |  |  |     +--rw alarm-threshold      -> ../config/alarm-threshold
  |  |  |     +--rw config
  |  |  |     |  +--rw warning-threshold?   uint8
  |  |  |     |  +--rw alarm-threshold?     uint8
  |  |  |     +--ro state
  |  |  |        +--ro warning-threshold?   uint8
  |  |  |        +--ro alarm-threshold?     uint8
  |  |  +--rw gps-position {feature-list:HAVE_PTP_HW_OFFLOAD}?
  |  |     +--rw config
  |  |     |  +--rw (gps-position-option)?
  |  |     |     +--:(gps-position-disable)
  |  |     |     |  +--rw gps-position-disable?              empty
  |  |     |     +--:(gps-survey-in-observation-time)
  |  |     |     |  +--rw gps-survey-in-observation-time?    uint32
  |  |     |     |  +--rw gps-survey-in-position-accuracy?   uint32
  |  |     |     +--:(gps-fixed-latitude)
  |  |     |        +--rw gps-fixed-latitude?                decimal64
  |  |     |        +--rw gps-fixed-longitude?               decimal64
  |  |     |        +--rw gps-fixed-altitude?                decimal64
  |  |     +--ro state
  |  |        +--ro (gps-position-option)?
  |  |           +--:(gps-position-disable)
  |  |           |  +--ro gps-position-disable?              empty
  |  |           +--:(gps-survey-in-observation-time)
  |  |           |  +--ro gps-survey-in-observation-time?    uint32
  |  |           |  +--ro gps-survey-in-position-accuracy?   uint32
  |  |           +--:(gps-fixed-latitude)
  |  |              +--ro gps-fixed-latitude?                decimal64
  |  |              +--ro gps-fixed-longitude?               decimal64
  |  |              +--ro gps-fixed-altitude?                decimal64
  |  +--rw interfaces {feature-list:NOT_HAVE_TIBIT}?
  |  |  +--rw interface* [interface-name]
  |  |     +--rw interface-name    -> ../config/interface-name
  |  |     +--rw config
  |  |     |  +--rw interface-name?             -> /ipi-interface:interfaces/interface/name
  |  |     |  +--rw monitor-port?               ipi-platform-types:cmm_monitor_state
  |  |     |  +--rw poe-enable?                 empty
  |  |     |  +--rw transceiver-code?           ipi-platform-transceiver-types:ddm_transceiver_t
  |  |     |  +--rw wavelength?                 ipi-platform-types:cml_wavelength_t
  |  |     |  +--rw tx-disable?                 empty
  |  |     |  +--rw edfa-operating-mode?        ipi-platform-types:edfa_operating_mode_t
  |  |     |  +--rw edfa-target-output-power?   decimal64
  |  |     |  +--rw edfa-target-gain?           decimal64
  |  |     |  +--rw tx-cdr-bypass?              empty
  |  |     |  +--rw rx-cdr-bypass?              empty
  |  |     +--ro state
  |  |        +--ro interface-name?             -> /ipi-interface:interfaces/interface/name
  |  |        +--ro monitor-port?               ipi-platform-types:cmm_monitor_state
  |  |        +--ro poe-enable?                 empty
  |  |        +--ro transceiver-code?           ipi-platform-transceiver-types:ddm_transceiver_t
  |  |        +--ro wavelength?                 ipi-platform-types:cml_wavelength_t
  |  |        +--ro tx-disable?                 empty
  |  |        +--ro edfa-operating-mode?        ipi-platform-types:edfa_operating_mode_t
  |  |        +--ro edfa-target-output-power?   decimal64
  |  |        +--ro edfa-target-gain?           decimal64
  |  |        +--ro tx-cdr-bypass?              empty
  |  |        +--ro rx-cdr-bypass?              empty
  |  +--rw disk-activity-monitoring
  |  |  +--rw config
  |  |  |  +--rw interval?          uint16
  |  |  |  +--rw read-threshold?    uint32
  |  |  |  +--rw write-threshold?   uint32
  |  |  +--ro state
  |  |     +--ro interval?          uint16
  |  |     +--ro read-threshold?    uint32
  |  |     +--ro write-threshold?   uint32
  |  +--rw temperature
  |     +--rw config
  |     |  +--rw temperature-policy?   ipi-platform-types:cml_temp_policy_t
  |     +--ro state
  |     |  +--ro temperature-policy?   ipi-platform-types:cml_temp_policy_t
  |     +--rw thresholds
  |        +--rw threshold* [sensor-id]
  |           +--rw sensor-id     -> ../config/sensor-id
  |           +--rw config
  |           |  +--rw sensor-id?   uint8
  |           +--ro state
  |           |  +--ro sensor-id?   uint8
  |           +--rw severities
  |              +--rw severity* [severity]
  |                 +--rw severity    -> ../config/severity
  |                 +--rw config
  |                 |  +--rw severity?   ipi-platform-types:cml_temp_threshold_t
  |                 |  +--rw value?      int16
  |                 +--ro state
  |                    +--ro severity?   ipi-platform-types:cml_temp_threshold_t
  |                    +--ro value?      int16
  +--rw forwarding-profile-route-modes {feature-list:HAVE_BROADCOM}?
  +--rw profiles {feature-list:HAVE_BROADCOM}?
  |  +--rw hardware-profile
  |  |  +--rw config
  |  |  |  +--rw flow-control?                   empty {feature-list:HAVE_BCM_UFT,feature-list:HAVE_DUNE}?
  |  |  |  +--rw aclif?                          ipi-platform-profile-types:platform_aclif_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw seamless-bfd?                   empty {feature-list:HAVE_CUSTOM1_HW_BFD,feature-list:HAVE_SBFD}?
  |  |  |  +--rw ufis9510-28dc-port-mode?        ipi-platform-profile-types:platform_ufis9510_28dc_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw ufis9600-64x-port-mode?         ipi-platform-profile-types:platform_ufis9600_64x_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw as7315_27x-port-mode?           ipi-platform-profile-types:platform_as7315_27x_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw as5916_as5912_54x-port-mode?    ipi-platform-profile-types:platform_as5916_as5912_54x_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw as7316_26xb-port-mode?          ipi-platform-profile-types:platform_as7316_26xb_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw s9500_30xs-port-mode?           ipi-platform-profile-types:platform_s9500_30xs_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw ufis9600-32x-port-mode?         ipi-platform-profile-types:platform_ufis9600_32x_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw ufis9600-56dx-port-mode?        ipi-platform-profile-types:platform_ufis9600_56dx_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw ufis9600-28dx-port-mode?        ipi-platform-profile-types:platform_ufis9600_28dx_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw ufis9610-36d-port-mode?         ipi-platform-profile-types:platform_ufis9610_36d_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw custom-service-queue-profile?   ipi-platform-profile-types:platform_qos_queue_profile_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--rw bgp-flowspec-mode?              ipi-platform-profile-types:platform_bgp_flowspec_mode_t {feature-list:HAVE_DUNE,feature-list:HAVE_BGP_FLOWSPEC}?
  |  |  +--ro state
  |  |  |  +--ro flow-control?                   empty {feature-list:HAVE_BCM_UFT,feature-list:HAVE_DUNE}?
  |  |  |  +--ro aclif?                          ipi-platform-profile-types:platform_aclif_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro seamless-bfd?                   empty {feature-list:HAVE_CUSTOM1_HW_BFD,feature-list:HAVE_SBFD}?
  |  |  |  +--ro ufis9510-28dc-port-mode?        ipi-platform-profile-types:platform_ufis9510_28dc_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro ufis9600-64x-port-mode?         ipi-platform-profile-types:platform_ufis9600_64x_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro as7315_27x-port-mode?           ipi-platform-profile-types:platform_as7315_27x_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro as5916_as5912_54x-port-mode?    ipi-platform-profile-types:platform_as5916_as5912_54x_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro as7316_26xb-port-mode?          ipi-platform-profile-types:platform_as7316_26xb_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro s9500_30xs-port-mode?           ipi-platform-profile-types:platform_s9500_30xs_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro ufis9600-32x-port-mode?         ipi-platform-profile-types:platform_ufis9600_32x_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro ufis9600-56dx-port-mode?        ipi-platform-profile-types:platform_ufis9600_56dx_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro ufis9600-28dx-port-mode?        ipi-platform-profile-types:platform_ufis9600_28dx_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro ufis9610-36d-port-mode?         ipi-platform-profile-types:platform_ufis9610_36d_port_mode_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro custom-service-queue-profile?   ipi-platform-profile-types:platform_qos_queue_profile_type_t {feature-list:HAVE_DUNE}?
  |  |  |  +--ro bgp-flowspec-mode?              ipi-platform-profile-types:platform_bgp_flowspec_mode_t {feature-list:HAVE_DUNE,feature-list:HAVE_BGP_FLOWSPEC}?
  |  |  +--rw filters
  |  |  |  +--rw config
  |  |  |  |  +--rw qos-policer?                  empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-ipv6?                 empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw qos-ipv6?                     empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ipv4-bgp-flowspec?            empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE,feature-list:HAVE_BGP_FLOWSPEC}?
  |  |  |  |  +--rw qos-extended?                 empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-ipv4-extended?        empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-ipv6-qos?             empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-ipv4-qos?             empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-layer2-extended?      empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-ipv6-extended?        empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-ipv6-extended-vlan?   empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-ipv4-subif?           empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-arp?                  empty {feature-list:HAVE_ACL}?
  |  |  |  |  +--rw ipv6-bgp-flowspec?            empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE,feature-list:HAVE_BGP_FLOWSPEC}?
  |  |  |  |  +--rw egress-ipv4?                  empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_CUSTOM3_ACL}?
  |  |  |  |  +--rw egress-layer2?                empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_CUSTOM3_ACL}?
  |  |  |  |  +--rw ingress-layer2-subif?         empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw cfm-domain-name-string?       empty {feature-list:HAVE_CFM,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw twamp-ipv4?                   empty {feature-list:HAVE_TWAMP_HW_OFFLOAD,feature-list:HAVE_TWAMP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw twamp-ipv6?                   empty {feature-list:HAVE_TWAMP_HW_OFFLOAD,feature-list:HAVE_TWAMP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw twamp-ipv6-mpls?              empty {feature-list:HAVE_TWAMP_HW_OFFLOAD,feature-list:HAVE_TWAMP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw vxlan-arp-nd?                 empty {feature-list:HAVE_VXLAN,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw vxlan-multi-homing?           empty {feature-list:HAVE_VXLAN,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw evpn-mpls-control-word?       empty {feature-list:HAVE_NVO,feature-list:HAVE_MPLS,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw dhcp-snoop?                   empty {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw dhcp-snoop-ipv6?              empty {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ipsg?                         empty {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ipsg-ipv6?                    empty {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_BROADCOM}?
  |  |  |  |  +--rw ingress-ipv4?                 empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw ingress-layer2?               empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--rw qos?                          empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  +--ro state
  |  |  |  |  +--ro qos-policer?                  empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-ipv6?                 empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro qos-ipv6?                     empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ipv4-bgp-flowspec?            empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE,feature-list:HAVE_BGP_FLOWSPEC}?
  |  |  |  |  +--ro qos-extended?                 empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-ipv4-extended?        empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-ipv6-qos?             empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-ipv4-qos?             empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-layer2-extended?      empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-ipv6-extended?        empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-ipv6-extended-vlan?   empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-ipv4-subif?           empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-arp?                  empty {feature-list:HAVE_ACL}?
  |  |  |  |  +--ro ipv6-bgp-flowspec?            empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE,feature-list:HAVE_BGP_FLOWSPEC}?
  |  |  |  |  +--ro egress-ipv4?                  empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_CUSTOM3_ACL}?
  |  |  |  |  +--ro egress-layer2?                empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_CUSTOM3_ACL}?
  |  |  |  |  +--ro ingress-layer2-subif?         empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro cfm-domain-name-string?       empty {feature-list:HAVE_CFM,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--ro twamp-ipv4?                   empty {feature-list:HAVE_TWAMP_HW_OFFLOAD,feature-list:HAVE_TWAMP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro twamp-ipv6?                   empty {feature-list:HAVE_TWAMP_HW_OFFLOAD,feature-list:HAVE_TWAMP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro twamp-ipv6-mpls?              empty {feature-list:HAVE_TWAMP_HW_OFFLOAD,feature-list:HAVE_TWAMP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro vxlan-arp-nd?                 empty {feature-list:HAVE_VXLAN,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro vxlan-multi-homing?           empty {feature-list:HAVE_VXLAN,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro evpn-mpls-control-word?       empty {feature-list:HAVE_NVO,feature-list:HAVE_MPLS,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--ro dhcp-snoop?                   empty {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro dhcp-snoop-ipv6?              empty {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ipsg?                         empty {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ipsg-ipv6?                    empty {feature-list:HAVE_DHCP_SNOOP,feature-list:HAVE_BROADCOM}?
  |  |  |  |  +--ro ingress-ipv4?                 empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro ingress-layer2?               empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  |  +--ro qos?                          empty {feature-list:HAVE_ACL,feature-list:HAVE_DUNE}?
  |  |  |  +--ro tcam-utilization {feature-list:HAVE_ACL}?
  |  |  |     +--ro state
  |  |  |     |  +--ro warning-threshold-level?          int32
  |  |  |     |  +--ro critical-alert-threshold-level?   int32
  |  |  |     +--ro filter-groups
  |  |  |        +--ro filter-group* [group-id]
  |  |  |           +--ro group-id    -> ../state/group-id
  |  |  |           +--ro state
  |  |  |              +--ro group-id?            uint32
  |  |  |              +--ro group-name?          cml-data-types:cml_line_t
  |  |  |              +--ro free-entries?        int32
  |  |  |              +--ro used-entries?        int32
  |  |  |              +--ro used-percentage?     int32
  |  |  |              +--ro total-entries?       int32
  |  |  |              +--ro dedicated-entries?   int32
  |  |  |              +--ro shared-entries?      int32
  |  |  +--rw filter-evpn-mpls-mh
  |  |  |  +--rw config
  |  |  |  |  +--rw evpn-mpls-multi-homing?   empty {feature-list:HAVE_NVO,feature-list:HAVE_MPLS,feature-list:HAVE_DUNE}?
  |  |  |  +--ro state
  |  |  |  |  +--ro evpn-mpls-multi-homing?   empty {feature-list:HAVE_NVO,feature-list:HAVE_MPLS,feature-list:HAVE_DUNE}?
  |  |  |  +--ro tcam-utilization {feature-list:HAVE_ACL}?
  |  |  |     +--ro state
  |  |  |     |  +--ro warning-threshold-level?          int32
  |  |  |     |  +--ro critical-alert-threshold-level?   int32
  |  |  |     +--ro filter-groups
  |  |  |        +--ro filter-group* [group-id]
  |  |  |           +--ro group-id    -> ../state/group-id
  |  |  |           +--ro state
  |  |  |              +--ro group-id?            uint32
  |  |  |              +--ro group-name?          cml-data-types:cml_line_t
  |  |  |              +--ro free-entries?        int32
  |  |  |              +--ro used-entries?        int32
  |  |  |              +--ro used-percentage?     int32
  |  |  |              +--ro total-entries?       int32
  |  |  |              +--ro dedicated-entries?   int32
  |  |  |              +--ro shared-entries?      int32
  |  |  +--rw statistics
  |  |     +--rw config
  |  |     |  +--rw ingress-acl?                         empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |     |  +--rw egress-acl?                          empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |     |  +--rw ingress-qos?                         empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |     |  +--rw attachment-circuit-logical-if?       empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |     |  +--rw tunnel-logical-if?                   empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |     |  +--rw evpn-mpls-stats?                     empty {feature-list:HAVE_NVO,feature-list:HAVE_MPLS,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |     |  +--rw mpls-pseudowire?                     empty {feature-list:HAVE_DUNE,feature-list:HAVE_MPLS_STATS,feature-list:NOT_HAVE_DNX}?
  |  |     |  +--rw cfm-frame-loss-measurements?         empty {feature-list:HAVE_DUNE,feature-list:HAVE_CFM}?
  |  |     |  +--rw cfm-continuity-check-messages?       empty {feature-list:HAVE_DUNE,feature-list:CCM_HW_OFFLOAD,feature-list:NOT_HAVE_DNX}?
  |  |     |  +--rw virtual-output-queue-full-color?     empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |     |  +--rw virtual-output-queue-forward-drop?   empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |     +--ro state
  |  |        +--ro ingress-acl?                         empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |        +--ro egress-acl?                          empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |        +--ro ingress-qos?                         empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |        +--ro attachment-circuit-logical-if?       empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |        +--ro tunnel-logical-if?                   empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |        +--ro evpn-mpls-stats?                     empty {feature-list:HAVE_NVO,feature-list:HAVE_MPLS,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |        +--ro mpls-pseudowire?                     empty {feature-list:HAVE_DUNE,feature-list:HAVE_MPLS_STATS,feature-list:NOT_HAVE_DNX}?
  |  |        +--ro cfm-frame-loss-measurements?         empty {feature-list:HAVE_DUNE,feature-list:HAVE_CFM}?
  |  |        +--ro cfm-continuity-check-messages?       empty {feature-list:HAVE_DUNE,feature-list:CCM_HW_OFFLOAD,feature-list:NOT_HAVE_DNX}?
  |  |        +--ro virtual-output-queue-full-color?     empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |        +--ro virtual-output-queue-forward-drop?   empty {feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  +--rw forwarding-profiles
  |     +--rw kaps {feature-list:HAVE_DUNE,feature-list:HAVE_BCM_UFT,feature-list:NOT_HAVE_DNX}?
  |     |  +--rw config
  |     |  |  +--rw profile-type?   ipi-platform-profile-types:platform_kaps_profile_type_t
  |     |  +--ro state
  |     |     +--ro profile-type?   ipi-platform-profile-types:platform_kaps_profile_type_t
  |     +--rw external-tcam {feature-list:HAVE_DUNE,feature-list:HAVE_BCM_UFT,feature-list:NOT_HAVE_DNX}?
  |     |  +--rw config
  |     |  |  +--rw profile-type?   ipi-platform-profile-types:platform_ext_tcam_profile_type_t
  |     |  +--ro state
  |     |     +--ro profile-type?   ipi-platform-profile-types:platform_ext_tcam_profile_type_t
  |     +--rw custom-tcam {feature-list:HAVE_DUNE,feature-list:HAVE_BCM_UFT,feature-list:NOT_HAVE_DNX}?
  |     |  +--rw config!
  |     |  |  +--rw profile-type       ipi-platform-profile-types:platform_tcam_custom_profile_t
  |     |  |  +--rw ipv4-percentage    uint8
  |     |  |  +--rw ipv6-percentage    uint8
  |     |  +--ro state
  |     |     +--ro profile-type       ipi-platform-profile-types:platform_tcam_custom_profile_t
  |     |     +--ro ipv4-percentage    uint8
  |     |     +--ro ipv6-percentage    uint8
  |     +--ro table-limit {feature-list:HAVE_BCM_UFT}?
  |        +--ro kaps* [profile] {feature-list:HAVE_DUNE}?
  |        |  +--ro profile    -> ../state/profile
  |        |  +--ro state
  |        |     +--ro profile?           ipi-platform-profile-types:platform_kaps_forwading_profile_t
  |        |     +--ro is-active?         boolean
  |        |     +--ro public-db-size?    uint32
  |        |     +--ro private-db-size?   uint32
  |        +--ro external-tcam* [profile] {feature-list:HAVE_DUNE,feature-list:HAVE_ELK_TCAM}?
  |        |  +--ro profile    -> ../state/profile
  |        |  +--ro state
  |        |     +--ro profile?        ipi-platform-profile-types:platform_elk_tcam_forwading_profile_t
  |        |     +--ro is-active?      boolean
  |        |     +--ro ipv4-db-size?   uint32
  |        |     +--ro ipv6-db-size?   uint32
  |        +--ro state {feature-list:HAVE_BCM_UFT}?
  +--rw hardware {feature-list:HAVE_BROADCOM}?
  |  +--rw hw-soc-property
  |  |  +--rw config
  |  |  |  +--rw parser-enable?   empty {feature-list:HAVE_MPLS,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |  +--ro state
  |  |     +--ro parser-enable?   empty {feature-list:HAVE_MPLS,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  +--rw load-balance {feature-list:HAVE_BROADCOM}?
  |  |  +--rw config!
  |  |  |  +--rw enable              empty
  |  |  |  +--rw mpls-label-based?   empty
  |  |  |  +--rw mpls-inner-stack?   ipi-platform-profile-types:platform_load_balance_mpls_inner_stack_t {feature-list:HAVE_MPLS,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |  +--ro state
  |  |  |  +--ro enable              empty
  |  |  |  +--ro mpls-label-based?   empty
  |  |  |  +--ro mpls-inner-stack?   ipi-platform-profile-types:platform_load_balance_mpls_inner_stack_t {feature-list:HAVE_MPLS,feature-list:HAVE_DUNE,feature-list:NOT_HAVE_DNX}?
  |  |  +--rw l2 {feature-list:HAVE_L2}?
  |  |  |  +--rw config
  |  |  |  |  +--rw dest-mac-based?     empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw src-mac-based?      empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw ether-type-based?   empty
  |  |  |  |  +--rw vlan-based?         empty
  |  |  |  +--ro state
  |  |  |     +--ro dest-mac-based?     empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro src-mac-based?      empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro ether-type-based?   empty
  |  |  |     +--ro vlan-based?         empty
  |  |  +--rw ipv4 {feature-list:HAVE_L3}?
  |  |  |  +--rw config
  |  |  |  |  +--rw src-ipv4-address-based?    empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw dest-ipv4-address-based?   empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw src-l4-port-based?         empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw dest-l4-port-based?        empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw protocol-id-based?         empty
  |  |  |  +--ro state
  |  |  |     +--ro src-ipv4-address-based?    empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro dest-ipv4-address-based?   empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro src-l4-port-based?         empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro dest-l4-port-based?        empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro protocol-id-based?         empty
  |  |  +--rw ipv6 {feature-list:HAVE_L3}?
  |  |  |  +--rw config
  |  |  |  |  +--rw src-ipv6-address-based?    empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw dest-ipv6-address-based?   empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw src-l4-port-based?         empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw dest-l4-port-based?        empty {feature-list:NOT_HAVE_DNX}?
  |  |  |  |  +--rw next-header-based?         empty
  |  |  |  +--ro state
  |  |  |     +--ro src-ipv6-address-based?    empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro dest-ipv6-address-based?   empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro src-l4-port-based?         empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro dest-l4-port-based?        empty {feature-list:NOT_HAVE_DNX}?
  |  |  |     +--ro next-header-based?         empty
  |  |  +--rw port-channel {feature-list:NOT_HAVE_MARVELL,feature-list:NOT_HAVE_MARVELL}?
  |  +--ro dram-tune {feature-list:HAVE_BROADCOM}?
  |  |  +--ro state
  |  |     +--ro dram-tune-status?   int32 {feature-list:HAVE_BROADCOM}?
  |  +--rw cpu-queue {feature-list:HAVE_BROADCOM_OR_HAVE_MARVELL}?
  |  |  +--rw rate-limits
  |  |     +--rw rate-limit* [queue-name]
  |  |        +--rw queue-name    -> ../config/queue-name
  |  |        +--rw config
  |  |        |  +--rw queue-name?       ipi-platform-profile-types:platform_cpu_queue_name_t
  |  |        |  +--rw rate?             int32
  |  |        |  +--rw monitor-status?   ipi-platform-profile-types:platform_cpu_queue_monitor_t {feature-list:HAVE_DUNE}?
  |  |        +--ro state
  |  |           +--ro queue-name?       ipi-platform-profile-types:platform_cpu_queue_name_t
  |  |           +--ro rate?             int32
  |  |           +--ro monitor-status?   ipi-platform-profile-types:platform_cpu_queue_monitor_t {feature-list:HAVE_DUNE}?
  |  +--rw mac-ageing {feature-list:NOT_HAVE_MARVELL,feature-list:NOT_HAVE_MARVELL}?
  |  |  +--rw config
  |  |  +--ro state
  |  +--rw platform {feature-list:NOT_HAVE_MARVELL,feature-list:NOT_HAVE_MARVELL}?
  |     +--rw config
  |        +--rw soc?   ipi-platform-profile-types:platform_soc_type_t
  +--rw qsfp-dds
     +--rw qsfp-dd* [fp-port]
        +--rw fp-port             -> ../config/fp-port
        +--rw config
        |  +--rw fp-port?               uint8
        |  +--rw application?           uint8
        |  +--rw service-disable?       empty
        |  +--rw custom-app-host-id?    uint8
        |  +--rw custom-app-media-id?   uint8
        +--ro state
        |  +--ro fp-port?               uint8
        |  +--ro application?           uint8
        |  +--ro service-disable?       empty
        |  +--ro custom-app-host-id?    uint8
        |  +--ro custom-app-media-id?   uint8
        +--rw host
        |  +--rw prbs
        |  |  +--rw generator
        |  |  |  +--rw config
        |  |  |  |  +--rw type?       ipi-platform-cmis-types:cmm_cmis_prbs_type_t
        |  |  |  |  +--rw location?   ipi-platform-cmis-types:cmm_cmis_prbs_location_t
        |  |  |  +--ro state
        |  |  |     +--ro type?       ipi-platform-cmis-types:cmm_cmis_prbs_type_t
        |  |  |     +--ro location?   ipi-platform-cmis-types:cmm_cmis_prbs_location_t
        |  |  +--rw checker
        |  |     +--rw config
        |  |     |  +--rw type?       ipi-platform-cmis-types:cmm_cmis_prbs_type_t
        |  |     |  +--rw location?   ipi-platform-cmis-types:cmm_cmis_prbs_location_t
        |  |     +--ro state
        |  |        +--ro type?       ipi-platform-cmis-types:cmm_cmis_prbs_type_t
        |  |        +--ro location?   ipi-platform-cmis-types:cmm_cmis_prbs_location_t
        |  +--rw loopback
        |  |  +--rw config
        |  |  |  +--rw type?   ipi-platform-cmis-types:cmm_cmis_loopback_type_t
        |  |  +--ro state
        |  |     +--ro type?   ipi-platform-cmis-types:cmm_cmis_loopback_type_t
        |  +--rw lanes
        |     +--rw lane* [lane-number]
        |        +--rw lane-number         -> ../config/lane-number
        |        +--rw config
        |        |  +--rw lane-number?   uint8
        |        +--ro state
        |        |  +--ro lane-number?   uint8
        |        +--rw thresholds
        |        |  +--rw threshold* [id]
        |        |     +--rw id        -> ../config/id
        |        |     +--rw config
        |        |     |  +--rw id?             ipi-platform-cmis-types:cmm_ccmis_host_lane_thres_id_t
        |        |     |  +--rw high-alarm?     decimal64
        |        |     |  +--rw low-alarm?      decimal64
        |        |     |  +--rw high-warning?   decimal64
        |        |     |  +--rw low-warning?    decimal64
        |        |     +--ro state
        |        |        +--ro id?             ipi-platform-cmis-types:cmm_ccmis_host_lane_thres_id_t
        |        |        +--ro high-alarm?     decimal64
        |        |        +--ro low-alarm?      decimal64
        |        |        +--ro high-warning?   decimal64
        |        |        +--ro low-warning?    decimal64
        |        +--rw signal-integrity
        |           +--rw config
        |           |  +--rw tx-input-equalizer-target?                uint8
        |           |  +--rw rx-output-equalizer-pre-cursor-target?    uint8
        |           |  +--rw rx-output-equalizer-post-cursor-target?   uint8
        |           |  +--rw rx-output-amplitude-target?               uint8
        |           |  +--rw tx-cdr-bypass?                            empty
        |           |  +--rw rx-cdr-bypass?                            empty
        |           +--ro state
        |              +--ro tx-input-equalizer-target?                uint8
        |              +--ro rx-output-equalizer-pre-cursor-target?    uint8
        |              +--ro rx-output-equalizer-post-cursor-target?   uint8
        |              +--ro rx-output-amplitude-target?               uint8
        |              +--ro tx-cdr-bypass?                            empty
        |              +--ro rx-cdr-bypass?                            empty
        +--rw media
        |  +--rw prbs
        |  |  +--rw generator
        |  |  |  +--rw config
        |  |  |  |  +--rw type?       ipi-platform-cmis-types:cmm_cmis_prbs_type_t
        |  |  |  |  +--rw location?   ipi-platform-cmis-types:cmm_cmis_prbs_location_t
        |  |  |  +--ro state
        |  |  |     +--ro type?       ipi-platform-cmis-types:cmm_cmis_prbs_type_t
        |  |  |     +--ro location?   ipi-platform-cmis-types:cmm_cmis_prbs_location_t
        |  |  +--rw checker
        |  |     +--rw config
        |  |     |  +--rw type?       ipi-platform-cmis-types:cmm_cmis_prbs_type_t
        |  |     |  +--rw location?   ipi-platform-cmis-types:cmm_cmis_prbs_location_t
        |  |     +--ro state
        |  |        +--ro type?       ipi-platform-cmis-types:cmm_cmis_prbs_type_t
        |  |        +--ro location?   ipi-platform-cmis-types:cmm_cmis_prbs_location_t
        |  +--rw loopback
        |  |  +--rw config
        |  |  |  +--rw type?   ipi-platform-cmis-types:cmm_cmis_loopback_type_t
        |  |  +--ro state
        |  |     +--ro type?   ipi-platform-cmis-types:cmm_cmis_loopback_type_t
        |  +--rw lanes
        |     +--rw lane* [lane-number]
        |        +--rw lane-number    -> ../config/lane-number
        |        +--rw config
        |        |  +--rw lane-number?   uint8
        |        +--ro state
        |        |  +--ro lane-number?   uint8
        |        +--rw laser
        |        |  +--rw config
        |        |  |  +--rw channel?          int16
        |        |  |  +--rw grid?             ipi-platform-cmis-types:cmm_cmis_laser_grid_spacing_t
        |        |  |  +--rw fine-tune-freq?   decimal64
        |        |  |  +--rw output-power?     decimal64
        |        |  +--ro state
        |        |     +--ro channel?          int16
        |        |     +--ro grid?             ipi-platform-cmis-types:cmm_cmis_laser_grid_spacing_t
        |        |     +--ro fine-tune-freq?   decimal64
        |        |     +--ro output-power?     decimal64
        |        +--rw thresholds
        |           +--rw threshold* [id]
        |              +--rw id        -> ../config/id
        |              +--rw config
        |              |  +--rw id?             ipi-platform-cmis-types:cmm_ccmis_media_lane_thres_id_t
        |              |  +--rw high-alarm?     decimal64
        |              |  +--rw low-alarm?      decimal64
        |              |  +--rw high-warning?   decimal64
        |              |  +--rw low-warning?    decimal64
        |              +--ro state
        |                 +--ro id?             ipi-platform-cmis-types:cmm_ccmis_media_lane_thres_id_t
        |                 +--ro high-alarm?     decimal64
        |                 +--ro low-alarm?      decimal64
        |                 +--ro high-warning?   decimal64
        |                 +--ro low-warning?    decimal64
        +--rw laser
        |  +--rw config
        |  |  +--rw channel?          int16
        |  |  +--rw grid?             ipi-platform-cmis-types:cmm_cmis_laser_grid_spacing_t
        |  |  +--rw fine-tune-freq?   decimal64
        |  |  +--rw output-power?     decimal64
        |  +--ro state
        |     +--ro channel?          int16
        |     +--ro grid?             ipi-platform-cmis-types:cmm_cmis_laser_grid_spacing_t
        |     +--ro fine-tune-freq?   decimal64
        |     +--ro output-power?     decimal64
        +--rw thresholds
        |  +--rw threshold* [id]
        |     +--rw id        -> ../config/id
        |     +--rw config
        |     |  +--rw id?             ipi-platform-cmis-types:cmm_ccmis_thres_id_t
        |     |  +--rw high-alarm?     decimal64
        |     |  +--rw low-alarm?      decimal64
        |     |  +--rw high-warning?   decimal64
        |     |  +--rw low-warning?    decimal64
        |     +--ro state
        |        +--ro id?             ipi-platform-cmis-types:cmm_ccmis_thres_id_t
        |        +--ro high-alarm?     decimal64
        |        +--ro low-alarm?      decimal64
        |        +--ro high-warning?   decimal64
        |        +--ro low-warning?    decimal64
        +--rw signal-integrity
           +--rw config
           |  +--rw tx-input-equalizer-target?                uint8
           |  +--rw rx-output-equalizer-pre-cursor-target?    uint8
           |  +--rw rx-output-equalizer-post-cursor-target?   uint8
           |  +--rw rx-output-amplitude-target?               uint8
           |  +--rw tx-cdr-bypass?                            empty
           |  +--rw rx-cdr-bypass?                            empty
           +--ro state
              +--ro tx-input-equalizer-target?                uint8
              +--ro rx-output-equalizer-pre-cursor-target?    uint8
              +--ro rx-output-equalizer-post-cursor-target?   uint8
              +--ro rx-output-amplitude-target?               uint8
              +--ro tx-cdr-bypass?                            empty
              +--ro rx-cdr-bypass?                            empty
 
  rpcs:
    +---x tibit-olt-microplug-set-management-vlan-tpid {feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w interface-name    string
    |     +---w vlan-tpid         ipi-platform-transceiver-tibit-types:trans_tibit_cmm_tpid_t
    +---x tibit-olt-microplug-set-management-vlan-id {feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w interface-name    string
    |     +---w vlan-id           uint16
    +---x tibit-olt-microplug-set-ethernet-mac-address {feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w interface-name    string
    |     +---w mac-address       yang:mac-address
    +---x tibit-olt-microplug-set-next-active-firmware-bank {feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w interface-name    string
    |     +---w bank-id           uint8
    +---x tibit-olt-microplug-reboot {feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w interface-name    string
    +---x ddm-clear-transceiver-alarm-all {feature-list:NOT_HAVE_TIBIT}?
    +---x ddm-clear-transceiver-alarm {feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w name    string
    +---x cmm-terminal-debug-ddm-on {feature-list:NOT_HAVE_TIBIT}?
    +---x cmm-terminal-debug-ddm-off {feature-list:NOT_HAVE_TIBIT}?
    +---x cmm-terminal-debug-cmm-on {feature-list:HAVE_CMMD}?
    +---x cmm-terminal-debug-cmm-off {feature-list:HAVE_CMMD}?
    +---x gps-survey-restart {feature-list:HAVE_PTP_HW_OFFLOAD}?
 
  notifications:
    +---n bmc-lower-non-critical-low-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro name?                 string
    |  +--ro lower-non-critical?   decimal64
    |  +--ro threshold?            decimal64
    |  +--ro units?                string
    |  +--ro event-type?           ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-lower-non-critical-high-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro name?                 string
    |  +--ro lower-non-critical?   decimal64
    |  +--ro threshold?            decimal64
    |  +--ro units?                string
    |  +--ro event-type?           ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-lower-critical-low-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro name?             string
    |  +--ro lower-critical?   decimal64
    |  +--ro threshold?        decimal64
    |  +--ro units?            string
    |  +--ro event-type?       ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-lower-critical-high-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro name?             string
    |  +--ro lower-critical?   decimal64
    |  +--ro threshold?        decimal64
    |  +--ro units?            string
    |  +--ro event-type?       ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-lower-non-recoverable-low-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro name?                    string
    |  +--ro lower-non-recoverable?   decimal64
    |  +--ro threshold?               decimal64
    |  +--ro units?                   string
    |  +--ro event-type?              ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-lower-non-recoverable-high-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro name?                    string
    |  +--ro lower-non-recoverable?   decimal64
    |  +--ro threshold?               decimal64
    |  +--ro units?                   string
    |  +--ro event-type?              ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-upper-non-critical-low-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro name?                 string
    |  +--ro upper-non-critical?   decimal64
    |  +--ro threshold?            decimal64
    |  +--ro units?                string
    |  +--ro event-type?           ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-upper-non-critical-high-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro name?                 string
    |  +--ro upper-non-critical?   decimal64
    |  +--ro threshold?            decimal64
    |  +--ro units?                string
    |  +--ro event-type?           ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-upper-critical-low-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro name?             string
    |  +--ro upper-critical?   decimal64
    |  +--ro threshold?        decimal64
    |  +--ro units?            string
    |  +--ro event-type?       ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-upper-critical-high-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro name?             string
    |  +--ro upper-critical?   decimal64
    |  +--ro threshold?        decimal64
    |  +--ro units?            string
    |  +--ro event-type?       ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-upper-non-recoverable-low-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro name?                    string
    |  +--ro upper-non-recoverable?   decimal64
    |  +--ro threshold?               decimal64
    |  +--ro units?                   string
    |  +--ro event-type?              ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-upper-non-recoverable-high-threshold-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro name?                    string
    |  +--ro upper-non-recoverable?   decimal64
    |  +--ro threshold?               decimal64
    |  +--ro units?                   string
    |  +--ro event-type?              ipi-platform-types:cmm_bmc_event_type_t
    +---n bmc-device-state-notification {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro name?                 string
    |  +--ro operational-status?   string
    +---n cpu-load-15min-alert
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro cpu-15min-load-percentage?   decimal64
    |  +--ro cpu-15min-alert-threshold?   uint8
    +---n cpu-load-15min-alert-recovery
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro cpu-15min-load-percentage?   decimal64
    |  +--ro cpu-15min-alert-threshold?   uint8
    +---n cpu-load-5min-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro cpu-5min-load-percentage?   decimal64
    |  +--ro cpu-5min-alert-threshold?   uint8
    +---n cpu-load-5min-alert-recovery
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro cpu-5min-load-percentage?   decimal64
    |  +--ro cpu-5min-alert-threshold?   uint8
    +---n cpu-load-1min-critical
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro cpu-1min-load-percentage?      decimal64
    |  +--ro cpu-1min-critical-threshold?   uint8
    +---n cpu-load-1min-critical-recovery
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro cpu-1min-load-percentage?      decimal64
    |  +--ro cpu-1min-critical-threshold?   uint8
    +---n cpu-load-1min-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro cpu-1min-load-percentage?   decimal64
    |  +--ro cpu-1min-alert-threshold?   uint8
    +---n cpu-load-1min-alert-recovery
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro cpu-1min-load-percentage?   decimal64
    |  +--ro cpu-1min-alert-threshold?   uint8
    +---n storage-usage-rising-alert
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro name?                    string
    |  +--ro used-memory?             uint64
    |  +--ro usage-alert-threshold?   int32
    |  +--ro mount-point?             string
    +---n storage-usage-critical-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro used-memory?                uint64
    |  +--ro usage-critical-threshold?   int32
    |  +--ro mount-point?                string
    +---n storage-usage-recovery-from-alert-level
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro name?                    string
    |  +--ro used-memory?             uint64
    |  +--ro usage-alert-threshold?   int32
    |  +--ro mount-point?             string
    +---n storage-usage-recovery-from-critical-level
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro used-memory?                uint64
    |  +--ro usage-critical-threshold?   int32
    |  +--ro mount-point?                string
    +---n storage-remaining-life-rising-alert
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro remaining-life?                int32
    |  +--ro remain-life-alert-threshold?   int32
    +---n storage-remaining-life-rising-critical
    |  +--ro severity?                         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                       cml-data-types:cml_notif_class_t
    |  +--ro name?                             string
    |  +--ro remaining-life?                   int32
    |  +--ro remain-life-critical-threshold?   int32
    +---n storage-available-reserved-space-rising-alert
    |  +--ro severity?                                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                                 cml-data-types:cml_notif_class_t
    |  +--ro name?                                       string
    |  +--ro available-reserved-space?                   int32
    |  +--ro available-reserved-space-alert-threshold?   int32
    +---n storage-available-reserved-space-rising-critical
    |  +--ro severity?                                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                                    cml-data-types:cml_notif_class_t
    |  +--ro name?                                          string
    |  +--ro available-reserved-space?                      int32
    |  +--ro available-reserved-space-critical-threshold?   int32
    +---n storage-reallocated-sector-count-rising-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro reallocated-sector-count?   int32
    +---n storage-uncorrectable-sector-count-rising-critical
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro uncorrectable-sector-count?   int32
    +---n storage-harddisk-monitoring-read-alert
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro name?             string
    |  +--ro read-average?     int32
    |  +--ro read-threshold?   int32
    +---n storage-harddisk-recovery-from-read-alert-level
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro name?             string
    |  +--ro read-average?     int32
    |  +--ro read-threshold?   int32
    +---n storage-harddisk-monitoring-write-alert
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro name?              string
    |  +--ro write-average?     int32
    |  +--ro write-threshold?   int32
    +---n storage-harddisk-recovery-from-write-alert-level
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro name?              string
    |  +--ro write-average?     int32
    |  +--ro write-threshold?   int32
    +---n storage-storage-status-alert
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro name?             string
    |  +--ro storage-status?   ipi-platform-types:cml_cmm_storage_status_t
    +---n storage-storage-status-critical
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro name?             string
    |  +--ro storage-status?   ipi-platform-types:cml_cmm_storage_status_t
    +---n ram-usage-rising-critical
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro used-memory?                uint64
    |  +--ro usage-critical-threshold?   uint32
    +---n ram-usage-rising-alert
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro name?                    string
    |  +--ro used-memory?             uint64
    |  +--ro usage-alert-threshold?   uint32
    +---n ram-usage-recovery-from-critical-level
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro used-memory?                uint64
    |  +--ro usage-critical-threshold?   uint32
    +---n ram-usage-recovery-from-alert-level
    |  +--ro severity?                cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?              cml-data-types:cml_notif_class_t
    |  +--ro name?                    string
    |  +--ro used-memory?             uint64
    |  +--ro usage-alert-threshold?   uint32
    +---n transceiver-inserted {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?               cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?             cml-data-types:cml_notif_class_t
    |  +--ro name?                   string
    |  +--ro port-no?                uint8
    |  +--ro type?                   ipi-platform-transceiver-types:ddm_cmm_trans_type_t
    |  +--ro vendor-name?            string
    |  +--ro vendor-serial-number?   string
    |  +--ro connector-type?         ipi-platform-transceiver-types:ddm_cmm_trans_connector_type_t
    +---n transceiver-removed {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?               cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?             cml-data-types:cml_notif_class_t
    |  +--ro name?                   string
    |  +--ro port-no?                uint8
    |  +--ro type?                   ipi-platform-transceiver-types:ddm_cmm_trans_type_t
    |  +--ro vendor-name?            string
    |  +--ro vendor-serial-number?   string
    |  +--ro connector-type?         ipi-platform-transceiver-types:ddm_cmm_trans_connector_type_t
    +---n faulty-transceiver-inserted {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro port-no?      uint8
    |  +--ro type?         ipi-platform-transceiver-types:ddm_cmm_trans_type_t
    +---n incompatible-transceiver-inserted {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro port-no?      uint8
    +---n incompatible-transceiver-removed {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro port-no?      uint8
    +---n frequency-error-high-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                                 cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                               cml-data-types:cml_notif_class_t
    |  +--ro name?                                     string
    |  +--ro frequency-error?                          decimal64
    |  +--ro frequency-error-critical-min-threshold?   decimal64
    |  +--ro frequency-error-critical-max-threshold?   decimal64
    +---n frequency-error-low-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                                 cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                               cml-data-types:cml_notif_class_t
    |  +--ro name?                                     string
    |  +--ro frequency-error?                          decimal64
    |  +--ro frequency-error-critical-min-threshold?   decimal64
    |  +--ro frequency-error-critical-max-threshold?   decimal64
    +---n frequency-error-high-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                              cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                            cml-data-types:cml_notif_class_t
    |  +--ro name?                                  string
    |  +--ro frequency-error?                       decimal64
    |  +--ro frequency-error-alert-min-threshold?   decimal64
    |  +--ro frequency-error-alert-max-threshold?   decimal64
    +---n frequency-error-low-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                              cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                            cml-data-types:cml_notif_class_t
    |  +--ro name?                                  string
    |  +--ro frequency-error?                       decimal64
    |  +--ro frequency-error-alert-min-threshold?   decimal64
    |  +--ro frequency-error-alert-max-threshold?   decimal64
    +---n frequency-error-recovery {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro name?              string
    |  +--ro frequency-error?   decimal64
    +---n wavelength-error-high-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                                cml-data-types:cml_notif_class_t
    |  +--ro name?                                      string
    |  +--ro wavelength-error?                          decimal64
    |  +--ro wavelength-error-critical-min-threshold?   decimal64
    |  +--ro wavelength-error-critical-max-threshold?   decimal64
    +---n wavelength-error-low-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                                cml-data-types:cml_notif_class_t
    |  +--ro name?                                      string
    |  +--ro wavelength-error?                          decimal64
    |  +--ro wavelength-error-critical-min-threshold?   decimal64
    |  +--ro wavelength-error-critical-max-threshold?   decimal64
    +---n wavelength-error-high-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                               cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                             cml-data-types:cml_notif_class_t
    |  +--ro name?                                   string
    |  +--ro wavelength-error?                       decimal64
    |  +--ro wavelength-error-alert-min-threshold?   decimal64
    |  +--ro wavelength-error-alert-max-threshold?   decimal64
    +---n wavelength-error-low-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                               cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                             cml-data-types:cml_notif_class_t
    |  +--ro name?                                   string
    |  +--ro wavelength-error?                       decimal64
    |  +--ro wavelength-error-alert-min-threshold?   decimal64
    |  +--ro wavelength-error-alert-max-threshold?   decimal64
    +---n wavelength-error-recovery {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?         cml-data-types:cml_notif_class_t
    |  +--ro name?               string
    |  +--ro wavelength-error?   decimal64
    +---n thermoelectric-cooler-fault-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro thermoelectric-cooler-fault?   boolean
    +---n thermoelectric-cooler-fault-recovery {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro thermoelectric-cooler-fault?   boolean
    +---n rx-loss-of-signal {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro index?        uint8
    |  +--ro name?         string
    +---n rx-loss-of-signal-recovery {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro index?        uint8
    |  +--ro name?         string
    +---n input-power-error-high-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                           cml-data-types:cml_notif_class_t
    |  +--ro index?                                uint8
    |  +--ro name?                                 string
    |  +--ro input-power?                          decimal64
    |  +--ro input-power-critical-min-threshold?   decimal64
    |  +--ro input-power-critical-max-threshold?   decimal64
    +---n input-power-error-low-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                           cml-data-types:cml_notif_class_t
    |  +--ro index?                                uint8
    |  +--ro name?                                 string
    |  +--ro input-power?                          decimal64
    |  +--ro input-power-critical-min-threshold?   decimal64
    |  +--ro input-power-critical-max-threshold?   decimal64
    +---n input-power-error-high-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                        cml-data-types:cml_notif_class_t
    |  +--ro index?                             uint8
    |  +--ro name?                              string
    |  +--ro input-power?                       decimal64
    |  +--ro input-power-alert-min-threshold?   decimal64
    |  +--ro input-power-alert-max-threshold?   decimal64
    +---n input-power-error-low-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                        cml-data-types:cml_notif_class_t
    |  +--ro index?                             uint8
    |  +--ro name?                              string
    |  +--ro input-power?                       decimal64
    |  +--ro input-power-alert-min-threshold?   decimal64
    |  +--ro input-power-alert-max-threshold?   decimal64
    +---n input-power-error-recovery {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?    cml-data-types:cml_notif_class_t
    |  +--ro index?         uint8
    |  +--ro name?          string
    |  +--ro input-power?   decimal64
    +---n output-power-error-high-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                              cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                            cml-data-types:cml_notif_class_t
    |  +--ro index?                                 uint8
    |  +--ro name?                                  string
    |  +--ro output-power?                          decimal64
    |  +--ro output-power-critical-min-threshold?   decimal64
    |  +--ro output-power-critical-max-threshold?   decimal64
    +---n output-power-error-low-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                              cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                            cml-data-types:cml_notif_class_t
    |  +--ro index?                                 uint8
    |  +--ro name?                                  string
    |  +--ro output-power?                          decimal64
    |  +--ro output-power-critical-min-threshold?   decimal64
    |  +--ro output-power-critical-max-threshold?   decimal64
    +---n output-power-error-high-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                         cml-data-types:cml_notif_class_t
    |  +--ro index?                              uint8
    |  +--ro name?                               string
    |  +--ro output-power?                       decimal64
    |  +--ro output-power-alert-min-threshold?   decimal64
    |  +--ro output-power-alert-max-threshold?   decimal64
    +---n output-power-error-low-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                           cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                         cml-data-types:cml_notif_class_t
    |  +--ro index?                              uint8
    |  +--ro name?                               string
    |  +--ro output-power?                       decimal64
    |  +--ro output-power-alert-min-threshold?   decimal64
    |  +--ro output-power-alert-max-threshold?   decimal64
    +---n output-power-error-recovery {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?     cml-data-types:cml_notif_class_t
    |  +--ro index?          uint8
    |  +--ro name?           string
    |  +--ro output-power?   decimal64
    +---n laser-bias-current-error-high-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                                  cml-data-types:cml_notif_class_t
    |  +--ro index?                                       uint8
    |  +--ro name?                                        string
    |  +--ro laser-bias-current?                          decimal64
    |  +--ro laser-bias-current-critical-min-threshold?   decimal64
    |  +--ro laser-bias-current-critical-max-threshold?   decimal64
    +---n laser-bias-current-error-low-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                                  cml-data-types:cml_notif_class_t
    |  +--ro index?                                       uint8
    |  +--ro name?                                        string
    |  +--ro laser-bias-current?                          decimal64
    |  +--ro laser-bias-current-critical-min-threshold?   decimal64
    |  +--ro laser-bias-current-critical-max-threshold?   decimal64
    +---n laser-bias-current-error-high-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                                 cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                               cml-data-types:cml_notif_class_t
    |  +--ro index?                                    uint8
    |  +--ro name?                                     string
    |  +--ro laser-bias-current?                       decimal64
    |  +--ro laser-bias-current-alert-min-threshold?   decimal64
    |  +--ro laser-bias-current-alert-max-threshold?   decimal64
    +---n laser-bias-current-error-low-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                                 cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                               cml-data-types:cml_notif_class_t
    |  +--ro index?                                    uint8
    |  +--ro name?                                     string
    |  +--ro laser-bias-current?                       decimal64
    |  +--ro laser-bias-current-alert-min-threshold?   decimal64
    |  +--ro laser-bias-current-alert-max-threshold?   decimal64
    +---n laser-bias-current-error-recovery {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro index?                uint8
    |  +--ro name?                 string
    |  +--ro laser-bias-current?   decimal64
    +---n transceiver-temperature-error-high-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                           cml-data-types:cml_notif_class_t
    |  +--ro name?                                 string
    |  +--ro transceiver-temperature?              decimal64
    |  +--ro temperature-critical-min-threshold?   decimal64
    |  +--ro temperature-critical-max-threshold?   decimal64
    +---n transceiver-temperature-error-low-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                           cml-data-types:cml_notif_class_t
    |  +--ro name?                                 string
    |  +--ro transceiver-temperature?              decimal64
    |  +--ro temperature-critical-min-threshold?   decimal64
    |  +--ro temperature-critical-max-threshold?   decimal64
    +---n transceiver-temperature-error-high-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                        cml-data-types:cml_notif_class_t
    |  +--ro name?                              string
    |  +--ro transceiver-temperature?           decimal64
    |  +--ro temperature-alert-min-threshold?   decimal64
    |  +--ro temperature-alert-max-threshold?   decimal64
    +---n transceiver-temperature-error-low-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                        cml-data-types:cml_notif_class_t
    |  +--ro name?                              string
    |  +--ro transceiver-temperature?           decimal64
    |  +--ro temperature-alert-min-threshold?   decimal64
    |  +--ro temperature-alert-max-threshold?   decimal64
    +---n transceiver-temperature-error-recovery {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro transceiver-temperature?   decimal64
    +---n transceiver-voltage-error-high-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                       cml-data-types:cml_notif_class_t
    |  +--ro name?                             string
    |  +--ro transceiver-voltage?              decimal64
    |  +--ro voltage-critical-min-threshold?   decimal64
    |  +--ro voltage-critical-max-threshold?   decimal64
    +---n transceiver-voltage-error-low-critical {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                       cml-data-types:cml_notif_class_t
    |  +--ro name?                             string
    |  +--ro transceiver-voltage?              decimal64
    |  +--ro voltage-critical-min-threshold?   decimal64
    |  +--ro voltage-critical-max-threshold?   decimal64
    +---n transceiver-voltage-error-high-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro transceiver-voltage?           decimal64
    |  +--ro voltage-alert-min-threshold?   decimal64
    |  +--ro voltage-alert-max-threshold?   decimal64
    +---n transceiver-voltage-error-low-alert {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro transceiver-voltage?           decimal64
    |  +--ro voltage-alert-min-threshold?   decimal64
    |  +--ro voltage-alert-max-threshold?   decimal64
    +---n transceiver-voltage-error-recovery {feature-list:NOT_HAVE_TIBIT}?
    |  +--ro severity?              cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?            cml-data-types:cml_notif_class_t
    |  +--ro name?                  string
    |  +--ro transceiver-voltage?   decimal64
    +---n temperature-high
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro name?              string
    |  +--ro alarm-status?      boolean
    |  +--ro alarm-threshold?   decimal64
    |  +--ro instant?           decimal64
    +---n temperature-low
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro name?              string
    |  +--ro alarm-status?      boolean
    |  +--ro alarm-threshold?   decimal64
    |  +--ro instant?           decimal64
    +---n power-supply-inserted
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    +---n power-supply-removed
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    +---n power-supply-ac-failed
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    +---n power-supply-ac-recovery
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    +---n power-supply-12v-failed
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    +---n power-supply-12v-recovery
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    +---n psu-vin-low-alert
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-voltage?             decimal64
    |  +--ro vin-alert-threshold-min?   decimal64
    |  +--ro vin-alert-threshold-max?   decimal64
    +---n psu-vin-high-alert
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-voltage?             decimal64
    |  +--ro vin-alert-threshold-min?   decimal64
    |  +--ro vin-alert-threshold-max?   decimal64
    +---n psu-vin-low-critical
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-voltage?                decimal64
    |  +--ro vin-critical-threshold-min?   decimal64
    |  +--ro vin-critical-threshold-max?   decimal64
    +---n psu-vin-high-critical
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-voltage?                decimal64
    |  +--ro vin-critical-threshold-min?   decimal64
    |  +--ro vin-critical-threshold-max?   decimal64
    +---n psu-vin-low-alert-recovery
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-voltage?             decimal64
    |  +--ro vin-alert-threshold-min?   decimal64
    |  +--ro vin-alert-threshold-max?   decimal64
    +---n psu-vin-high-alert-recovery
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-voltage?             decimal64
    |  +--ro vin-alert-threshold-min?   decimal64
    |  +--ro vin-alert-threshold-max?   decimal64
    +---n psu-vin-low-critical-recovery
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-voltage?                decimal64
    |  +--ro vin-critical-threshold-min?   decimal64
    |  +--ro vin-critical-threshold-max?   decimal64
    +---n psu-vin-high-critical-recovery
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-voltage?                decimal64
    |  +--ro vin-critical-threshold-min?   decimal64
    |  +--ro vin-critical-threshold-max?   decimal64
    +---n psu-vout-low-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro output-voltage?             decimal64
    |  +--ro vout-alert-threshold-min?   decimal64
    |  +--ro vout-alert-threshold-max?   decimal64
    +---n psu-vout-high-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro output-voltage?             decimal64
    |  +--ro vout-alert-threshold-min?   decimal64
    |  +--ro vout-alert-threshold-max?   decimal64
    +---n psu-vout-low-critical
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro output-voltage?                decimal64
    |  +--ro vout-critical-threshold-min?   decimal64
    |  +--ro vout-critical-threshold-max?   decimal64
    +---n psu-vout-high-critical
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro output-voltage?                decimal64
    |  +--ro vout-critical-threshold-min?   decimal64
    |  +--ro vout-critical-threshold-max?   decimal64
    +---n psu-vout-low-alert-recovery
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro output-voltage?             decimal64
    |  +--ro vout-alert-threshold-min?   decimal64
    |  +--ro vout-alert-threshold-max?   decimal64
    +---n psu-vout-high-alert-recovery
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro output-voltage?             decimal64
    |  +--ro vout-alert-threshold-min?   decimal64
    |  +--ro vout-alert-threshold-max?   decimal64
    +---n psu-vout-low-critical-recovery
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro output-voltage?                decimal64
    |  +--ro vout-critical-threshold-min?   decimal64
    |  +--ro vout-critical-threshold-max?   decimal64
    +---n psu-vout-high-critical-recovery
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro output-voltage?                decimal64
    |  +--ro vout-critical-threshold-min?   decimal64
    |  +--ro vout-critical-threshold-max?   decimal64
    +---n psu-pin-low-alert
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-power?               decimal64
    |  +--ro pin-alert-threshold-min?   decimal64
    |  +--ro pin-alert-threshold-max?   decimal64
    +---n psu-pin-high-alert
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-power?               decimal64
    |  +--ro pin-alert-threshold-min?   decimal64
    |  +--ro pin-alert-threshold-max?   decimal64
    +---n psu-pin-low-critical
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-power?                  decimal64
    |  +--ro pin-critical-threshold-min?   decimal64
    |  +--ro pin-critical-threshold-max?   decimal64
    +---n psu-pin-high-critical
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-power?                  decimal64
    |  +--ro pin-critical-threshold-min?   decimal64
    |  +--ro pin-critical-threshold-max?   decimal64
    +---n psu-pin-low-alert-recovery
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-power?               decimal64
    |  +--ro pin-alert-threshold-min?   decimal64
    |  +--ro pin-alert-threshold-max?   decimal64
    +---n psu-pin-high-alert-recovery
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-power?               decimal64
    |  +--ro pin-alert-threshold-min?   decimal64
    |  +--ro pin-alert-threshold-max?   decimal64
    +---n psu-pin-low-critical-recovery
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-power?                  decimal64
    |  +--ro pin-critical-threshold-min?   decimal64
    |  +--ro pin-critical-threshold-max?   decimal64
    +---n psu-pin-high-critical-recovery
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-power?                  decimal64
    |  +--ro pin-critical-threshold-min?   decimal64
    |  +--ro pin-critical-threshold-max?   decimal64
    +---n psu-pout-low-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro power-consumption?          decimal64
    |  +--ro pout-alert-threshold-min?   decimal64
    |  +--ro pout-alert-threshold-max?   decimal64
    +---n psu-pout-high-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro power-consumption?          decimal64
    |  +--ro pout-alert-threshold-min?   decimal64
    |  +--ro pout-alert-threshold-max?   decimal64
    +---n psu-pout-low-critical
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro power-consumption?             decimal64
    |  +--ro pout-critical-threshold-min?   decimal64
    |  +--ro pout-critical-threshold-max?   decimal64
    +---n psu-pout-high-critical
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro power-consumption?             decimal64
    |  +--ro pout-critical-threshold-min?   decimal64
    |  +--ro pout-critical-threshold-max?   decimal64
    +---n psu-pout-low-alert-recovery
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro power-consumption?          decimal64
    |  +--ro pout-alert-threshold-min?   decimal64
    |  +--ro pout-alert-threshold-max?   decimal64
    +---n psu-pout-high-alert-recovery
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro power-consumption?          decimal64
    |  +--ro pout-alert-threshold-min?   decimal64
    |  +--ro pout-alert-threshold-max?   decimal64
    +---n psu-pout-low-critical-recovery
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro power-consumption?             decimal64
    |  +--ro pout-critical-threshold-min?   decimal64
    |  +--ro pout-critical-threshold-max?   decimal64
    +---n psu-pout-high-critical-recovery
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro power-consumption?             decimal64
    |  +--ro pout-critical-threshold-min?   decimal64
    |  +--ro pout-critical-threshold-max?   decimal64
    +---n psu-iout-low-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro output-current?             decimal64
    |  +--ro iout-alert-threshold-min?   decimal64
    |  +--ro iout-alert-threshold-max?   decimal64
    +---n psu-iout-high-alert
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro output-current?             decimal64
    |  +--ro iout-alert-threshold-min?   decimal64
    |  +--ro iout-alert-threshold-max?   decimal64
    +---n psu-iout-low-critical
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro output-current?                decimal64
    |  +--ro iout-critical-threshold-min?   decimal64
    |  +--ro iout-critical-threshold-max?   decimal64
    +---n psu-iout-high-critical
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro output-current?                decimal64
    |  +--ro iout-critical-threshold-min?   decimal64
    |  +--ro iout-critical-threshold-max?   decimal64
    +---n psu-iout-low-alert-recovery
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro output-current?             decimal64
    |  +--ro iout-alert-threshold-min?   decimal64
    |  +--ro iout-alert-threshold-max?   decimal64
    +---n psu-iout-high-alert-recovery
    |  +--ro severity?                   cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                 cml-data-types:cml_notif_class_t
    |  +--ro name?                       string
    |  +--ro output-current?             decimal64
    |  +--ro iout-alert-threshold-min?   decimal64
    |  +--ro iout-alert-threshold-max?   decimal64
    +---n psu-iout-low-critical-recovery
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro output-current?                decimal64
    |  +--ro iout-critical-threshold-min?   decimal64
    |  +--ro iout-critical-threshold-max?   decimal64
    +---n psu-iout-high-critical-recovery
    |  +--ro severity?                      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                    cml-data-types:cml_notif_class_t
    |  +--ro name?                          string
    |  +--ro output-current?                decimal64
    |  +--ro iout-critical-threshold-min?   decimal64
    |  +--ro iout-critical-threshold-max?   decimal64
    +---n psu-iin-low-alert
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-current?             decimal64
    |  +--ro iin-alert-threshold-min?   decimal64
    |  +--ro iin-alert-threshold-max?   decimal64
    +---n psu-iin-high-alert
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-current?             decimal64
    |  +--ro iin-alert-threshold-min?   decimal64
    |  +--ro iin-alert-threshold-max?   decimal64
    +---n psu-iin-low-critical
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-current?                decimal64
    |  +--ro iin-critical-threshold-min?   decimal64
    |  +--ro iin-critical-threshold-max?   decimal64
    +---n psu-iin-high-critical
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-current?                decimal64
    |  +--ro iin-critical-threshold-min?   decimal64
    |  +--ro iin-critical-threshold-max?   decimal64
    +---n psu-iin-low-alert-recovery
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-current?             decimal64
    |  +--ro iin-alert-threshold-min?   decimal64
    |  +--ro iin-alert-threshold-max?   decimal64
    +---n psu-iin-high-alert-recovery
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro input-current?             decimal64
    |  +--ro iin-alert-threshold-min?   decimal64
    |  +--ro iin-alert-threshold-max?   decimal64
    +---n psu-iin-low-critical-recovery
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-current?                decimal64
    |  +--ro iin-critical-threshold-min?   decimal64
    |  +--ro iin-critical-threshold-max?   decimal64
    +---n psu-iin-high-critical-recovery
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro input-current?                decimal64
    |  +--ro iin-critical-threshold-min?   decimal64
    |  +--ro iin-critical-threshold-max?   decimal64
    +---n psu-temp1-low-alert
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor1?         decimal64
    |  +--ro temp1-alert-threshold-min?   decimal64
    |  +--ro temp1-alert-threshold-max?   decimal64
    +---n psu-temp1-high-alert
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor1?         decimal64
    |  +--ro temp1-alert-threshold-min?   decimal64
    |  +--ro temp1-alert-threshold-max?   decimal64
    +---n psu-temp1-low-critical
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor1?            decimal64
    |  +--ro temp1-critical-threshold-min?   decimal64
    |  +--ro temp1-critical-threshold-max?   decimal64
    +---n psu-temp1-high-critical
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor1?            decimal64
    |  +--ro temp1-critical-threshold-min?   decimal64
    |  +--ro temp1-critical-threshold-max?   decimal64
    +---n psu-temp1-low-alert-recovery
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor1?         decimal64
    |  +--ro temp1-alert-threshold-min?   decimal64
    |  +--ro temp1-alert-threshold-max?   decimal64
    +---n psu-temp1-high-alert-recovery
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor1?         decimal64
    |  +--ro temp1-alert-threshold-min?   decimal64
    |  +--ro temp1-alert-threshold-max?   decimal64
    +---n psu-temp1-low-critical-recovery
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor1?            decimal64
    |  +--ro temp1-critical-threshold-min?   decimal64
    |  +--ro temp1-critical-threshold-max?   decimal64
    +---n psu-temp1-high-critical-recovery
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor1?            decimal64
    |  +--ro temp1-critical-threshold-min?   decimal64
    |  +--ro temp1-critical-threshold-max?   decimal64
    +---n psu-temp2-low-alert
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor2?         decimal64
    |  +--ro temp2-alert-threshold-min?   decimal64
    |  +--ro temp2-alert-threshold-max?   decimal64
    +---n psu-temp2-high-alert
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor2?         decimal64
    |  +--ro temp2-alert-threshold-min?   decimal64
    |  +--ro temp2-alert-threshold-max?   decimal64
    +---n psu-temp2-low-critical
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor2?            decimal64
    |  +--ro temp2-critical-threshold-min?   decimal64
    |  +--ro temp2-critical-threshold-max?   decimal64
    +---n psu-temp2-high-critical
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor2?            decimal64
    |  +--ro temp2-critical-threshold-min?   decimal64
    |  +--ro temp2-critical-threshold-max?   decimal64
    +---n psu-temp2-low-alert-recovery
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor2?         decimal64
    |  +--ro temp2-alert-threshold-min?   decimal64
    |  +--ro temp2-alert-threshold-max?   decimal64
    +---n psu-temp2-high-alert-recovery
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor2?         decimal64
    |  +--ro temp2-alert-threshold-min?   decimal64
    |  +--ro temp2-alert-threshold-max?   decimal64
    +---n psu-temp2-low-critical-recovery
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor2?            decimal64
    |  +--ro temp2-critical-threshold-min?   decimal64
    |  +--ro temp2-critical-threshold-max?   decimal64
    +---n psu-temp2-high-critical-recovery
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor2?            decimal64
    |  +--ro temp2-critical-threshold-min?   decimal64
    |  +--ro temp2-critical-threshold-max?   decimal64
    +---n psu-temp3-low-alert
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor3?         decimal64
    |  +--ro temp3-alert-threshold-min?   decimal64
    |  +--ro temp3-alert-threshold-max?   decimal64
    +---n psu-temp3-high-alert
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor3?         decimal64
    |  +--ro temp3-alert-threshold-min?   decimal64
    |  +--ro temp3-alert-threshold-max?   decimal64
    +---n psu-temp3-low-critical
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor3?            decimal64
    |  +--ro temp3-critical-threshold-min?   decimal64
    |  +--ro temp3-critical-threshold-max?   decimal64
    +---n psu-temp3-high-critical
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor3?            decimal64
    |  +--ro temp3-critical-threshold-min?   decimal64
    |  +--ro temp3-critical-threshold-max?   decimal64
    +---n psu-temp3-low-alert-recovery
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor3?         decimal64
    |  +--ro temp3-alert-threshold-min?   decimal64
    |  +--ro temp3-alert-threshold-max?   decimal64
    +---n psu-temp3-high-alert-recovery
    |  +--ro severity?                    cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                  cml-data-types:cml_notif_class_t
    |  +--ro name?                        string
    |  +--ro temperature-sensor3?         decimal64
    |  +--ro temp3-alert-threshold-min?   decimal64
    |  +--ro temp3-alert-threshold-max?   decimal64
    +---n psu-temp3-low-critical-recovery
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor3?            decimal64
    |  +--ro temp3-critical-threshold-min?   decimal64
    |  +--ro temp3-critical-threshold-max?   decimal64
    +---n psu-temp3-high-critical-recovery
    |  +--ro severity?                       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                     cml-data-types:cml_notif_class_t
    |  +--ro name?                           string
    |  +--ro temperature-sensor3?            decimal64
    |  +--ro temp3-critical-threshold-min?   decimal64
    |  +--ro temp3-critical-threshold-max?   decimal64
    +---n fan-status-alarm
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro fan-index?    uint8
    |  +--ro fan-status?   cml_cmm_fan_status_t
    +---n fan-status-alarm-recovery
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro fan-index?    uint8
    |  +--ro fan-status?   cml_cmm_fan_status_t
    +---n fan-rpm-max-alert
    |  +--ro severity?      cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?    cml-data-types:cml_notif_class_t
    |  +--ro name?          string
    |  +--ro maximum-rpm?   uint32
    +---n fan-rpm-decreased-notify
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro rpm?          uint32
    +---n fan-rpm-increased-notify
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro rpm?          uint32
    +---n fan-tray-inserted
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    +---n fan-tray-removed
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    +---n hardware-tcam-util-warning-notification {feature-list:HAVE_BROADCOM}?
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro group-id?          uint32
    |  +--ro group-name?        cml-data-types:cml_line_t
    |  +--ro used-percentage?   int32
    |  +--ro free-entries?      int32
    +---n hardware-tcam-util-recovery-warning-notification {feature-list:HAVE_BROADCOM}?
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro group-id?          uint32
    |  +--ro group-name?        cml-data-types:cml_line_t
    |  +--ro used-percentage?   int32
    |  +--ro free-entries?      int32
    +---n hardware-tcam-util-critical-notification {feature-list:HAVE_BROADCOM}?
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro group-id?          uint32
    |  +--ro group-name?        cml-data-types:cml_line_t
    |  +--ro used-percentage?   int32
    |  +--ro free-entries?      int32
    +---n hardware-tcam-util-recovery-critical-notification {feature-list:HAVE_BROADCOM}?
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro group-id?          uint32
    |  +--ro group-name?        cml-data-types:cml_line_t
    |  +--ro used-percentage?   int32
    |  +--ro free-entries?      int32
    +---n loss-of-input-clock
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro name?                         string
    |  +--ro loss-of-input-clock-status?   uint8
    +---n usb-over-current
    |  +--ro severity?                  cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                cml-data-types:cml_notif_class_t
    |  +--ro name?                      string
    |  +--ro usb-over-current-status?   uint8
    +---n cmis-module-monitor-alarm-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-cmis-types:cmm_cmis_module_monitor_id_t
    |  +--ro alarm-type?          ipi-platform-cmis-types:cmm_cmis_threshold_alarm_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n cmis-module-monitor-recovery-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-cmis-types:cmm_cmis_module_monitor_id_t
    |  +--ro alarm-type?          ipi-platform-cmis-types:cmm_cmis_threshold_alarm_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n cmis-module-host-monitor-alarm-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro number?              uint8
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-cmis-types:cmm_cmis_host_monitor_id_t
    |  +--ro alarm-type?          ipi-platform-cmis-types:cmm_cmis_threshold_alarm_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n cmis-module-host-monitor-recovery-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro number?              uint8
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-cmis-types:cmm_cmis_host_monitor_id_t
    |  +--ro alarm-type?          ipi-platform-cmis-types:cmm_cmis_threshold_alarm_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n cmis-module-host-flag-alarm-notification
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro number?       uint8
    |  +--ro name?         string
    |  +--ro alarm-id?     ipi-platform-cmis-types:cmm_cmis_host_flag_id_t
    +---n cmis-module-host-flag-recovery-notification
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro number?       uint8
    |  +--ro name?         string
    |  +--ro alarm-id?     ipi-platform-cmis-types:cmm_cmis_host_flag_id_t
    +---n cmis-module-media-monitor-alarm-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro number?              uint8
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-cmis-types:cmm_cmis_media_monitor_id_t
    |  +--ro alarm-type?          ipi-platform-cmis-types:cmm_cmis_threshold_alarm_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n cmis-module-media-monitor-recovery-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro number?              uint8
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-cmis-types:cmm_cmis_media_monitor_id_t
    |  +--ro alarm-type?          ipi-platform-cmis-types:cmm_cmis_threshold_alarm_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n cmis-module-media-flag-alarm-notification
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro number?       uint8
    |  +--ro name?         string
    |  +--ro alarm-id?     ipi-platform-cmis-types:cmm_cmis_media_flag_id_t
    +---n cmis-module-media-flag-recovery-notification
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro number?       uint8
    |  +--ro name?         string
    |  +--ro alarm-id?     ipi-platform-cmis-types:cmm_cmis_media_flag_id_t
    +---n edfa-alarm-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro port?                uint8
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-transceiver-types:cmm_edfa_ddm_monitor_id_t
    |  +--ro alarm-type?          ipi-platform-transceiver-types:cmm_ddm_threshold_alarm_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n edfa-alarm-recovery-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro port?                uint8
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-transceiver-types:cmm_edfa_ddm_monitor_id_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n smart-sfp-ddm-alarm-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro port?                uint8
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-transceiver-types:cmm_smart_sfp_ddm_monitor_id_t
    |  +--ro alarm-type?          ipi-platform-transceiver-types:cmm_ddm_threshold_alarm_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n smart-sfp-ddm-alarm-recovery-notification
    |  +--ro severity?            cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?          cml-data-types:cml_notif_class_t
    |  +--ro port?                uint8
    |  +--ro name?                string
    |  +--ro alarm-id?            ipi-platform-transceiver-types:cmm_smart_sfp_ddm_monitor_id_t
    |  +--ro current-value?       decimal64
    |  +--ro threshold-minimum?   decimal64
    |  +--ro threshold-maximum?   decimal64
    +---n smart-sfp-descrete-alarm-notification
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro port?             uint8
    |  +--ro name?             string
    |  +--ro alarm-id?         ipi-platform-transceiver-types:cmm_smart_sfp_protocol_alarm_id_t
    |  +--ro current-status?   ipi-platform-transceiver-types:cmm_smart_sfp_protocol_status_t
    +---n smart-sfp-descrete-alarm-recovery-notification
       +--ro severity?         cml-data-types:cml_notif_severity_t
       +--ro eventClass?       cml-data-types:cml_notif_class_t
       +--ro port?             uint8
       +--ro name?             string
       +--ro alarm-id?         ipi-platform-transceiver-types:cmm_smart_sfp_protocol_alarm_id_t
       +--ro current-status?   ipi-platform-transceiver-types:cmm_smart_sfp_protocol_status_t
 
 
 
module: ipi-port-breakout
  +--rw port-breakout
     +--rw breakouts
     |  +--rw breakout* [interface]
     |     +--rw interface    -> ../config/interface
     |     +--rw config
     |     |  +--rw interface?   string
     |     |  +--rw mode         ipi-port-breakout-types:port_breakout_mode_t
     |     |  +--rw serdes?      ipi-port-breakout-types:port_breakout_serdes_type_t
     |     +--ro state
     |        +--ro interface?   string
     |        +--ro mode         ipi-port-breakout-types:port_breakout_mode_t
     |        +--ro serdes?      ipi-port-breakout-types:port_breakout_serdes_type_t
     |        +--ro block?       uint8
     +--rw groups-speed
     +--rw interfaces
        +--rw interface* [name]
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?   -> /ipi-interface:interfaces/interface/name
           |  +--rw mode?   ipi-port-breakout-types:port_breakout_if_mode_t
           +--ro state
              +--ro name?   -> /ipi-interface:interfaces/interface/name
              +--ro mode?   ipi-port-breakout-types:port_breakout_if_mode_t
 
 
module: ipi-port-mirror
  +--rw port-mirror
     +--rw sessions
     |  +--rw session* [id] {feature-list:HAVE_ADVANCE_MIRROR}?
     |     +--rw id                   -> ../config/id
     |     +--rw config
     |     |  +--rw id?            uint32
     |     |  +--rw type           ipi-port-mirror-types:pmirror_sess_type_t
     |     |  +--rw enabled?       empty
     |     |  +--rw description?   cml-data-types:cml_line_t
     |     |  +--rw source-vlan?   cml-data-types:cml_range_t
     |     +--ro state
     |     |  +--ro counters
     |     |  |  +--ro filter-count?      yang:counter32
     |     |  |  +--ro tx-source-count?   yang:counter32
     |     |  +--ro id?            uint32
     |     |  +--ro type           ipi-port-mirror-types:pmirror_sess_type_t
     |     |  +--ro enabled?       empty
     |     |  +--ro description?   cml-data-types:cml_line_t
     |     |  +--ro source-vlan?   cml-data-types:cml_range_t
     |     +--rw destination
     |     |  +--rw local
     |     |  |  +--rw config
     |     |  |  |  +--rw interface-name?   -> /ipi-interface:interfaces/interface/name
     |     |  |  +--ro state
     |     |  |     +--ro interface-name?   -> /ipi-interface:interfaces/interface/name
     |     |  +--rw remote
     |     |     +--rw config!
     |     |     |  +--rw vlan-id                     uint16
     |     |     |  +--rw reflector-interface-name    -> /ipi-interface:interfaces/interface/name
     |     |     +--ro state
     |     |        +--ro vlan-id                     uint16
     |     |        +--ro reflector-interface-name    -> /ipi-interface:interfaces/interface/name
     |     +--rw source-interfaces
     |     |  +--rw source-interface* [name]
     |     |     +--rw name      -> ../config/name
     |     |     +--rw config!
     |     |     |  +--rw name?        -> /ipi-interface:interfaces/interface/name
     |     |     |  +--rw direction    ipi-port-mirror-types:pmirror_dir_t
     |     |     +--ro state
     |     |        +--ro name?        -> /ipi-interface:interfaces/interface/name
     |     |        +--ro direction    ipi-port-mirror-types:pmirror_dir_t
     |     +--rw session-filters
     |        +--rw session-filter* [seq-id]
     |           +--rw seq-id     -> ../config/seq-id
     |           +--rw config
     |           |  +--rw seq-id?   uint32
     |           +--ro state
     |           |  +--ro seq-id?   uint32
     |           +--rw filters
     |              +--rw config
     |              |  +--rw (destination-mac-options)?
     |              |  |  +--:(host-mac)
     |              |  |  |  +--rw destination-mac-address-host?   ipi-port-mirror-types:pmirror_mac_addr_t
     |              |  |  +--:(mac-with-mask)
     |              |  |     +--rw destination-mac-address?        ipi-port-mirror-types:pmirror_mac_addr_t
     |              |  |     +--rw destination-mac-mask?           ipi-port-mirror-types:pmirror_mac_addr_t
     |              |  +--rw frame-type?                           ipi-port-mirror-types:pmirror_ethertype_t
     |              |  +--rw arp-type?                             ipi-port-mirror-types:pmirror_arp_type_t
     |              |  +--rw sender-ip-address?                    inet:ipv4-address
     |              |  +--rw target-ip-address?                    inet:ipv4-address
     |              |  +--rw cos?                                  uint8
     |              |  +--rw vlan?                                 cml-data-types:cml_range_t
     |              |  +--rw source-ipv4-address?                  cml-data-types:cml_ipv4_addr_or_prefix_t
     |              |  +--rw destination-ipv4-address?             cml-data-types:cml_ipv4_addr_or_prefix_t
     |              |  +--rw source-ipv6-address?                  cml-data-types:cml_ipv6_prefix_t
     |              |  +--rw destination-ipv6-address?             cml-data-types:cml_ipv6_prefix_t
     |              |  +--rw (source-mac-options)?
     |              |     +--:(host-mac)
     |              |     |  +--rw source-mac-address-host?        ipi-port-mirror-types:pmirror_mac_addr_t
     |              |     +--:(mac-with-mask)
     |              |        +--rw source-mac-address?             ipi-port-mirror-types:pmirror_mac_addr_t
     |              |        +--rw source-mac-mask?                ipi-port-mirror-types:pmirror_mac_addr_t
     |              +--ro state
     |                 +--ro (destination-mac-options)?
     |                 |  +--:(host-mac)
     |                 |  |  +--ro destination-mac-address-host?   ipi-port-mirror-types:pmirror_mac_addr_t
     |                 |  +--:(mac-with-mask)
     |                 |     +--ro destination-mac-address?        ipi-port-mirror-types:pmirror_mac_addr_t
     |                 |     +--ro destination-mac-mask?           ipi-port-mirror-types:pmirror_mac_addr_t
     |                 +--ro frame-type?                           ipi-port-mirror-types:pmirror_ethertype_t
     |                 +--ro arp-type?                             ipi-port-mirror-types:pmirror_arp_type_t
     |                 +--ro sender-ip-address?                    inet:ipv4-address
     |                 +--ro target-ip-address?                    inet:ipv4-address
     |                 +--ro cos?                                  uint8
     |                 +--ro vlan?                                 cml-data-types:cml_range_t
     |                 +--ro source-ipv4-address?                  cml-data-types:cml_ipv4_addr_or_prefix_t
     |                 +--ro destination-ipv4-address?             cml-data-types:cml_ipv4_addr_or_prefix_t
     |                 +--ro source-ipv6-address?                  cml-data-types:cml_ipv6_prefix_t
     |                 +--ro destination-ipv6-address?             cml-data-types:cml_ipv6_prefix_t
     |                 +--ro (source-mac-options)?
     |                    +--:(host-mac)
     |                    |  +--ro source-mac-address-host?        ipi-port-mirror-types:pmirror_mac_addr_t
     |                    +--:(mac-with-mask)
     |                       +--ro source-mac-address?             ipi-port-mirror-types:pmirror_mac_addr_t
     |                       +--ro source-mac-mask?                ipi-port-mirror-types:pmirror_mac_addr_t
     +--rw interfaces
 
 
module: ipi-port-vlan
 
  augment /ipi-interface:interfaces/ipi-interface:interface:
    +--rw port-vlan
       +--rw global
       |  +--rw config
       |  |  +--rw isolated-vlan-id?           cml-data-types:cml_range_t {feature-list:NOT_HAVE_SWFWDR}?
       |  |  +--rw cvlan-registration-table?   -> /ipi-network-instance:network-instances/network-instance/ipi-bridge:bridge/ipi-vlan:cvlan-registration-tables/cvlan-registration-table/config/table-name {feature-list:HAVE_PROVIDER_BRIDGE}?
       |  +--ro state
       |     +--ro isolated-vlan-id?           cml-data-types:cml_range_t {feature-list:NOT_HAVE_SWFWDR}?
       |     +--ro cvlan-registration-table?   -> /ipi-network-instance:network-instances/network-instance/ipi-bridge:bridge/ipi-vlan:cvlan-registration-tables/cvlan-registration-table/config/table-name {feature-list:HAVE_PROVIDER_BRIDGE}?
       +--rw ennis
       +--rw switched-vlans
       |  +--rw switched-vlan* [interface-mode]
       |     +--rw interface-mode              -> ../config/interface-mode
       |     +--rw config
       |     |  +--rw interface-mode?          ipi-port-vlan-types:port_vlan_switch_port_mode_t
       |     |  +--rw acceptable-frame-type?   ipi-port-vlan-types:port_vlan_frame_type_t
       |     |  +--rw disable-native-vlan?     empty
       |     |  +--rw remove-default-vlan?     empty
       |     +--ro state
       |     |  +--ro interface-mode?          ipi-port-vlan-types:port_vlan_switch_port_mode_t
       |     |  +--ro acceptable-frame-type?   ipi-port-vlan-types:port_vlan_frame_type_t
       |     |  +--ro disable-native-vlan?     empty
       |     |  +--ro remove-default-vlan?     empty
       |     +--rw vlans
       |     |  +--rw config
       |     |  |  +--rw vlan-id?          uint16
       |     |  |  +--rw native-vlan-id?   uint16
       |     |  +--ro state
       |     |     +--ro vlan-id?          uint16
       |     |     +--ro native-vlan-id?   uint16
       |     +--rw allowed-vlan
       |     |  +--rw config
       |     |  |  +--rw allowed-vlan-id?                 cml-data-types:cml_range_t
       |     |  |  +--rw egress-tagging-disabled-vlans?   cml-data-types:cml_range_t
       |     |  +--ro state
       |     |     +--ro allowed-vlan-id?                 cml-data-types:cml_range_t
       |     |     +--ro egress-tagging-disabled-vlans?   cml-data-types:cml_range_t
       |     +--rw ce-vlan-translations
       |     +--rw svlan-translations
       |     |  +--rw svlan-translation* [original-svlan-id] {feature-list:HAVE_PROVIDER_BRIDGE}?
       |     |     +--rw original-svlan-id    -> ../config/original-svlan-id
       |     |     +--rw config
       |     |     |  +--rw translated-svlan-id?   uint16
       |     |     |  +--rw original-svlan-id?     uint16
       |     |     |  +--rw translated-cvlan-id?   uint16
       |     |     +--ro state
       |     |        +--ro translated-svlan-id?   uint16
       |     |        +--ro original-svlan-id?     uint16
       |     |        +--ro translated-cvlan-id?   uint16
       |     +--rw cvlan-svlan-translations
       |        +--rw cvlan-svlan-translation* [cvlan-id svlan-id] {feature-list:HAVE_PROVIDER_BRIDGE}?
       |           +--rw cvlan-id    -> ../config/cvlan-id
       |           +--rw svlan-id    -> ../config/svlan-id
       |           +--rw config
       |           |  +--rw cvlan-id?              uint16
       |           |  +--rw svlan-id?              uint16
       |           |  +--rw translated-cvlan-id?   uint16
       |           |  +--rw translated-svlan-id    uint16
       |           +--ro state
       |              +--ro cvlan-id?              uint16
       |              +--ro svlan-id?              uint16
       |              +--ro translated-cvlan-id?   uint16
       |              +--ro translated-svlan-id    uint16
       +--rw port-security
       |  +--rw config!
       |  |  +--rw mode             ipi-port-vlan-types:port_vlan_port_sec_mode_t
       |  |  +--rw maximum-limit?   uint16
       |  |  +--rw logging?         empty
       |  +--ro state
       |  |  +--ro mode             ipi-port-vlan-types:port_vlan_port_sec_mode_t
       |  |  +--ro maximum-limit?   uint16
       |  |  +--ro logging?         empty
       |  +--rw secure-mac {feature-list:HAVE_PROVIDER_BRIDGE}?
       |     +--rw default-vlan-mappings
       |     |  +--rw default-vlan-mapping* [mac-address]
       |     |     +--rw mac-address    -> ../config/mac-address
       |     |     +--rw config
       |     |     |  +--rw mac-address?   cml-data-types:cml_mac_addr_t
       |     |     +--ro state
       |     |        +--ro mac-address?   cml-data-types:cml_mac_addr_t
       |     +--rw vlan-mappings
       |     |  +--rw vlan-mapping* [mac-address]
       |     |     +--rw mac-address    -> ../config/mac-address
       |     |     +--rw config
       |     |     |  +--rw mac-address?   cml-data-types:cml_mac_addr_t
       |     |     |  +--rw cvlan-id*      uint16
       |     |     |  +--rw svlan-id*      uint16
       |     |     +--ro state
       |     |        +--ro mac-address?   cml-data-types:cml_mac_addr_t
       |     |        +--ro cvlan-id*      uint16
       |     |        +--ro svlan-id*      uint16
       |     +--rw cvlan-svlan-mappings
       |        +--rw cvlan-svlan-mapping* [mac-address cvlan-id svlan-id]
       |           +--rw mac-address    -> ../config/mac-address
       |           +--rw cvlan-id       -> ../config/cvlan-id
       |           +--rw svlan-id       -> ../config/svlan-id
       |           +--rw config
       |           |  +--rw mac-address?   cml-data-types:cml_mac_addr_t
       |           |  +--rw cvlan-id?      uint16
       |           |  +--rw svlan-id?      uint16
       |           +--ro state
       |              +--ro mac-address?   cml-data-types:cml_mac_addr_t
       |              +--ro cvlan-id?      uint16
       |              +--ro svlan-id?      uint16
       +--rw private-vlan {feature-list:HAVE_PVLAN}?
       |  +--rw config!
       |  |  +--rw mode    ipi-port-vlan-types:port_vlan_pvlan_mode_t
       |  +--ro state
       |  |  +--ro mode    ipi-port-vlan-types:port_vlan_pvlan_mode_t
       |  +--rw associations
       |     +--rw association* [vlan-id]
       |        +--rw vlan-id    -> ../config/vlan-id
       |        +--rw config
       |        |  +--rw vlan-id?                     uint16
       |        |  +--rw associate-vlan-id?           uint16
       |        |  +--rw mapping-vlan-id?             cml-data-types:cml_range_t
       |        |  +--rw association-trunk-vlan-id?   uint16
       |        +--ro state
       |           +--ro vlan-id?                     uint16
       |           +--ro associate-vlan-id?           uint16
       |           +--ro mapping-vlan-id?             cml-data-types:cml_range_t
       |           +--ro association-trunk-vlan-id?   uint16
       +--rw oep-mappings
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-bridge:bridge:
    +--rw vlan-static-fdb
       +--rw entries
          +--rw entry* [mac-address vlan-id]
             +--rw mac-address    -> ../config/mac-address
             +--rw vlan-id        -> ../config/vlan-id
             +--rw config
             |  +--rw interface-name    -> /ipi-interface:interfaces/interface/name
             |  +--rw mac-address?      cml-data-types:cml_mac_addr_t
             |  +--rw action            ipi-port-vlan-types:port_vlan_l2_fdb_action_t
             |  +--rw vlan-id?          uint16
             |  +--rw svlan-id?         uint16 {feature-list:HAVE_PB_STATIC_FDB_CUSTOM_CONFIG}?
             +--ro state
                +--ro interface-name    -> /ipi-interface:interfaces/interface/name
                +--ro mac-address?      cml-data-types:cml_mac_addr_t
                +--ro action            ipi-port-vlan-types:port_vlan_l2_fdb_action_t
                +--ro vlan-id?          uint16
                +--ro svlan-id?         uint16 {feature-list:HAVE_PB_STATIC_FDB_CUSTOM_CONFIG}?
 
 
module: ipi-prefix-list
  +--rw prefixes
     +--rw prefix* [prefix-list-name prefix-list-type]
        +--rw prefix-list-name    -> ../config/prefix-list-name
        +--rw prefix-list-type    -> ../config/prefix-list-type
        +--rw config
        |  +--rw prefix-list-name?   string
        |  +--rw prefix-list-type?   ipi-prefix-list-types:prefix_list_type_t
        |  +--rw description?        cml-data-types:cml_line_t
        +--ro state
        |  +--ro prefix-list-name?   string
        |  +--ro prefix-list-type?   ipi-prefix-list-types:prefix_list_type_t
        |  +--ro description?        cml-data-types:cml_line_t
        +--rw prefix-entries
           +--rw prefix-entry* [sequence-id]
              +--rw sequence-id    -> ../config/sequence-id
              +--rw config
              |  +--rw sequence-id?   uint32
              +--ro state
              |  +--ro sequence-id?   uint32
              +--rw ipv4
              |  +--rw entry* [action prefix-addr]
              |     +--rw action         -> ../config/action
              |     +--rw prefix-addr    -> ../config/prefix-addr
              |     +--rw config
              |     |  +--rw action?                        ipi-prefix-list-types:prefix_list_action_t
              |     |  +--rw minimum-prefix-length-match?   uint8
              |     |  +--rw maximum-prefix-length-match?   uint8
              |     |  +--rw prefix-addr?                   ipi-prefix-list-types:prefix_list_ipv4_network_t
              |     |  +--rw exact-prefix-length-match?     uint8
              |     +--ro state
              |        +--ro action?                        ipi-prefix-list-types:prefix_list_action_t
              |        +--ro minimum-prefix-length-match?   uint8
              |        +--ro maximum-prefix-length-match?   uint8
              |        +--ro prefix-addr?                   ipi-prefix-list-types:prefix_list_ipv4_network_t
              |        +--ro exact-prefix-length-match?     uint8
              +--rw ipv6 {feature-list:HAVE_IPV6}?
                 +--rw entry* [action ipv6-prefix-addr] {feature-list:HAVE_IPV6}?
                    +--rw action              -> ../config/action
                    +--rw ipv6-prefix-addr    -> ../config/ipv6-prefix-addr
                    +--rw config {feature-list:HAVE_IPV6}?
                    |  +--rw ipv6-prefix-addr?              ipi-prefix-list-types:prefix_list_ipv6_network_t
                    |  +--rw action?                        ipi-prefix-list-types:prefix_list_action_t
                    |  +--rw minimum-prefix-length-match?   uint8
                    |  +--rw maximum-prefix-length-match?   uint8
                    |  +--rw exact-prefix-length-match?     uint8
                    +--ro state {feature-list:HAVE_IPV6}?
                       +--ro ipv6-prefix-addr?              ipi-prefix-list-types:prefix_list_ipv6_network_t
                       +--ro action?                        ipi-prefix-list-types:prefix_list_action_t
                       +--ro minimum-prefix-length-match?   uint8
                       +--ro maximum-prefix-length-match?   uint8
                       +--ro exact-prefix-length-match?     uint8
 
  rpcs:
    +---x clear-prefix-list-all
    +---x clear-prefix-list-ipv6-all
    +---x clear-ipv4-prefix-list
    |  +---w input
    |     +---w prefix-list-name    string
    |     +---w prefix?             cml-data-types:cml_ipv4_addr_prefix_t
    +---x clear-ipv6-prefix-list {feature-list:HAVE_IPV6}?
       +---w input
          +---w prefix-list-name    string
          +---w prefix?             cml-data-types:cml_ipv6_prefix_t
 
 
 
module: ipi-ptp
  +--rw ptp {feature-list:HAVE_PTP_HW_OFFLOAD}?
     +--rw ptp-instances
     |  +--rw ptp-instance* [instance-type]
     |     +--rw instance-type         -> ../config/instance-type
     |     +--rw config
     |     |  +--rw instance-type?   uint8
     |     |  +--rw profile          ipi-ptp-types:ptp_profile_t
     |     +--rw tlv {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1}?
     |     |  +--rw config
     |     |  |  +--rw color-frame?   empty
     |     |  |  +--rw drop-frame?    empty
     |     |  |  +--rw numerator?     uint32
     |     |  |  +--rw denominator?   uint32
     |     |  +--ro state
     |     |     +--ro color-frame?   empty
     |     |     +--ro drop-frame?    empty
     |     |     +--ro numerator?     uint32
     |     |     +--ro denominator?   uint32
     |     +--rw default-data-set {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |     |  +--rw config
     |     |  |  +--rw l2-pkt-forward?                     empty
     |     |  |  +--rw domain?                             uint8
     |     |  |  +--rw servo-config?                       ipi-ptp-types:ptp_servo_config_type_t
     |     |  |  +--rw external-clock-holdover-duration?   uint16
     |     |  |  +--rw system-clock-sync?                  uint16
     |     |  |  +--rw ptp-clock-sync?                     empty
     |     |  |  +--rw ptsf-wtr-duration?                  uint16
     |     |  |  +--rw g8265p1-wtr-duration?               uint64
     |     |  |  +--rw g8265p1-option?                     ipi-ptp-types:ptp_g8265p1_option_type_t
     |     |  |  +--rw reserved-vlan-base?                 uint16
     |     |  |  +--rw two-step?                           empty {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1_OR_HAVE_PTP_HW_OFFLOAD_CUSTOM2}?
     |     |  |  +--rw clock-type-tgm?                     ipi-ptp-types:ptp_clock_type_tgm_t
     |     |  |  +--rw one-way?                            empty
     |     |  |  +--rw number-ports?                       uint8
     |     |  |  +--rw pps-pulse-offset?                   int16
     |     |  |  +--rw pps-in-smx-tod-type?                ipi-ptp-types:ptp_1pss_in_smx_tod_type_t
     |     |  |  +--rw priority-1?                         uint8
     |     |  |  +--rw priority-2?                         uint8
     |     |  |  +--rw slave-only?                         empty
     |     |  |  +--rw local-priority?                     uint8
     |     |  |  +--rw max-steps-removed?                  uint8
     |     |  |  +--rw start-boundary-hops?                uint8
     |     |  +--ro state
     |     |  |  +--ro l2-pkt-forward?                     empty
     |     |  |  +--ro domain?                             uint8
     |     |  |  +--ro servo-config?                       ipi-ptp-types:ptp_servo_config_type_t
     |     |  |  +--ro external-clock-holdover-duration?   uint16
     |     |  |  +--ro system-clock-sync?                  uint16
     |     |  |  +--ro ptp-clock-sync?                     empty
     |     |  |  +--ro ptsf-wtr-duration?                  uint16
     |     |  |  +--ro g8265p1-wtr-duration?               uint64
     |     |  |  +--ro g8265p1-option?                     ipi-ptp-types:ptp_g8265p1_option_type_t
     |     |  |  +--ro reserved-vlan-base?                 uint16
     |     |  |  +--ro two-step?                           empty {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1_OR_HAVE_PTP_HW_OFFLOAD_CUSTOM2}?
     |     |  |  +--ro clock-type-tgm?                     ipi-ptp-types:ptp_clock_type_tgm_t
     |     |  |  +--ro one-way?                            empty
     |     |  |  +--ro number-ports?                       uint8
     |     |  |  +--ro pps-pulse-offset?                   int16
     |     |  |  +--ro pps-in-smx-tod-type?                ipi-ptp-types:ptp_1pss_in_smx_tod_type_t
     |     |  |  +--ro priority-1?                         uint8
     |     |  |  +--ro priority-2?                         uint8
     |     |  |  +--ro slave-only?                         empty
     |     |  |  +--ro local-priority?                     uint8
     |     |  |  +--ro max-steps-removed?                  uint8
     |     |  |  +--ro start-boundary-hops?                uint8
     |     |  |  +--ro clock-identity?                     string
     |     |  +--rw servo-history
     |     |  |  +--rw config!
     |     |  |  |  +--rw servo-history-enabled     empty
     |     |  |  |  +--rw servo-history-interval    uint8
     |     |  |  +--ro state
     |     |  |     +--ro servo-history-enabled     empty
     |     |  |     +--ro servo-history-interval    uint8
     |     |  +--rw clock-quality
     |     |  |  +--rw config
     |     |  |  |  +--rw clock-class?                  uint8
     |     |  |  |  +--rw clock-accuracy?               uint8
     |     |  |  |  +--rw offset-scaled-log-variance?   uint16
     |     |  |  +--ro state
     |     |  |     +--ro clock-class?                  uint8
     |     |  |     +--ro clock-accuracy?               uint8
     |     |  |     +--ro offset-scaled-log-variance?   uint16
     |     |  +--rw gps-offset
     |     |     +--rw config!
     |     |     |  +--rw offset-seconds         int8
     |     |     |  +--rw offset-nano-seconds    int16
     |     |     +--ro state
     |     |        +--ro offset-seconds         int8
     |     |        +--ro offset-nano-seconds    int16
     |     +--rw ports {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |     |  +--rw port* [port-number]
     |     |     +--rw port-number              -> ../config/port-number
     |     |     +--rw config
     |     |     |  +--rw port-number?                      uint16
     |     |     |  +--rw local-priority?                   uint8
     |     |     |  +--rw description?                      cml-data-types:cml_line_t
     |     |     |  +--rw transport-type?                   ipi-ptp-types:ptp_encap_type_t
     |     |     |  +--rw transport-v6-multicast-type?      ipi-ptp-types:ptp_v6_multicast_type_t
     |     |     |  +--rw non-forwardable-mac-addr?         empty
     |     |     |  +--rw log-min-delay-req-interval?       int8
     |     |     |  +--rw log-announce-interval?            int8
     |     |     |  +--rw announce-receipt-timeout?         uint8
     |     |     |  +--rw log-sync-interval?                int8
     |     |     |  +--rw time-to-live?                     uint8
     |     |     |  +--rw ip-dscp?                          uint8
     |     |     |  +--rw unicast-grant-duration?           uint16
     |     |     |  +--rw delay-mechanism?                  ipi-ptp-types:ptp_delay_mechanism_t
     |     |     |  +--rw version-number?                   int8
     |     |     |  +--rw master-only?                      empty
     |     |     |  +--rw grandmaster-priority-2?           uint8
     |     |     |  +--rw append?                           empty {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1}?
     |     |     |  +--rw process?                          empty {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1}?
     |     |     |  +--rw source-ipv6-link-local-address?   empty {feature-list:HAVE_IPV6}?
     |     |     |  +--rw source-ipv6-interface-address?    string {feature-list:HAVE_IPV6}?
     |     |     |  +--rw source-ipv4-interface-address?    string
     |     |     |  +--rw source-ipv6-address?              inet:ipv6-address {feature-list:HAVE_IPV6}?
     |     |     |  +--rw source-ipv4-address?              inet:ipv4-address
     |     |     +--ro state
     |     |     |  +--ro port-number?                   uint16
     |     |     |  +--ro local-priority?                uint8
     |     |     |  +--ro description?                   cml-data-types:cml_line_t
     |     |     |  +--ro transport-type?                ipi-ptp-types:ptp_encap_type_t
     |     |     |  +--ro transport-v6-multicast-type?   ipi-ptp-types:ptp_v6_multicast_type_t
     |     |     |  +--ro non-forwardable-mac-addr?      empty
     |     |     |  +--ro log-min-delay-req-interval?    int8
     |     |     |  +--ro log-announce-interval?         int8
     |     |     |  +--ro announce-receipt-timeout?      uint8
     |     |     |  +--ro log-sync-interval?             int8
     |     |     |  +--ro time-to-live?                  uint8
     |     |     |  +--ro ip-dscp?                       uint8
     |     |     |  +--ro unicast-grant-duration?        uint16
     |     |     |  +--ro delay-mechanism?               ipi-ptp-types:ptp_delay_mechanism_t
     |     |     |  +--ro version-number?                int8
     |     |     |  +--ro master-only?                   empty
     |     |     |  +--ro grandmaster-priority-2?        uint8
     |     |     |  +--ro append?                        empty {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1}?
     |     |     |  +--ro process?                       empty {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1}?
     |     |     |  +--ro port-state?                    ipi-ptp-types:ptp_port_state_t
     |     |     |  +--ro peer-mean-path-delay?          ipi-ptp-types:ptp_time_interval_t
     |     |     |  +--ro signal-fail?                   boolean
     |     |     |  +--ro port-identity?                 string
     |     |     +--rw clock-quality
     |     |     |  +--rw config
     |     |     |  |  +--rw clock-class?                  uint8
     |     |     |  |  +--rw clock-accuracy?               uint8
     |     |     |  |  +--rw offset-scaled-log-variance?   uint16
     |     |     |  +--ro state
     |     |     |     +--ro clock-class?                  uint8
     |     |     |     +--ro clock-accuracy?               uint8
     |     |     |     +--ro offset-scaled-log-variance?   uint16
     |     |     +--rw asymmetry-delay
     |     |     |  +--rw config!
     |     |     |  |  +--rw delay-asymmetry-msec    int8
     |     |     |  |  +--rw delay-asymmetry-nsec    int32
     |     |     |  +--ro state
     |     |     |     +--ro delay-asymmetry-msec    int8
     |     |     |     +--ro delay-asymmetry-nsec    int32
     |     |     +--rw network-interfaces
     |     |     |  +--rw network-interface* [network-interface]
     |     |     |     +--rw network-interface    -> ../config/network-interface
     |     |     |     +--rw config
     |     |     |     |  +--rw network-interface?              ipi-ptp-types:ptp_network_interface_t
     |     |     |     |  +--rw vlan-physical-interface-name?   cml-data-types:cml_ifname_t
     |     |     |     |  +--rw vlan-physical-dot1q-vlan-id?    uint16
     |     |     |     |  +--rw dot1q-vlan-id?                  uint16
     |     |     |     |  +--rw dot1ad-vlan-id?                 uint16
     |     |     |     |  +--rw inner-dot1q-vlan-id?            uint16
     |     |     |     +--ro state
     |     |     |        +--ro network-interface?              ipi-ptp-types:ptp_network_interface_t
     |     |     |        +--ro vlan-physical-interface-name?   cml-data-types:cml_ifname_t
     |     |     |        +--ro vlan-physical-dot1q-vlan-id?    uint16
     |     |     |        +--ro dot1q-vlan-id?                  uint16
     |     |     |        +--ro dot1ad-vlan-id?                 uint16
     |     |     |        +--ro inner-dot1q-vlan-id?            uint16
     |     |     +--rw master-ipv4-addresses
     |     |     |  +--rw master-ipv4-address* [master-clock-source-ipv4-address]
     |     |     |     +--rw master-clock-source-ipv4-address    -> ../config/master-clock-source-ipv4-address
     |     |     |     +--rw config
     |     |     |     |  +--rw master-clock-source-ipv4-address?   inet:ipv4-address
     |     |     |     |  +--rw master-ipv4-address-priority?       uint8
     |     |     |     +--ro state
     |     |     |        +--ro master-clock-source-ipv4-address?   inet:ipv4-address
     |     |     |        +--ro master-ipv4-address-priority?       uint8
     |     |     +--rw master-ipv6-addresses
     |     |     |  +--rw master-ipv6-address* [master-clock-source-ipv6-address]
     |     |     |     +--rw master-clock-source-ipv6-address    -> ../config/master-clock-source-ipv6-address
     |     |     |     +--rw config
     |     |     |     |  +--rw master-clock-source-ipv6-address?   inet:ipv6-address
     |     |     |     |  +--rw master-ipv6-address-priority?       uint8
     |     |     |     +--ro state
     |     |     |        +--ro master-clock-source-ipv6-address?   inet:ipv6-address
     |     |     |        +--ro master-ipv6-address-priority?       uint8
     |     |     +--rw statistics
     |     |     |  +--ro state
     |     |     |     +--ro packets-transmitted?   yang:counter32
     |     |     |     +--ro packets-received?      yang:counter32
     |     |     |     +--ro packets-discarded?     yang:counter32
     |     |     +--ro foreign-data-sets
     |     |     |  +--ro foreign-data-set* [foreign-master-id]
     |     |     |     +--ro foreign-master-id    -> ../state/foreign-master-id
     |     |     |     +--ro state
     |     |     |        +--ro foreign-master-id?            uint8
     |     |     |        +--ro current?                      boolean
     |     |     |        +--ro ipv4-address?                 inet:ipv4-address
     |     |     |        +--ro ipv6-address?                 inet:ipv6-address {feature-list:HAVE_IPV6}?
     |     |     |        +--ro l2-address?                   yang:mac-address
     |     |     |        +--ro clock-identity?               string
     |     |     |        +--ro port-id?                      string
     |     |     |        +--ro clock-class?                  uint8
     |     |     |        +--ro clock-accuracy?               uint8
     |     |     |        +--ro offset-scaled-log-variance?   uint16
     |     |     |        +--ro priority-1?                   uint8
     |     |     |        +--ro priority-2?                   uint8
     |     |     |        +--ro steps-removed?                uint16
     |     |     |        +--ro pdv-scaled-allan-variance?    uint64
     |     |     +--ro peer-data-sets
     |     |     |  +--ro peer-data-set* [peer-id]
     |     |     |     +--ro peer-id    -> ../state/peer-id
     |     |     |     +--ro state
     |     |     |        +--ro peer-id?                      uint8
     |     |     |        +--ro ipv4-address?                 inet:ipv4-address
     |     |     |        +--ro ipv6-address?                 inet:ipv6-address {feature-list:HAVE_IPV6}?
     |     |     |        +--ro l2-address?                   yang:mac-address
     |     |     |        +--ro clock-identity?               string
     |     |     |        +--ro received-announce?            yang:counter64
     |     |     |        +--ro received-sync?                yang:counter64
     |     |     |        +--ro received-followup?            yang:counter64
     |     |     |        +--ro received-reject?              yang:counter64
     |     |     |        +--ro received-delay-request?       yang:counter64
     |     |     |        +--ro received-delay-response?      yang:counter64
     |     |     |        +--ro received-management?          yang:counter64
     |     |     |        +--ro received-signaling?           yang:counter64
     |     |     |        +--ro transmitted-announce?         yang:counter64
     |     |     |        +--ro transmitted-sync?             yang:counter64
     |     |     |        +--ro transmitted-followup?         yang:counter64
     |     |     |        +--ro transmitted-delay-request?    yang:counter64
     |     |     |        +--ro transmitted-delay-response?   yang:counter64
     |     |     |        +--ro transmitted-management?       yang:counter64
     |     |     |        +--ro transmitted-signaling?        yang:counter64
     |     |     +--ro master-data-sets
     |     |     |  +--ro master-data-set* [master-id]
     |     |     |     +--ro master-id    -> ../state/master-id
     |     |     |     +--ro state
     |     |     |        +--ro master-id?      uint8
     |     |     |        +--ro ipv4-address?   inet:ipv4-address
     |     |     |        +--ro ipv6-address?   inet:ipv6-address {feature-list:HAVE_IPV6}?
     |     |     +--ro slave-data-sets
     |     |     |  +--ro slave-data-set* [slave-id]
     |     |     |     +--ro slave-id    -> ../state/slave-id
     |     |     |     +--ro state
     |     |     |        +--ro slave-id?                     uint8
     |     |     |        +--ro ipv4-address?                 inet:ipv4-address
     |     |     |        +--ro ipv6-address?                 inet:ipv6-address {feature-list:HAVE_IPV6}?
     |     |     |        +--ro clock-identity?               string
     |     |     |        +--ro delay-mechanism?              ipi-ptp-types:ptp_delay_mechanism_t
     |     |     |        +--ro log-announce-interval?        int8
     |     |     |        +--ro log-sync-interval?            int8
     |     |     |        +--ro log-delay-request-interval?   int8
     |     |     +--rw drop-counters
     |     |        +--ro state
     |     |           +--ro domain-mismatch?                yang:counter32
     |     |           +--ro memory-alloc-failure?           yang:counter32
     |     |           +--ro pkt-len-too-short?              yang:counter32
     |     |           +--ro pkt-rcvd-on-bad-port-state?     yang:counter32
     |     |           +--ro pkt-profile-mismatch?           yang:counter32
     |     |           +--ro clock-port-mismatch?            yang:counter32
     |     |           +--ro ptp-packet-parsing-failure?     yang:counter32
     |     |           +--ro delreq-from-unknown-slave?      yang:counter32
     |     |           +--ro announce-on-master-only-port?   yang:counter32
     |     |           +--ro invalid-steps-removed-field?    yang:counter32
     |     |           +--ro unknown-unicast-master?         yang:counter32
     |     |           +--ro announce-on-gps-ptp-port?       yang:counter32
     |     |           +--ro sync-rcvd-invalid?              yang:counter32
     |     |           +--ro sync-rcvd-without-master?       yang:counter32
     |     +--rw time-of-day {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |     |  +--rw config
     |     |  |  +--rw io-type?   ipi-ptp-types:ptp_clock_io_type_t
     |     |  +--ro state
     |     |     +--ro io-type?   ipi-ptp-types:ptp_clock_io_type_t
     |     +--rw ptp-servo {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |     |  +--ro state
     |     |     +--ro config-state?             ipi-ptp-types:ptp_config_state_t
     |     |     +--ro servo-config?             string {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1}?
     |     |     +--ro previous-state?           ipi-ptp-types:ptp_servo_state_t
     |     |     +--ro current-state?            ipi-ptp-types:ptp_servo_state_t
     |     |     +--ro previous-servo-state?     ipi-ptp-types:ptp_servo_state_custom_t {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1_OR_HAVE_PTP_HW_OFFLOAD_CUSTOM2}?
     |     |     +--ro current-servo-state?      ipi-ptp-types:ptp_servo_state_custom_t {feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1_OR_HAVE_PTP_HW_OFFLOAD_CUSTOM2}?
     |     |     +--ro duration?                 string
     |     |     +--ro apts-mode?                ipi-ptp-types:ptp_servo_apts_mode_t
     |     |     +--ro freq-correction?          decimal64
     |     |     +--ro phase-correction?         decimal64
     |     |     +--ro mean-path-delay?          ipi-ptp-types:ptp_time_interval_t
     |     |     +--ro apts-gps-to-ptp-offset?   ipi-ptp-types:ptp_time_interval_t
     |     |     +--ro offset-from-master?       decimal64
     |     |     +--ro sync-packet-rate?         uint32
     |     |     +--ro delay-packet-rate?        uint32
     |     +--rw current-data-set {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |     |  +--ro state
     |     |     +--ro steps-removed?                uint8
     |     |     +--ro offset-from-master?           ipi-ptp-types:ptp_time_interval_t
     |     |     +--ro offset-from-master-in-nsec?   decimal64
     |     |     +--ro mean-path-delay?              ipi-ptp-types:ptp_time_interval_t
     |     +--rw parent-data-set {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |     |  +--ro state
     |     |  |  +--ro parent-stats-enabled?                boolean
     |     |  |  +--ro parent-offset-scaled-log-variance?   uint16
     |     |  |  +--ro parent-phase-change-rate?            uint32
     |     |  |  +--ro grandmaster-identity?                ipi-ptp-types:ptp_clock_identity_t
     |     |  |  +--ro grandmaster-priority-1?              uint8
     |     |  |  +--ro grandmaster-priority-2?              uint8
     |     |  |  +--ro port-identity
     |     |  |  |  +--ro clock-identity?   string
     |     |  |  |  +--ro port-number?      uint16
     |     |  |  +--ro grandmaster-clock-quality
     |     |  |     +--ro clock-class?                  uint8
     |     |  |     +--ro clock-accuracy?               uint8
     |     |  |     +--ro offset-scaled-log-variance?   uint16
     |     |  +--rw port-identity
     |     |  |  +--ro state
     |     |  |     +--ro clock-identity?   string
     |     |  |     +--ro port-number?      uint16
     |     |  +--rw grandmaster-clock-quality
     |     |     +--ro state
     |     |        +--ro clock-class?                  uint8
     |     |        +--ro clock-accuracy?               uint8
     |     |        +--ro offset-scaled-log-variance?   uint16
     |     +--rw time-properties {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |     |  +--ro state
     |     |     +--ro current-utc-offset-valid?   boolean
     |     |     +--ro current-utc-offset?         int16
     |     |     +--ro leap59?                     empty
     |     |     +--ro leap61?                     empty
     |     |     +--ro time-traceable?             empty
     |     |     +--ro frequency-traceable?        empty
     |     |     +--ro ptp-timescale?              empty
     |     |     +--ro time-source?                ipi-ptp-types:ptp_time_source_t
     |     |     +--ro ptp-time-of-day?            string
     |     +--rw statistics {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |     |  +--ro state
     |     |     +--ro packets-transmitted?     yang:counter32
     |     |     +--ro packets-received?        yang:counter32
     |     |     +--ro packets-discarded?       yang:counter32
     |     |     +--ro ipv4-packets-received?   yang:counter32
     |     |     +--ro ipv6-packets-received?   yang:counter32 {feature-list:HAVE_IPV6}?
     |     |     +--ro l2-packets-received?     yang:counter32
     |     |     +--ro rx-queue-overflows?      yang:counter32
     |     +--ro servo-history-data {feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
     |     |  +--ro servo-history-data-entry* [entry-id]
     |     |     +--ro entry-id    -> ../state/entry-id
     |     |     +--ro state
     |     |        +--ro entry-id?               uint8
     |     |        +--ro timestamp?              string
     |     |        +--ro phase-correction?       decimal64
     |     |        +--ro frequency-correction?   decimal64
     |     +--rw utc-offset-dates
     |        +--rw utc-offset-date* [utc-date]
     |        |  +--rw utc-date    -> ../config/utc-date
     |        |  +--rw config
     |        |  |  +--rw utc-date?         string
     |        |  |  +--rw offset-seconds    uint8
     |        |  +--ro state
     |        |     +--ro utc-date?         string
     |        |     +--ro offset-seconds    uint8
     |        +--rw baseline
     |           +--rw config
     |           |  +--rw baseline-seconds?   uint8
     |           +--ro state
     |              +--ro baseline-seconds?   uint8
     +--rw debug
     |  +--rw config
     |  |  +--rw enable?   empty
     |  +--ro state
     |     +--ro enable?                  empty
     |     +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
     +--rw interfaces
        +--rw interface* [interface-name]
           +--rw interface-name    -> ../config/interface-name
           +--rw config
           |  +--rw interface-name?   -> /ipi-interface:interfaces/interface/name
           |  +--rw hw-timestamp?     empty {feature-list:HAVE_DUNE}?
           +--ro state
              +--ro interface-name?   -> /ipi-interface:interfaces/interface/name
              +--ro hw-timestamp?     empty {feature-list:HAVE_DUNE}?
 
  rpcs:
    +---x ptp-clear-statistics {feature-list:HAVE_PTP_HW_OFFLOAD,feature-list:HAVE_PTPD,feature-list:HAVE_DUNE_OR_HAVE_MARVELL}?
    |  +---w input
    |     +---w clear-clock    uint8
    +---x ptp-terminal-debug-on {feature-list:HAVE_PTP_HW_OFFLOAD,feature-list:HAVE_DUNE}?
    +---x ptp-terminal-debug-off {feature-list:HAVE_PTP_HW_OFFLOAD,feature-list:HAVE_DUNE}?
 
  notifications:
    +---n ptp-servo-state-change-notify {feature-list:HAVE_PTP_HW_OFFLOAD,feature-list:HAVE_DUNE}?
    |  +--ro severity?         cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?       cml-data-types:cml_notif_class_t
    |  +--ro instance-type?    uint8
    |  +--ro previous-state?   ipi-ptp-types:ptp_servo_state_t
    |  +--ro current-state?    ipi-ptp-types:ptp_servo_state_t
    +---n ptp-servo-state-change-custom1-notify {feature-list:HAVE_DUNE,feature-list:HAVE_PTP_HW_OFFLOAD_CUSTOM1_OR_HAVE_PTP_HW_OFFLOAD_CUSTOM2}?
       +--ro severity?               cml-data-types:cml_notif_severity_t
       +--ro eventClass?             cml-data-types:cml_notif_class_t
       +--ro instance-type?          uint8
       +--ro previous-servo-state?   ipi-ptp-types:ptp_servo_state_custom_t
       +--ro current-servo-state?    ipi-ptp-types:ptp_servo_state_custom_t
 
module: ipi-qos-if
 
  augment /ipi-qos:qos:
    +--rw interfaces
       +--rw interface* [name]
          +--rw name              -> ../config/name
          +--rw config
          |  +--rw name?                -> /ipi-interface:interfaces/interface/name
          |  +--rw untagged-priority?   uint8
          |  +--rw trust-dscp?          empty
          +--ro state
          |  +--ro name?                -> /ipi-interface:interfaces/interface/name
          |  +--ro untagged-priority?   uint8
          |  +--ro trust-dscp?          empty
          +--rw remark
          |  +--rw config
          |  |  +--rw cos?    ipi-qos-types:cml_remark_state_t
          |  |  +--rw dscp?   ipi-qos-types:cml_remark_state_t
          |  +--ro state
          |     +--ro cos?    ipi-qos-types:cml_remark_state_t
          |     +--ro dscp?   ipi-qos-types:cml_remark_state_t
          +--rw traffic-shape
          |  +--rw config!
          |  |  +--rw rate         uint64
          |  |  +--rw rate-unit    ipi-qos-types:qos_shape_rate_unit_t
          |  +--ro state
          |     +--ro rate         uint64
          |     +--ro rate-unit    ipi-qos-types:qos_shape_rate_unit_t
          +--rw map-profile {feature-list:HAVE_QOS_MAPPING_PROFILE}?
          |  +--rw config
          |  |  +--rw cos-to-queue?               string
          |  |  +--rw dscp-to-dscp?               string {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
          |  |  +--rw precedence-to-precedence?   string {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
          |  |  +--rw dscp-to-queue?              string
          |  |  +--rw precedence-to-queue?        string
          |  |  +--rw exp-encapsulation?          -> /ipi-qos:qos/global/map-profile/exp-encapsulation-profiles/exp-encapsulation-profile/name {feature-list:HAVE_DIFFSERV,feature-list:HAVE_CUSTOM2_QOS,feature-list:NOT_HAVE_CUSTOM3_QOS}?
          |  |  +--rw dscp-encapsulation?         string {feature-list:HAVE_CUSTOM2_QOS}?
          |  |  +--rw queue-color-to-cos?         string
          |  +--ro state
          |     +--ro cos-to-queue?               string
          |     +--ro dscp-to-dscp?               string {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
          |     +--ro precedence-to-precedence?   string {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
          |     +--ro dscp-to-queue?              string
          |     +--ro precedence-to-queue?        string
          |     +--ro exp-encapsulation?          -> /ipi-qos:qos/global/map-profile/exp-encapsulation-profiles/exp-encapsulation-profile/name {feature-list:HAVE_DIFFSERV,feature-list:HAVE_CUSTOM2_QOS,feature-list:NOT_HAVE_CUSTOM3_QOS}?
          |     +--ro dscp-encapsulation?         string {feature-list:HAVE_CUSTOM2_QOS}?
          |     +--ro queue-color-to-cos?         string
          +--rw service-policy
             +--rw ingress
             |  +--rw config
             |  |  +--rw type-qos-policy-map-name?   string
             |  +--ro state
             |  |  +--ro type-qos-policy-map-name?   string
             |  +--ro class-maps-level-1
             |     +--ro class-map-level-1* [class-map-name-level-1]
             |        +--ro class-map-name-level-1    -> ../state/class-map-name-level-1
             |        +--ro state
             |        |  +--ro class-map-name-level-1?   string
             |        |  +--ro counters
             |        |     +--ro matched-packets?       yang:counter64
             |        |     +--ro matched-octets?        yang:counter64
             |        |     +--ro transmitted-packets?   yang:counter64
             |        |     +--ro transmitted-octets?    yang:counter64
             |        |     +--ro dropped-packets?       yang:counter64
             |        |     +--ro dropped-octets?        yang:counter64
             |        +--ro class-maps-level-2
             |           +--ro class-map-level-2* [class-map-name-level-2]
             |              +--ro class-map-name-level-2    -> ../state/class-map-name-level-2
             |              +--ro state
             |              |  +--ro class-map-name-level-2?   string
             |              |  +--ro counters
             |              |     +--ro matched-packets?       yang:counter64
             |              |     +--ro matched-octets?        yang:counter64
             |              |     +--ro transmitted-packets?   yang:counter64
             |              |     +--ro transmitted-octets?    yang:counter64
             |              |     +--ro dropped-packets?       yang:counter64
             |              |     +--ro dropped-octets?        yang:counter64
             |              +--ro class-maps-level-3
             |                 +--ro class-map-level-3* [class-map-name-level-3]
             |                    +--ro class-map-name-level-3    -> ../state/class-map-name-level-3
             |                    +--ro state
             |                       +--ro class-map-name-level-3?   string
             |                       +--ro counters
             |                          +--ro matched-packets?       yang:counter64
             |                          +--ro matched-octets?        yang:counter64
             |                          +--ro transmitted-packets?   yang:counter64
             |                          +--ro transmitted-octets?    yang:counter64
             |                          +--ro dropped-packets?       yang:counter64
             |                          +--ro dropped-octets?        yang:counter64
             +--rw egress
                +--rw config
                |  +--rw type-queuing-policy-map-name?   string
                +--ro state
                |  +--ro type-queuing-policy-map-name?   string
                +--ro class-maps-level-1
                   +--ro class-map-level-1* [class-map-name-level-1]
                      +--ro class-map-name-level-1    -> ../state/class-map-name-level-1
                      +--ro state
                      |  +--ro class-map-name-level-1?   string
                      |  +--ro queues
                      |     +--ro queue* [id]
                      |        +--ro id          uint8
                      |        +--ro counters
                      |           +--ro total-transmitted-packets?       yang:counter64
                      |           +--ro total-transmitted-octets?        yang:counter64
                      |           +--ro total-dropped-packets?           yang:counter64
                      |           +--ro total-dropped-octets?            yang:counter64
                      |           +--ro green-transmitted-packets?       yang:counter64
                      |           +--ro non-green-transmitted-packets?   yang:counter64
                      |           +--ro green-dropped-packets?           yang:counter64
                      |           +--ro yellow-dropped-packets?          yang:counter64
                      |           +--ro red-dropped-packets?             yang:counter64
                      |           +--ro rate-kbps?                       decimal64
                      |           +--ro rate-mbps?                       decimal64
                      |           +--ro rate-gbps?                       decimal64
                      +--ro class-maps-level-2
                         +--ro class-map-level-2* [class-map-name-level-2]
                            +--ro class-map-name-level-2    -> ../state/class-map-name-level-2
                            +--ro state
                            |  +--ro class-map-name-level-2?   string
                            |  +--ro queues
                            |     +--ro queue* [id]
                            |        +--ro id          uint8
                            |        +--ro counters
                            |           +--ro total-transmitted-packets?       yang:counter64
                            |           +--ro total-transmitted-octets?        yang:counter64
                            |           +--ro total-dropped-packets?           yang:counter64
                            |           +--ro total-dropped-octets?            yang:counter64
                            |           +--ro green-transmitted-packets?       yang:counter64
                            |           +--ro non-green-transmitted-packets?   yang:counter64
                            |           +--ro green-dropped-packets?           yang:counter64
                            |           +--ro yellow-dropped-packets?          yang:counter64
                            |           +--ro red-dropped-packets?             yang:counter64
                            |           +--ro rate-kbps?                       decimal64
                            |           +--ro rate-mbps?                       decimal64
                            |           +--ro rate-gbps?                       decimal64
                            +--ro class-maps-level-3
                               +--ro class-map-level-3* [class-map-name-level-3]
                                  +--ro class-map-name-level-3    -> ../state/class-map-name-level-3
                                  +--ro state
                                     +--ro class-map-name-level-3?   string
                                     +--ro queues
                                        +--ro queue* [id]
                                           +--ro id          uint8
                                           +--ro counters
                                              +--ro total-transmitted-packets?       yang:counter64
                                              +--ro total-transmitted-octets?        yang:counter64
                                              +--ro total-dropped-packets?           yang:counter64
                                              +--ro total-dropped-octets?            yang:counter64
                                              +--ro green-transmitted-packets?       yang:counter64
                                              +--ro non-green-transmitted-packets?   yang:counter64
                                              +--ro green-dropped-packets?           yang:counter64
                                              +--ro yellow-dropped-packets?          yang:counter64
                                              +--ro red-dropped-packets?             yang:counter64
                                              +--ro rate-kbps?                       decimal64
                                              +--ro rate-mbps?                       decimal64
                                              +--ro rate-gbps?                       decimal64
 
  notifications:
    +---n qos-subinterface-default-policy-add-notification
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n qos-subinterface-default-policy-delete-notification
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n qos-subinterface-traffic-shape-add-notification
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n qos-subinterface-traffic-shape-delete-notification
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro message?      string
 
 
module: ipi-qos
  +--rw qos
     +--rw global
        +--rw config
        |  +--rw enable-qos?   cml-data-types:cml_enable_disable_t
        +--ro state
        |  +--ro enable-qos?   cml-data-types:cml_enable_disable_t
        +--rw map-profile {feature-list:HAVE_QOS_MAPPING_PROFILE}?
        |  +--rw cos-to-queue-profiles
        |  |  +--rw cos-to-queue-profile* [name]
        |  |     +--rw name             -> ../config/name
        |  |     +--rw config
        |  |     |  +--rw name?   string
        |  |     +--ro state
        |  |     |  +--ro name?   string
        |  |     +--rw cos-to-queues {feature-list:HAVE_CUSTOM2_QOS}?
        |  |        +--rw cos-to-queue* [cos-value]
        |  |           +--rw cos-value    -> ../config/cos-value
        |  |           +--rw config
        |  |           |  +--rw cos-value?   uint8
        |  |           |  +--rw queue-id     uint8
        |  |           +--ro state
        |  |              +--ro cos-value?   uint8
        |  |              +--ro queue-id     uint8
        |  +--rw dscp-to-dscp-profiles {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |  |  +--rw dscp-to-dscp-profile* [name]
        |  |     +--rw name             -> ../config/name
        |  |     +--rw config
        |  |     |  +--rw name?   string
        |  |     +--ro state
        |  |     |  +--ro name?   string
        |  |     +--rw dscp-to-dscps
        |  |        +--rw dscp-to-dscp* [dscp-value color]
        |  |           +--rw dscp-value    -> ../config/dscp-value
        |  |           +--rw color         -> ../config/color
        |  |           +--rw config
        |  |           |  +--rw dscp-value?          uint8
        |  |           |  +--rw color?               ipi-qos-types:qos_color_key_t
        |  |           |  +--rw remark-dscp-value    uint8
        |  |           +--ro state
        |  |              +--ro dscp-value?          uint8
        |  |              +--ro color?               ipi-qos-types:qos_color_key_t
        |  |              +--ro remark-dscp-value    uint8
        |  +--rw precedence-to-precedence-profiles {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |  |  +--rw precedence-to-precedence-profile* [name]
        |  |     +--rw name                         -> ../config/name
        |  |     +--rw config
        |  |     |  +--rw name?   string
        |  |     +--ro state
        |  |     |  +--ro name?   string
        |  |     +--rw precedence-to-precedences
        |  |        +--rw precedence-to-precedence* [precedence-value]
        |  |           +--rw precedence-value    -> ../config/precedence-value
        |  |           +--rw config
        |  |           |  +--rw precedence-value?          uint8
        |  |           |  +--rw remark-precedence-value    uint8
        |  |           +--ro state
        |  |              +--ro precedence-value?          uint8
        |  |              +--ro remark-precedence-value    uint8
        |  +--rw dscp-to-queue-profiles
        |  |  +--rw dscp-to-queue-profile* [name]
        |  |     +--rw name              -> ../config/name
        |  |     +--rw config
        |  |     |  +--rw name?   string
        |  |     +--ro state
        |  |     |  +--ro name?   string
        |  |     +--rw dscp-to-queues
        |  |        +--rw dscp-to-queue* [dscp-value]
        |  |           +--rw dscp-value    -> ../config/dscp-value
        |  |           +--rw config
        |  |           |  +--rw dscp-value?          uint8
        |  |           |  +--rw queue-id             uint8
        |  |           |  +--rw color?               ipi-qos-types:qos_color_t
        |  |           |  +--rw remark-dscp-value?   uint8 {feature-list:HAVE_CUSTOM2_QOS}?
        |  |           +--ro state
        |  |              +--ro dscp-value?          uint8
        |  |              +--ro queue-id             uint8
        |  |              +--ro color?               ipi-qos-types:qos_color_t
        |  |              +--ro remark-dscp-value?   uint8 {feature-list:HAVE_CUSTOM2_QOS}?
        |  +--rw dscp-encapsulation-profiles {feature-list:HAVE_CUSTOM2_QOS}?
        |  |  +--rw dscp-encapsulation-profile* [name]
        |  |     +--rw name       -> ../config/name
        |  |     +--rw config
        |  |     |  +--rw name?   string
        |  |     +--ro state
        |  |     |  +--ro name?   string
        |  |     +--rw layer-2
        |  |     |  +--rw queue-color-to-dscps
        |  |     |     +--rw queue-color-to-dscp* [queue-id color]
        |  |     |        +--rw queue-id    -> ../config/queue-id
        |  |     |        +--rw color       -> ../config/color
        |  |     |        +--rw config
        |  |     |        |  +--rw queue-id?     uint8
        |  |     |        |  +--rw color?        ipi-qos-types:qos_color_key_t
        |  |     |        |  +--rw dscp-value    uint8
        |  |     |        +--ro state
        |  |     |           +--ro queue-id?     uint8
        |  |     |           +--ro color?        ipi-qos-types:qos_color_key_t
        |  |     |           +--ro dscp-value    uint8
        |  |     +--rw layer-3
        |  |        +--rw dscp-to-dscp-encaps
        |  |           +--rw dscp-to-dscp-encap* [dscp-value]
        |  |              +--rw dscp-value    -> ../config/dscp-value
        |  |              +--rw config
        |  |              |  +--rw dscp-value?         uint8
        |  |              |  +--rw dscp-encap-value    uint8
        |  |              +--ro state
        |  |                 +--ro dscp-value?         uint8
        |  |                 +--ro dscp-encap-value    uint8
        |  +--rw exp-encapsulation-profiles {feature-list:HAVE_DIFFSERV,feature-list:HAVE_CUSTOM2_QOS,feature-list:NOT_HAVE_CUSTOM3_QOS}?
        |  |  +--rw exp-encapsulation-profile* [name]
        |  |     +--rw name       -> ../config/name
        |  |     +--rw config
        |  |     |  +--rw name?   string
        |  |     +--ro state
        |  |     |  +--ro name?   string
        |  |     +--rw layer-2
        |  |     |  +--rw queue-color-to-exps
        |  |     |     +--rw queue-color-to-exp* [queue-id color]
        |  |     |        +--rw queue-id    -> ../config/queue-id
        |  |     |        +--rw color       -> ../config/color
        |  |     |        +--rw config
        |  |     |        |  +--rw queue-id?    uint8
        |  |     |        |  +--rw color?       ipi-qos-types:qos_color_key_t
        |  |     |        |  +--rw exp-value    uint8
        |  |     |        +--ro state
        |  |     |           +--ro queue-id?    uint8
        |  |     |           +--ro color?       ipi-qos-types:qos_color_key_t
        |  |     |           +--ro exp-value    uint8
        |  |     +--rw layer-3
        |  |        +--rw dscp-to-exps
        |  |           +--rw dscp-to-exp* [dscp-value]
        |  |              +--rw dscp-value    -> ../config/dscp-value
        |  |              +--rw config
        |  |              |  +--rw dscp-value?   uint8
        |  |              |  +--rw exp-value     uint8
        |  |              +--ro state
        |  |                 +--ro dscp-value?   uint8
        |  |                 +--ro exp-value     uint8
        |  +--rw exp-to-queue-profiles {feature-list:HAVE_DIFFSERV}?
        |  |  +--rw exp-to-queue-profile* [profile-id]
        |  |     +--rw profile-id       -> ../config/profile-id
        |  |     +--rw config
        |  |     |  +--rw profile-id?   ipi-qos-types:qos_profile_name_default_t
        |  |     +--ro state
        |  |     |  +--ro profile-id?   ipi-qos-types:qos_profile_name_default_t
        |  |     +--rw exp-to-queues
        |  |        +--rw exp-to-queue* [exp-value]
        |  |           +--rw exp-value    -> ../config/exp-value
        |  |           +--rw config
        |  |           |  +--rw exp-value?   uint8
        |  |           |  +--rw queue-id     uint8
        |  |           |  +--rw color?       ipi-qos-types:qos_color_t
        |  |           +--ro state
        |  |              +--ro exp-value?   uint8
        |  |              +--ro queue-id     uint8
        |  |              +--ro color?       ipi-qos-types:qos_color_t
        |  +--rw queue-color-to-cos-profiles
        |  |  +--rw queue-color-to-cos-profile* [name]
        |  |     +--rw name                    -> ../config/name
        |  |     +--rw config
        |  |     |  +--rw name?   string
        |  |     +--ro state
        |  |     |  +--ro name?   string
        |  |     +--rw queue-color-to-coses
        |  |        +--rw queue-color-to-cos* [queue-id color]
        |  |           +--rw queue-id    -> ../config/queue-id
        |  |           +--rw color       -> ../config/color
        |  |           +--rw config
        |  |           |  +--rw queue-id?    uint8
        |  |           |  +--rw color?       ipi-qos-types:qos_color_key_t
        |  |           |  +--rw cos-value    uint8
        |  |           +--ro state
        |  |              +--ro queue-id?    uint8
        |  |              +--ro color?       ipi-qos-types:qos_color_key_t
        |  |              +--ro cos-value    uint8
        |  +--rw precedence-to-queue-profiles
        |  |  +--rw precedence-to-queue-profile* [name]
        |  |     +--rw name                    -> ../config/name
        |  |     +--rw config
        |  |     |  +--rw name?   string
        |  |     +--ro state
        |  |     |  +--ro name?   string
        |  |     +--rw precedence-to-queues
        |  |        +--rw precedence-to-queue* [precedence-value]
        |  |           +--rw precedence-value    -> ../config/precedence-value
        |  |           +--rw config
        |  |           |  +--rw precedence-value?          uint8
        |  |           |  +--rw queue-id                   uint8
        |  |           |  +--rw remark-precedence-value?   uint8 {feature-list:HAVE_CUSTOM2_QOS}?
        |  |           +--ro state
        |  |              +--ro precedence-value?          uint8
        |  |              +--ro queue-id                   uint8
        |  |              +--ro remark-precedence-value?   uint8 {feature-list:HAVE_CUSTOM2_QOS}?
        |  +--rw queue-color-to-dscp-profiles
        |     +--rw queue-color-to-dscp-profile* [name]
        |        +--rw name                    -> ../config/name
        |        +--rw config
        |        |  +--rw name?   string
        |        +--ro state
        |        |  +--ro name?   string
        |        +--rw queue-color-to-dscps
        |           +--rw queue-color-to-dscp* [queue-id color]
        |              +--rw queue-id    -> ../config/queue-id
        |              +--rw color       -> ../config/color
        |              +--rw config
        |              |  +--rw queue-id?     uint8
        |              |  +--rw color?        ipi-qos-types:qos_color_key_t
        |              |  +--rw dscp-value    uint8
        |              +--ro state
        |                 +--ro queue-id?     uint8
        |                 +--ro color?        ipi-qos-types:qos_color_key_t
        |                 +--ro dscp-value    uint8
        +--rw remark
        |  +--rw config
        |  |  +--rw cos?    empty
        |  |  +--rw dscp?   empty
        |  +--ro state
        |     +--ro cos?    empty
        |     +--ro dscp?   empty
        +--ro class-maps-default
        |  +--ro class-map-default* [name]
        |     +--ro name     -> ../state/name
        |     +--ro state
        |        +--ro name?             string
        |        +--ro type?             ipi-qos-types:qos_class_map_default_t
        |        +--ro match-criteria?   ipi-qos-types:qos_match_criteria_t
        +--rw class-maps
        |  +--rw class-map* [name]
        |     +--rw name                    -> ../config/name
        |     +--rw config
        |     |  +--rw name?                    string
        |     |  +--rw type                     ipi-qos-types:qos_class_map_t
        |     |  +--rw match-criteria           ipi-qos-types:qos_match_criteria_t
        |     |  +--rw reference-description?   cml-data-types:cml_line_t
        |     +--ro state
        |     |  +--ro name?                    string
        |     |  +--ro type                     ipi-qos-types:qos_class_map_t
        |     |  +--ro match-criteria           ipi-qos-types:qos_match_criteria_t
        |     |  +--ro reference-description?   cml-data-types:cml_line_t
        |     +--rw match-any-conditions
        |     |  +--rw config
        |     |  |  +--rw access-control-list-name?   string
        |     |  |  +--rw ethertype*                  string
        |     |  |  +--rw traffic-type*               ipi-qos-types:qos_traffic_type_t
        |     |  |  +--rw cos?                        cml-data-types:cml_range_t
        |     |  |  +--rw inner-cos?                  cml-data-types:cml_range_t
        |     |  |  +--rw vlan?                       cml-data-types:cml_range_t
        |     |  |  +--rw inner-vlan?                 cml-data-types:cml_range_t
        |     |  |  +--rw rtp?                        cml-data-types:cml_range_t
        |     |  |  +--rw mpls-exp?                   cml-data-types:cml_range_t {feature-list:HAVE_DIFFSERV}?
        |     |  |  +--rw dscp?                       cml-data-types:cml_range_t
        |     |  |  +--rw ipv6-dscp?                  cml-data-types:cml_range_t {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |     |  |  +--rw precedence?                 cml-data-types:cml_range_t
        |     |  |  +--rw ipv6-precedence?            cml-data-types:cml_range_t {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |     |  +--ro state
        |     |  |  +--ro access-control-list-name?   string
        |     |  |  +--ro ethertype*                  string
        |     |  |  +--ro traffic-type*               ipi-qos-types:qos_traffic_type_t
        |     |  |  +--ro cos?                        cml-data-types:cml_range_t
        |     |  |  +--ro inner-cos?                  cml-data-types:cml_range_t
        |     |  |  +--ro vlan?                       cml-data-types:cml_range_t
        |     |  |  +--ro inner-vlan?                 cml-data-types:cml_range_t
        |     |  |  +--ro rtp?                        cml-data-types:cml_range_t
        |     |  |  +--ro mpls-exp?                   cml-data-types:cml_range_t {feature-list:HAVE_DIFFSERV}?
        |     |  |  +--ro dscp?                       cml-data-types:cml_range_t
        |     |  |  +--ro ipv6-dscp?                  cml-data-types:cml_range_t {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |     |  |  +--ro precedence?                 cml-data-types:cml_range_t
        |     |  |  +--ro ipv6-precedence?            cml-data-types:cml_range_t {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |     |  +--rw ipv4
        |     |  |  +--rw layer4-match* [protocol port-type]
        |     |  |     +--rw protocol     -> ../config/protocol
        |     |  |     +--rw port-type    -> ../config/port-type
        |     |  |     +--rw config
        |     |  |     |  +--rw protocol?    ipi-qos-types:qos_layer4_protocol_t
        |     |  |     |  +--rw port-type?   ipi-qos-types:qos_layer4_port_t
        |     |  |     |  +--rw port         cml-data-types:cml_range_t
        |     |  |     +--ro state
        |     |  |        +--ro protocol?    ipi-qos-types:qos_layer4_protocol_t
        |     |  |        +--ro port-type?   ipi-qos-types:qos_layer4_port_t
        |     |  |        +--ro port         cml-data-types:cml_range_t
        |     |  +--rw ipv6
        |     |     +--rw layer4-match* [protocol port-type] {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |     |        +--rw protocol     -> ../config/protocol
        |     |        +--rw port-type    -> ../config/port-type
        |     |        +--rw config
        |     |        |  +--rw protocol?    ipi-qos-types:qos_layer4_protocol_t
        |     |        |  +--rw port-type?   ipi-qos-types:qos_layer4_port_t
        |     |        |  +--rw port         cml-data-types:cml_range_t
        |     |        +--ro state
        |     |           +--ro protocol?    ipi-qos-types:qos_layer4_protocol_t
        |     |           +--ro port-type?   ipi-qos-types:qos_layer4_port_t
        |     |           +--ro port         cml-data-types:cml_range_t
        |     +--rw match-all-conditions
        |        +--rw config
        |        |  +--rw ethertype-all?         string
        |        |  +--rw traffic-type-all?      ipi-qos-types:qos_traffic_type_t
        |        |  +--rw cos-all?               uint8
        |        |  +--rw inner-cos-all?         uint8
        |        |  +--rw vlan-all?              uint16
        |        |  +--rw inner-vlan-all?        uint16
        |        |  +--rw rtp-all?               uint32
        |        |  +--rw mpls-exp-all?          uint8 {feature-list:HAVE_DIFFSERV}?
        |        |  +--rw dscp-all?              string
        |        |  +--rw ipv6-dscp-all?         string {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |        |  +--rw precedence-all?        string
        |        |  +--rw ipv6-precedence-all?   string {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |        +--ro state
        |        |  +--ro ethertype-all?         string
        |        |  +--ro traffic-type-all?      ipi-qos-types:qos_traffic_type_t
        |        |  +--ro cos-all?               uint8
        |        |  +--ro inner-cos-all?         uint8
        |        |  +--ro vlan-all?              uint16
        |        |  +--ro inner-vlan-all?        uint16
        |        |  +--ro rtp-all?               uint32
        |        |  +--ro mpls-exp-all?          uint8 {feature-list:HAVE_DIFFSERV}?
        |        |  +--ro dscp-all?              string
        |        |  +--ro ipv6-dscp-all?         string {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |        |  +--ro precedence-all?        string
        |        |  +--ro ipv6-precedence-all?   string {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |        +--rw layer4-matches-ipv4
        |        |  +--rw layer4-match-ipv4* [protocol-all port-type-all port-all]
        |        |     +--rw protocol-all     -> ../config/protocol-all
        |        |     +--rw port-type-all    -> ../config/port-type-all
        |        |     +--rw port-all         -> ../config/port-all
        |        |     +--rw config
        |        |     |  +--rw protocol-all?    ipi-qos-types:qos_layer4_protocol_t
        |        |     |  +--rw port-type-all?   ipi-qos-types:qos_layer4_port_t
        |        |     |  +--rw port-all?        uint16
        |        |     +--ro state
        |        |        +--ro protocol-all?    ipi-qos-types:qos_layer4_protocol_t
        |        |        +--ro port-type-all?   ipi-qos-types:qos_layer4_port_t
        |        |        +--ro port-all?        uint16
        |        +--rw layer4-matches-ipv6 {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |           +--rw layer4-match-ipv6* [protocol-all port-type-all port-all]
        |              +--rw protocol-all     -> ../config/protocol-all
        |              +--rw port-type-all    -> ../config/port-type-all
        |              +--rw port-all         -> ../config/port-all
        |              +--rw config
        |              |  +--rw protocol-all?    ipi-qos-types:qos_layer4_protocol_t
        |              |  +--rw port-type-all?   ipi-qos-types:qos_layer4_port_t
        |              |  +--rw port-all?        uint16
        |              +--ro state
        |                 +--ro protocol-all?    ipi-qos-types:qos_layer4_protocol_t
        |                 +--ro port-type-all?   ipi-qos-types:qos_layer4_port_t
        |                 +--ro port-all?        uint16
        +--rw class-maps-queuing
        |  +--rw class-map-queuing* [name]
        |     +--rw name                -> ../config/name
        |     +--rw config
        |     |  +--rw name?                    string
        |     |  +--rw type                     ipi-qos-types:qos_class_map_t
        |     |  +--rw reference-description?   cml-data-types:cml_line_t
        |     +--ro state
        |     |  +--ro name?                    string
        |     |  +--ro type                     ipi-qos-types:qos_class_map_t
        |     |  +--ro reference-description?   cml-data-types:cml_line_t
        |     +--rw match-conditions
        |        +--rw config
        |        |  +--rw vlan-queue?              uint16 {feature-list:NOT_HAVE_MARVELL}?
        |        |  +--rw queue*                   uint8 {feature-list:HAVE_SERVICE_QUEUING_2}?
        |        |  +--rw service-template-name?   string {feature-list:HAVE_SERVICE_QUEUING_2,feature-list:NOT_HAVE_MARVELL}?
        |        |  +--rw interface?               string {feature-list:HAVE_SERVICE_QUEUING_2,feature-list:NOT_HAVE_MARVELL}?
        |        +--ro state
        |           +--ro vlan-queue?              uint16 {feature-list:NOT_HAVE_MARVELL}?
        |           +--ro queue*                   uint8 {feature-list:HAVE_SERVICE_QUEUING_2}?
        |           +--ro service-template-name?   string {feature-list:HAVE_SERVICE_QUEUING_2,feature-list:NOT_HAVE_MARVELL}?
        |           +--ro interface?               string {feature-list:HAVE_SERVICE_QUEUING_2,feature-list:NOT_HAVE_MARVELL}?
        +--rw policy-maps
        |  +--rw policy-map* [policy-map-name]
        |     +--rw policy-map-name    -> ../config/policy-map-name
        |     +--rw config
        |     |  +--rw policy-map-name?         string
        |     |  +--rw type                     ipi-qos-types:qos_policy_map_t
        |     |  +--rw reference-description?   cml-data-types:cml_line_t
        |     +--ro state
        |     |  +--ro policy-map-name?         string
        |     |  +--ro type                     ipi-qos-types:qos_policy_map_t
        |     |  +--ro reference-description?   cml-data-types:cml_line_t
        |     +--rw classes
        |        +--rw class* [class-map-name]
        |           +--rw class-map-name    -> ../config/class-map-name
        |           +--rw config
        |           |  +--rw class-map-name?              ipi-qos-types:qos_policy_map_class_t
        |           |  +--rw type                         ipi-qos-types:qos_policy_map_t
        |           |  +--rw child-service-policy-name?   -> /qos/global/policy-maps/policy-map/policy-map-name
        |           |  +--rw reference-description?       cml-data-types:cml_line_t
        |           +--ro state
        |           |  +--ro class-map-name?              ipi-qos-types:qos_policy_map_class_t
        |           |  +--ro type                         ipi-qos-types:qos_policy_map_t
        |           |  +--ro child-service-policy-name?   -> /qos/global/policy-maps/policy-map/policy-map-name
        |           |  +--ro reference-description?       cml-data-types:cml_line_t
        |           +--rw queue-mode
        |           |  +--rw config
        |           |  |  +--rw byte-compensation?                     int8 {feature-list:HAVE_CUSTOM2_QOS}?
        |           |  |  +--rw delay-tolerance?                       empty {feature-list:HAVE_CUSTOM2_QOS}?
        |           |  |  +--rw priority-level?                        uint8 {feature-list:HAVE_CUSTOM2_QOS}?
        |           |  |  +--rw weighted-fair-queueing-queue-weight?   uint8 {feature-list:HAVE_CUSTOM2_QOS}?
        |           |  +--ro state
        |           |  |  +--ro byte-compensation?                     int8 {feature-list:HAVE_CUSTOM2_QOS}?
        |           |  |  +--ro delay-tolerance?                       empty {feature-list:HAVE_CUSTOM2_QOS}?
        |           |  |  +--ro priority-level?                        uint8 {feature-list:HAVE_CUSTOM2_QOS}?
        |           |  |  +--ro weighted-fair-queueing-queue-weight?   uint8 {feature-list:HAVE_CUSTOM2_QOS}?
        |           |  +--rw red
        |           |  |  +--rw config
        |           |  |  |  +--rw weight?   uint8
        |           |  |  +--ro state
        |           |  |  |  +--ro weight?   uint8
        |           |  |  +--rw wreds {feature-list:HAVE_CUSTOM2_QOS}?
        |           |  |     +--rw wred* [color]
        |           |  |        +--rw color     -> ../config/color
        |           |  |        +--rw config!
        |           |  |        |  +--rw color?                ipi-qos-types:qos_color_key_t
        |           |  |        |  +--rw min-threshold         uint32
        |           |  |        |  +--rw min-threshold-unit    ipi-qos-types:qos_threshold_t
        |           |  |        |  +--rw max-threshold         uint32
        |           |  |        |  +--rw max-threshold-unit    ipi-qos-types:qos_threshold_t
        |           |  |        |  +--rw drop-probability?     uint8
        |           |  |        +--ro state
        |           |  |           +--ro color?                ipi-qos-types:qos_color_key_t
        |           |  |           +--ro min-threshold         uint32
        |           |  |           +--ro min-threshold-unit    ipi-qos-types:qos_threshold_t
        |           |  |           +--ro max-threshold         uint32
        |           |  |           +--ro max-threshold-unit    ipi-qos-types:qos_threshold_t
        |           |  |           +--ro drop-probability?     uint8
        |           |  +--rw tail-drops
        |           |  |  +--rw tail-drop* [max-threshold max-threshold-type]
        |           |  |     +--rw max-threshold         -> ../config/max-threshold
        |           |  |     +--rw max-threshold-type    -> ../config/max-threshold-type
        |           |  |     +--rw config
        |           |  |     |  +--rw max-threshold?        uint32
        |           |  |     |  +--rw max-threshold-type?   ipi-qos-types:qos_threshold_t
        |           |  |     +--ro state
        |           |  |        +--ro max-threshold?        uint32
        |           |  |        +--ro max-threshold-type?   ipi-qos-types:qos_threshold_t
        |           |  +--rw shapes
        |           |     +--rw shape* [rate-value rate-unit]
        |           |        +--rw rate-value    -> ../config/rate-value
        |           |        +--rw rate-unit     -> ../config/rate-unit
        |           |        +--rw config
        |           |        |  +--rw rate-value?   uint32
        |           |        |  +--rw rate-unit?    ipi-qos-types:qos_shape_rate_unit_extended_t
        |           |        +--ro state
        |           |           +--ro rate-value?   uint32
        |           |           +--ro rate-unit?    ipi-qos-types:qos_shape_rate_unit_extended_t
        |           +--rw qos-mode
        |              +--rw config
        |              |  +--rw priority?                  uint16
        |              |  +--rw (set-option)?
        |              |     +--:(port-action)
        |              |     +--:(precedence)
        |              |     |  +--rw precedence-remark?   string
        |              |     +--:(bridge-precedence)
        |              |     +--:(cos)
        |              |     |  +--rw cos-value?           uint8
        |              |     +--:(bridge-cos)
        |              |     +--:(dscp)
        |              |     |  +--rw dscp-value-remark?   string
        |              |     +--:(bridge-dscp)
        |              |     +--:(queue)
        |              |     |  +--rw queue-id?            uint8
        |              |     +--:(bridge-queue)
        |              |     +--:(qos-group)
        |              +--ro state
        |              |  +--ro priority?                  uint16
        |              |  +--ro (set-option)?
        |              |     +--:(port-action)
        |              |     +--:(precedence)
        |              |     |  +--ro precedence-remark?   string
        |              |     +--:(bridge-precedence)
        |              |     +--:(cos)
        |              |     |  +--ro cos-value?           uint8
        |              |     +--:(bridge-cos)
        |              |     +--:(dscp)
        |              |     |  +--ro dscp-value-remark?   string
        |              |     +--:(bridge-dscp)
        |              |     +--:(queue)
        |              |     |  +--ro queue-id?            uint8
        |              |     +--:(bridge-queue)
        |              |     +--:(qos-group)
        |              +--rw police
        |                 +--rw config
        |                 |  +--rw type?       ipi-qos-types:qos_police_t
        |                 |  +--rw cir?        uint64
        |                 |  +--rw cir-unit?   ipi-qos-types:qos_rate_unit_t
        |                 |  +--rw bc?         uint64
        |                 |  +--rw bc-unit?    ipi-qos-types:qos_burst_rate_unit_t
        |                 |  +--rw eir?        uint64 {feature-list:HAVE_CUSTOM2_QOS}?
        |                 |  +--rw eir-unit?   ipi-qos-types:qos_rate_unit_t {feature-list:HAVE_CUSTOM2_QOS}?
        |                 |  +--rw be?         uint32
        |                 |  +--rw be-unit?    ipi-qos-types:qos_burst_rate_unit_t
        |                 +--ro state
        |                    +--ro type?       ipi-qos-types:qos_police_t
        |                    +--ro cir?        uint64
        |                    +--ro cir-unit?   ipi-qos-types:qos_rate_unit_t
        |                    +--ro bc?         uint64
        |                    +--ro bc-unit?    ipi-qos-types:qos_burst_rate_unit_t
        |                    +--ro eir?        uint64 {feature-list:HAVE_CUSTOM2_QOS}?
        |                    +--ro eir-unit?   ipi-qos-types:qos_rate_unit_t {feature-list:HAVE_CUSTOM2_QOS}?
        |                    +--ro be?         uint32
        |                    +--ro be-unit?    ipi-qos-types:qos_burst_rate_unit_t
        +--rw statistics
        |  +--rw config
        |  |  +--rw enabled?   empty
        |  +--ro state
        |     +--ro enabled?   empty
        +--rw red-drop
        |  +--rw config
        |  |  +--rw disabled?   empty {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        |  +--ro state
        |     +--ro disabled?   empty {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
        +--rw vlan-queuing
           +--rw config
           +--ro state
 
  rpcs:
    +---x qos-clear-statistics {feature-list:HAVE_QOS}?
       +---w input
          +---w interface-name?   string
          +---w type?             ipi-qos-types:qos_clear_stats_t
 
 
module: ipi-radius
  +--rw radius
     +--rw vrfs
     |  +--rw vrf* [vrf-name] {feature-list:HAVE_AAA}?
     |     +--rw vrf-name          -> ../config/vrf-name
     |     +--rw config
     |     |  +--rw vrf-name?            -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--rw key-type?            ipi-radius-types:radius_hostp_key_type_t
     |     |  +--rw secret-key-string?   string
     |     |  +--rw timeout?             uint8
     |     +--ro state
     |     |  +--ro vrf-name?            -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--ro key-type?            ipi-radius-types:radius_hostp_key_type_t
     |     |  +--ro secret-key-string?   string
     |     |  +--ro timeout?             uint8
     |     +--rw remote-servers
     |        +--rw server* [host-address] {feature-list:HAVE_AAA}?
     |           +--rw host-address    -> ../config/host-address
     |           +--rw config
     |           |  +--rw host-address?          cml-data-types:cml_hostname_t
     |           |  +--rw sequence-number        uint8
     |           |  +--rw key-type?              ipi-radius-types:radius_hostp_key_type_t
     |           |  +--rw secret-key-string?     string
     |           |  +--rw accounting-port?       uint16
     |           |  +--rw authentication-port?   uint16
     |           |  +--rw timeout?               uint8
     |           +--ro state
     |              +--ro host-address?                          cml-data-types:cml_hostname_t
     |              +--ro sequence-number                        uint8
     |              +--ro key-type?                              ipi-radius-types:radius_hostp_key_type_t
     |              +--ro secret-key-string?                     string
     |              +--ro accounting-port?                       uint16
     |              +--ro authentication-port?                   uint16
     |              +--ro timeout?                               uint8
     |              +--ro last-successful-authentication-time?   yang:date-and-time
     |              +--ro counters
     |                 +--ro successful-authentications?   yang:counter64
     |                 +--ro authentication-failures?      yang:counter64
     |                 +--ro connection-failures?          yang:counter64
     +--rw debug
        +--rw config
        |  +--rw enable?   empty
        +--ro state
           +--ro enable?                  empty
           +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
 
  rpcs:
    +---x radius-clear-all-server-counters {feature-list:HAVE_HOSTPD,feature-list:HAVE_RADIUS_CLIENT}?
    |  +---w input
    |     +---w vrf-name    string
    +---x radius-clear-server-counters {feature-list:HAVE_HOSTPD,feature-list:HAVE_RADIUS_CLIENT}?
    |  +---w input
    |     +---w hostname    cml-data-types:cml_hostpname_t
    |     +---w vrf-name    string
    +---x radius-terminal-debug-on {feature-list:HAVE_HOSTPD,feature-list:HAVE_RADIUS_CLIENT}?
    +---x radius-terminal-debug-off {feature-list:HAVE_HOSTPD,feature-list:HAVE_RADIUS_CLIENT}?
 
module: ipi-ras
 
  rpcs:
    +---x platform-clear-hsl-ipc-stat-values {feature-list:HAVE_HAL,feature-list:HAVE_PLATFORM_RAS}?
    |  +---w input
    |     +---w start-value    uint16
    |     +---w end-value      uint16
    +---x platform-clear-hsl-ipc-stat {feature-list:HAVE_HAL,feature-list:HAVE_PLATFORM_RAS}?
    +---x platform-clear-hsl-mlag-mac-sync {feature-list:HAVE_MLAG}?
    +---x platform-clear-hardware-discard-counters {feature-list:HAVE_HAL,feature-list:HAVE_PLATFORM_RAS}?
    +---x platform-clear-hsl-fdb-debug-counters {feature-list:HAVE_HAL,feature-list:HAVE_PLATFORM_RAS}?
    +---x platform-clear-hsl-system-cpu-stats {feature-list:HAVE_HAL,feature-list:HAVE_PLATFORM_RAS}?
 
 
 
module: ipi-rib-vrf
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-vrf:vrf:
    +--rw global
       +--rw config
       |  +--rw ipv4-enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD}?
       |  +--rw ipv6-enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD,feature-list:HAVE_IPV6}?
       +--ro state
          +--ro ipv4-enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD}?
          +--ro ipv6-enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD,feature-list:HAVE_IPV6}?
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-vrf:vrf:
    +--rw static-routes
       +--rw ipv4
       |  +--rw gateway-interface-routes-global
       |  |  +--rw gateway-interface-route-global* [destination-prefix interface-name enable-global-table-lookup]
       |  |     +--rw destination-prefix            -> ../config/destination-prefix
       |  |     +--rw interface-name                -> ../config/interface-name
       |  |     +--rw enable-global-table-lookup    -> ../config/enable-global-table-lookup
       |  |     +--rw config
       |  |     |  +--rw destination-prefix?           cml-data-types:cml_ipv4_prefix_t
       |  |     |  +--rw interface-name?               string
       |  |     |  +--rw enable-global-table-lookup?   empty
       |  |     |  +--rw track-id?                     uint16 {feature-list:HAVE_OBJ_TRACKING}?
       |  |     +--ro state
       |  |        +--ro destination-prefix?           cml-data-types:cml_ipv4_prefix_t
       |  |        +--ro interface-name?               string
       |  |        +--ro enable-global-table-lookup?   empty
       |  |        +--ro track-id?                     uint16 {feature-list:HAVE_OBJ_TRACKING}?
       |  +--rw routes
       |  |  +--rw route* [destination-prefix gateway-address]
       |  |     +--rw destination-prefix          -> ../config/destination-prefix
       |  |     +--rw gateway-address             -> ../config/gateway-address
       |  |     +--rw config
       |  |     |  +--rw bfd-state?            ipi-rib-types:rib_static_bfd_enable_disable_t {feature-list:HAVE_BFD}?
       |  |     |  +--rw destination-prefix?   cml-data-types:cml_ipv4_prefix_t
       |  |     |  +--rw gateway-address?      inet:ipv4-address
       |  |     +--ro state
       |  |     |  +--ro bfd-state?            ipi-rib-types:rib_static_bfd_enable_disable_t {feature-list:HAVE_BFD}?
       |  |     |  +--ro destination-prefix?   cml-data-types:cml_ipv4_prefix_t
       |  |     |  +--ro gateway-address?      inet:ipv4-address
       |  |     +--rw gateway-interface-routes
       |  |     |  +--rw gateway-interface-route* [interface-name]
       |  |     |     +--rw interface-name    -> ../config/interface-name
       |  |     |     +--rw config
       |  |     |     |  +--rw distance?         uint32
       |  |     |     |  +--rw tag?              uint32
       |  |     |     |  +--rw track-id?         uint16 {feature-list:HAVE_OBJ_TRACKING}?
       |  |     |     |  +--rw description?      cml-data-types:cml_line_t
       |  |     |     |  +--rw interface-name?   string
       |  |     |     +--ro state
       |  |     |        +--ro distance?         uint32
       |  |     |        +--ro tag?              uint32
       |  |     |        +--ro track-id?         uint16 {feature-list:HAVE_OBJ_TRACKING}?
       |  |     |        +--ro description?      cml-data-types:cml_line_t
       |  |     |        +--ro interface-name?   string
       |  |     +--rw interface-routes-global
       |  |        +--rw interface-route-global* [interface-name enable-global-table-lookup]
       |  |           +--rw interface-name                -> ../config/interface-name
       |  |           +--rw enable-global-table-lookup    -> ../config/enable-global-table-lookup
       |  |           +--rw config
       |  |           |  +--rw interface-name?               string
       |  |           |  +--rw enable-global-table-lookup?   empty
       |  |           |  +--rw track-id?                     uint16 {feature-list:HAVE_OBJ_TRACKING}?
       |  |           +--ro state
       |  |              +--ro interface-name?               string
       |  |              +--ro enable-global-table-lookup?   empty
       |  |              +--ro track-id?                     uint16 {feature-list:HAVE_OBJ_TRACKING}?
       |  +--rw interface-routes
       |  |  +--rw interface-route* [destination-prefix interface-name]
       |  |     +--rw destination-prefix    -> ../config/destination-prefix
       |  |     +--rw interface-name        -> ../config/interface-name
       |  |     +--rw config
       |  |     |  +--rw destination-prefix?   cml-data-types:cml_ipv4_prefix_t
       |  |     |  +--rw interface-name?       string
       |  |     |  +--rw distance?             uint32
       |  |     |  +--rw tag?                  uint32
       |  |     |  +--rw track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
       |  |     |  +--rw description?          cml-data-types:cml_line_t
       |  |     +--ro state
       |  |        +--ro destination-prefix?   cml-data-types:cml_ipv4_prefix_t
       |  |        +--ro interface-name?       string
       |  |        +--ro distance?             uint32
       |  |        +--ro tag?                  uint32
       |  |        +--ro track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
       |  |        +--ro description?          cml-data-types:cml_line_t
       |  +--rw multicast-routes
       |     +--rw multicast-route* [source-prefix protocol-type]
       |        +--rw source-prefix    -> ../config/source-prefix
       |        +--rw protocol-type    -> ../config/protocol-type
       |        +--rw config
       |        |  +--rw source-prefix?     cml-data-types:cml_ipv4_prefix_t
       |        |  +--rw protocol-type?     ipi-rib-types:rib_mroute_route_type_t
       |        |  +--rw gateway-address    inet:ipv4-address
       |        |  +--rw distance?          uint32
       |        +--ro state
       |           +--ro source-prefix?     cml-data-types:cml_ipv4_prefix_t
       |           +--ro protocol-type?     ipi-rib-types:rib_mroute_route_type_t
       |           +--ro gateway-address    inet:ipv4-address
       |           +--ro distance?          uint32
       +--rw ipv6 {feature-list:HAVE_IPV6}?
          +--rw interface-routes-global
          |  +--rw interface-route-global* [destination-prefix interface-name enable-ipv6-global-table-lookup]
          |     +--rw destination-prefix                 -> ../config/destination-prefix
          |     +--rw interface-name                     -> ../config/interface-name
          |     +--rw enable-ipv6-global-table-lookup    -> ../config/enable-ipv6-global-table-lookup
          |     +--rw config
          |     |  +--rw destination-prefix?                cml-data-types:cml_ipv6_prefix_t
          |     |  +--rw interface-name?                    string
          |     |  +--rw enable-ipv6-global-table-lookup?   empty
          |     |  +--rw track-id?                          uint16 {feature-list:HAVE_OBJ_TRACKING}?
          |     +--ro state
          |        +--ro destination-prefix?                cml-data-types:cml_ipv6_prefix_t
          |        +--ro interface-name?                    string
          |        +--ro enable-ipv6-global-table-lookup?   empty
          |        +--ro track-id?                          uint16 {feature-list:HAVE_OBJ_TRACKING}?
          +--rw gateway-interface-routes-global
          |  +--rw gateway-interface-route-global* [destination-prefix gateway-address interface-name enable-ipv6-global-table-lookup]
          |     +--rw destination-prefix                 -> ../config/destination-prefix
          |     +--rw gateway-address                    -> ../config/gateway-address
          |     +--rw interface-name                     -> ../config/interface-name
          |     +--rw enable-ipv6-global-table-lookup    -> ../config/enable-ipv6-global-table-lookup
          |     +--rw config
          |     |  +--rw destination-prefix?                cml-data-types:cml_ipv6_prefix_t
          |     |  +--rw gateway-address?                   inet:ipv6-address
          |     |  +--rw interface-name?                    string
          |     |  +--rw enable-ipv6-global-table-lookup?   empty
          |     |  +--rw track-id?                          uint16 {feature-list:HAVE_OBJ_TRACKING}?
          |     +--ro state
          |        +--ro destination-prefix?                cml-data-types:cml_ipv6_prefix_t
          |        +--ro gateway-address?                   inet:ipv6-address
          |        +--ro interface-name?                    string
          |        +--ro enable-ipv6-global-table-lookup?   empty
          |        +--ro track-id?                          uint16 {feature-list:HAVE_OBJ_TRACKING}?
          +--rw routes
          |  +--rw route* [destination-prefix gateway-address]
          |     +--rw destination-prefix    -> ../config/destination-prefix
          |     +--rw gateway-address       -> ../config/gateway-address
          |     +--rw config
          |     |  +--rw bfd-state?                         ipi-rib-types:rib_static_bfd_enable_disable_t {feature-list:HAVE_BFD}?
          |     |  +--rw destination-prefix?                cml-data-types:cml_ipv6_prefix_t
          |     |  +--rw gateway-address?                   inet:ipv6-address
          |     |  +--rw enable-ipv6-global-table-lookup?   empty
          |     +--ro state
          |     |  +--ro bfd-state?                         ipi-rib-types:rib_static_bfd_enable_disable_t {feature-list:HAVE_BFD}?
          |     |  +--ro destination-prefix?                cml-data-types:cml_ipv6_prefix_t
          |     |  +--ro gateway-address?                   inet:ipv6-address
          |     |  +--ro enable-ipv6-global-table-lookup?   empty
          |     +--rw out-interfaces
          |        +--rw out-interface* [interface-name]
          |           +--rw interface-name    -> ../config/interface-name
          |           +--rw config
          |           |  +--rw interface-name?   string
          |           |  +--rw track-id?         uint16 {feature-list:HAVE_OBJ_TRACKING}?
          |           |  +--rw description?      cml-data-types:cml_line_t
          |           +--ro state
          |              +--ro interface-name?   string
          |              +--ro track-id?         uint16 {feature-list:HAVE_OBJ_TRACKING}?
          |              +--ro description?      cml-data-types:cml_line_t
          +--rw interface-routes
          |  +--rw interface-route* [destination-prefix interface-name]
          |     +--rw destination-prefix    -> ../config/destination-prefix
          |     +--rw interface-name        -> ../config/interface-name
          |     +--rw config
          |     |  +--rw destination-prefix?   cml-data-types:cml_ipv6_prefix_t
          |     |  +--rw interface-name?       string
          |     |  +--rw track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
          |     |  +--rw description?          cml-data-types:cml_line_t
          |     +--ro state
          |        +--ro destination-prefix?   cml-data-types:cml_ipv6_prefix_t
          |        +--ro interface-name?       string
          |        +--ro track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
          |        +--ro description?          cml-data-types:cml_line_t
          +--rw multicast-routes
             +--rw multicast-route* [source-prefix protocol-type]
                +--rw source-prefix    -> ../config/source-prefix
                +--rw protocol-type    -> ../config/protocol-type
                +--rw config
                |  +--rw source-prefix?   cml-data-types:cml_ipv6_prefix_t
                |  +--rw protocol-type?   ipi-rib-types:rib_mroute_ipv6_route_type_t
                +--ro state
                |  +--ro source-prefix?   cml-data-types:cml_ipv6_prefix_t
                |  +--ro protocol-type?   ipi-rib-types:rib_mroute_ipv6_route_type_t
                +--rw nexthop
                   +--rw config!
                   |  +--rw gateway-mroute    inet:ipv6-address
                   |  +--rw distance?         uint32
                   +--ro state
                      +--ro gateway-mroute    inet:ipv6-address
                      +--ro distance?         uint32
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-vrf:vrf:
    +--ro ribs
       +--ro ipv4
       |  +--ro ecmp-path-summary* [path-count]
       |  |  +--ro path-count    -> ../state/path-count
       |  |  +--ro state
       |  |     +--ro counters
       |  |     |  +--ro number-of-routes?   yang:counter32
       |  |     +--ro path-count?   uint32
       |  +--ro protocol-rib-summary* [protocol-type]
       |  |  +--ro protocol-type    -> ../state/protocol-type
       |  |  +--ro state
       |  |     +--ro counters
       |  |     |  +--ro number-of-routes?   yang:counter32
       |  |     +--ro protocol-type?   ipi-rib-types:rib_route_type_t
       |  +--ro routes
       |  |  +--ro route* [destination-prefix protocol-type]
       |  |  |  +--ro destination-prefix    -> ../state/destination-prefix
       |  |  |  +--ro protocol-type         -> ../state/protocol-type
       |  |  |  +--ro next-hop* [gateway-address]
       |  |  |  |  +--ro gateway-address    -> ../state/gateway-address
       |  |  |  |  +--ro state
       |  |  |  |     +--ro gateway-address?                string
       |  |  |  |     +--ro recursive-hop*                  string
       |  |  |  |     +--ro interface-name?                 string
       |  |  |  |     +--ro active?                         empty
       |  |  |  |     +--ro fib-installed?                  empty
       |  |  |  |     +--ro object-tracking-reachability?   ipi-rib-types:rib_object_tracking_reachability_status_t {feature-list:HAVE_OBJ_TRACKING}?
       |  |  |  +--ro state
       |  |  |     +--ro destination-prefix?   cml-data-types:cml_ipv4_prefix_t
       |  |  |     +--ro protocol-type?        ipi-rib-types:rib_route_type_t
       |  |  |     +--ro sub-type?             ipi-rib-types:rib_route_sub_type_t
       |  |  |     +--ro distance?             uint8
       |  |  |     +--ro metric?               uint32
       |  |  |     +--ro black-hole?           empty
       |  |  |     +--ro up-time?              string
       |  |  |     +--ro selected?             empty
       |  |  |     +--ro stale?                empty
       |  |  +--ro state
       |  |     +--ro gateway-last-resort?   string
       |  +--ro state
       |     +--ro counters
       |        +--ro total-routes?          yang:counter32
       |        +--ro total-paths?           yang:counter32
       |        +--ro total-routes-in-fib?   yang:counter32
       |        +--ro ecmp-routes?           yang:counter32
       |        +--ro ecmp-paths?            yang:counter32
       +--ro ipv6 {feature-list:HAVE_IPV6}?
          +--ro ecmp-path-summary* [path-count]
          |  +--ro path-count    -> ../state/path-count
          |  +--ro state
          |     +--ro counters
          |     |  +--ro number-of-routes?   yang:counter32
          |     +--ro path-count?   uint32
          +--ro protocol-rib-summary* [protocol-type]
          |  +--ro protocol-type    -> ../state/protocol-type
          |  +--ro state
          |     +--ro counters
          |     |  +--ro number-of-routes?   yang:counter32
          |     +--ro protocol-type?   ipi-rib-types:rib_route_type_t
          +--ro routes
          |  +--ro route* [destination-prefix protocol-type]
          |     +--ro destination-prefix    -> ../state/destination-prefix
          |     +--ro protocol-type         -> ../state/protocol-type
          |     +--ro next-hop* [gateway-address]
          |     |  +--ro gateway-address    -> ../state/gateway-address
          |     |  +--ro state
          |     |     +--ro gateway-address?                string
          |     |     +--ro recursive-hop*                  string
          |     |     +--ro interface-name?                 string
          |     |     +--ro active?                         empty
          |     |     +--ro fib-installed?                  empty
          |     |     +--ro object-tracking-reachability?   ipi-rib-types:rib_object_tracking_reachability_status_t {feature-list:HAVE_OBJ_TRACKING}?
          |     +--ro state
          |        +--ro destination-prefix?   cml-data-types:cml_ipv6_prefix_t
          |        +--ro protocol-type?        ipi-rib-types:rib_route_type_t
          |        +--ro sub-type?             ipi-rib-types:rib_route_sub_type_t
          |        +--ro distance?             uint8
          |        +--ro metric?               uint32
          |        +--ro black-hole?           empty
          |        +--ro up-time?              string
          |        +--ro selected?             empty
          |        +--ro stale?                empty
          +--ro state
             +--ro counters
                +--ro total-routes?          yang:counter32
                +--ro total-paths?           yang:counter32
                +--ro total-routes-in-fib?   yang:counter32
                +--ro ecmp-routes?           yang:counter32
                +--ro ecmp-paths?            yang:counter32
 
  rpcs:
    +---x clear-ip-vrf-route-all {feature-list:HAVE_VRF}?
    |  +---w input
    |     +---w vrf-name    string
    +---x clear-ip-vrf-route {feature-list:HAVE_VRF}?
    |  +---w input
    |     +---w vrf-name          string
    |     +---w prefix-address    cml-data-types:cml_ipv4_prefix_t
    +---x clear-ipv6-vrf-route-all {feature-list:HAVE_VRF,feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w vrf-name    string
    +---x clear-ipv6-vrf-route {feature-list:HAVE_VRF,feature-list:HAVE_IPV6}?
       +---w input
          +---w vrf-name               string
          +---w prefix-ipv6-address    cml-data-types:cml_ipv6_prefix_t
 
module: ipi-rib
  +--rw routing
     +--rw global
     |  +--rw config
     |  |  +--rw ipv4-enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD}?
     |  |  +--rw ipv6-enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD,feature-list:HAVE_IPV6}?
     |  |  +--rw fib-retain?                       ipi-rib-types:rib_fib_retain_t {feature-list:HAVE_L3}?
     |  |  +--rw max-ecmp-paths?                   uint8 {feature-list:HAVE_MULTIPATH}?
     |  |  +--rw max-static-routes?                uint32
     |  |  +--rw max-fib-routes?                   uint32
     |  +--ro state
     |     +--ro ipv4-enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD}?
     |     +--ro ipv6-enable-bfd-all-interfaces?   empty {feature-list:HAVE_BFD,feature-list:HAVE_IPV6}?
     |     +--ro fib-retain?                       ipi-rib-types:rib_fib_retain_t {feature-list:HAVE_L3}?
     |     +--ro max-ecmp-paths?                   uint8 {feature-list:HAVE_MULTIPATH}?
     |     +--ro max-static-routes?                uint32
     |     +--ro max-fib-routes?                   uint32
     +--rw debug
     |  +--rw config
     |  |  +--rw rib-options?            ipi-rib-types:rib_conf_debug_t
     |  |  +--rw ipv4-routing-options?   ipi-rib-types:rib_debug_routing_t
     |  |  +--rw ipv6-routing-options?   ipi-rib-types:rib_debug_routing_t
     |  +--ro state
     |     +--ro terminal-debug-status
     |     |  +--ro rib-options?            ipi-rib-types:rib_debug_t
     |     |  +--ro ip-routing-options?     ipi-rib-types:rib_debug_routing_t
     |     |  +--ro ipv6-routing-options?   ipi-rib-types:rib_debug_routing_t
     |     +--ro rib-options?             ipi-rib-types:rib_conf_debug_t
     |     +--ro ipv4-routing-options?    ipi-rib-types:rib_debug_routing_t
     |     +--ro ipv6-routing-options?    ipi-rib-types:rib_debug_routing_t
     +--rw static-routes
     |  +--rw ipv4
     |  |  +--rw route-vrfs
     |  |  |  +--rw route-vrf* [destination-prefix gateway-address interface-name]
     |  |  |     +--rw destination-prefix    -> ../config/destination-prefix
     |  |  |     +--rw gateway-address       -> ../config/gateway-address
     |  |  |     +--rw interface-name        -> ../config/interface-name
     |  |  |     +--rw config
     |  |  |     |  +--rw destination-prefix?   cml-data-types:cml_ipv4_prefix_t
     |  |  |     |  +--rw gateway-address?      inet:ipv4-address
     |  |  |     |  +--rw interface-name?       string
     |  |  |     +--ro state
     |  |  |        +--ro destination-prefix?   cml-data-types:cml_ipv4_prefix_t
     |  |  |        +--ro gateway-address?      inet:ipv4-address
     |  |  |        +--ro interface-name?       string
     |  |  +--rw routes
     |  |  |  +--rw route* [destination-prefix gateway-address]
     |  |  |     +--rw destination-prefix    -> ../config/destination-prefix
     |  |  |     +--rw gateway-address       -> ../config/gateway-address
     |  |  |     +--rw config
     |  |  |     |  +--rw bfd-state?            ipi-rib-types:rib_static_bfd_enable_disable_t {feature-list:HAVE_BFD}?
     |  |  |     |  +--rw destination-prefix?   cml-data-types:cml_ipv4_prefix_t
     |  |  |     |  +--rw gateway-address?      inet:ipv4-address
     |  |  |     |  +--rw distance?             uint32
     |  |  |     |  +--rw tag?                  uint32
     |  |  |     |  +--rw track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |  |  |     |  +--rw description?          cml-data-types:cml_line_t
     |  |  |     +--ro state
     |  |  |        +--ro bfd-state?            ipi-rib-types:rib_static_bfd_enable_disable_t {feature-list:HAVE_BFD}?
     |  |  |        +--ro destination-prefix?   cml-data-types:cml_ipv4_prefix_t
     |  |  |        +--ro gateway-address?      inet:ipv4-address
     |  |  |        +--ro distance?             uint32
     |  |  |        +--ro tag?                  uint32
     |  |  |        +--ro track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |  |  |        +--ro description?          cml-data-types:cml_line_t
     |  |  +--rw interface-routes
     |  |  |  +--rw interface-route* [destination-prefix interface-name]
     |  |  |     +--rw destination-prefix    -> ../config/destination-prefix
     |  |  |     +--rw interface-name        -> ../config/interface-name
     |  |  |     +--rw config
     |  |  |     |  +--rw destination-prefix?   cml-data-types:cml_ipv4_prefix_t
     |  |  |     |  +--rw interface-name?       string
     |  |  |     |  +--rw distance?             uint32
     |  |  |     |  +--rw tag?                  uint32
     |  |  |     |  +--rw track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |  |  |     |  +--rw description?          cml-data-types:cml_line_t
     |  |  |     +--ro state
     |  |  |        +--ro destination-prefix?   cml-data-types:cml_ipv4_prefix_t
     |  |  |        +--ro interface-name?       string
     |  |  |        +--ro distance?             uint32
     |  |  |        +--ro tag?                  uint32
     |  |  |        +--ro track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |  |  |        +--ro description?          cml-data-types:cml_line_t
     |  |  +--rw multicast-routes
     |  |     +--rw multicast-route* [source-prefix protocol-type]
     |  |        +--rw source-prefix    -> ../config/source-prefix
     |  |        +--rw protocol-type    -> ../config/protocol-type
     |  |        +--rw config
     |  |        |  +--rw source-prefix?     cml-data-types:cml_ipv4_prefix_t
     |  |        |  +--rw protocol-type?     ipi-rib-types:rib_mroute_route_type_t
     |  |        |  +--rw gateway-address    inet:ipv4-address
     |  |        |  +--rw distance?          uint32
     |  |        +--ro state
     |  |           +--ro source-prefix?     cml-data-types:cml_ipv4_prefix_t
     |  |           +--ro protocol-type?     ipi-rib-types:rib_mroute_route_type_t
     |  |           +--ro gateway-address    inet:ipv4-address
     |  |           +--ro distance?          uint32
     |  +--rw ipv6 {feature-list:HAVE_IPV6}?
     |     +--rw routes
     |     |  +--rw route* [destination-prefix gateway-address]
     |     |     +--rw destination-prefix    -> ../config/destination-prefix
     |     |     +--rw gateway-address       -> ../config/gateway-address
     |     |     +--rw config
     |     |     |  +--rw bfd-state?            ipi-rib-types:rib_static_bfd_enable_disable_t {feature-list:HAVE_BFD}?
     |     |     |  +--rw destination-prefix?   cml-data-types:cml_ipv6_prefix_t
     |     |     |  +--rw gateway-address?      inet:ipv6-address
     |     |     |  +--rw distance?             uint32
     |     |     |  +--rw track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |     |     |  +--rw description?          cml-data-types:cml_line_t
     |     |     +--ro state
     |     |        +--ro bfd-state?            ipi-rib-types:rib_static_bfd_enable_disable_t {feature-list:HAVE_BFD}?
     |     |        +--ro destination-prefix?   cml-data-types:cml_ipv6_prefix_t
     |     |        +--ro gateway-address?      inet:ipv6-address
     |     |        +--ro distance?             uint32
     |     |        +--ro track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |     |        +--ro description?          cml-data-types:cml_line_t
     |     +--rw interface-routes
     |     |  +--rw interface-route* [destination-prefix interface-name]
     |     |     +--rw destination-prefix    -> ../config/destination-prefix
     |     |     +--rw interface-name        -> ../config/interface-name
     |     |     +--rw config
     |     |     |  +--rw destination-prefix?   cml-data-types:cml_ipv6_prefix_t
     |     |     |  +--rw interface-name?       string
     |     |     |  +--rw distance?             uint32
     |     |     |  +--rw track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |     |     |  +--rw description?          cml-data-types:cml_line_t
     |     |     +--ro state
     |     |        +--ro destination-prefix?   cml-data-types:cml_ipv6_prefix_t
     |     |        +--ro interface-name?       string
     |     |        +--ro distance?             uint32
     |     |        +--ro track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |     |        +--ro description?          cml-data-types:cml_line_t
     |     +--rw gateway-interface-routes
     |     |  +--rw gateway-interface-route* [destination-prefix gateway-address interface-name]
     |     |     +--rw destination-prefix    -> ../config/destination-prefix
     |     |     +--rw gateway-address       -> ../config/gateway-address
     |     |     +--rw interface-name        -> ../config/interface-name
     |     |     +--rw config
     |     |     |  +--rw destination-prefix?   cml-data-types:cml_ipv6_prefix_t
     |     |     |  +--rw gateway-address?      inet:ipv6-address
     |     |     |  +--rw interface-name?       string
     |     |     |  +--rw distance?             uint32
     |     |     |  +--rw track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |     |     |  +--rw description?          cml-data-types:cml_line_t
     |     |     +--ro state
     |     |        +--ro destination-prefix?   cml-data-types:cml_ipv6_prefix_t
     |     |        +--ro gateway-address?      inet:ipv6-address
     |     |        +--ro interface-name?       string
     |     |        +--ro distance?             uint32
     |     |        +--ro track-id?             uint16 {feature-list:HAVE_OBJ_TRACKING}?
     |     |        +--ro description?          cml-data-types:cml_line_t
     |     +--rw multicast-routes
     |        +--rw multicast-route* [source-prefix protocol-type]
     |           +--rw source-prefix    -> ../config/source-prefix
     |           +--rw protocol-type    -> ../config/protocol-type
     |           +--rw config
     |           |  +--rw source-prefix?   cml-data-types:cml_ipv6_prefix_t
     |           |  +--rw protocol-type?   ipi-rib-types:rib_mroute_ipv6_route_type_t
     |           +--ro state
     |           |  +--ro source-prefix?   cml-data-types:cml_ipv6_prefix_t
     |           |  +--ro protocol-type?   ipi-rib-types:rib_mroute_ipv6_route_type_t
     |           +--rw nexthop
     |              +--rw config!
     |              |  +--rw gateway-mroute    inet:ipv6-address
     |              |  +--rw distance?         uint32
     |              +--ro state
     |                 +--ro gateway-mroute    inet:ipv6-address
     |                 +--ro distance?         uint32
     +--ro srv6-sid-entries {feature-list:HAVE_SRV6}?
     |  +--ro srv6-sid-entry* [sid]
     |     +--ro sid      -> ../state/sid
     |     +--ro state
     |        +--ro sid?            inet:ipv6-address
     |        +--ro action?         string
     |        +--ro ipv6-nexthop?   inet:ipv6-address
     |        +--ro originator?     string
     |        +--ro type?           string
     |        +--ro uptime?         string
     +--rw interfaces
        +--rw interface* [name] {feature-list:HAVE_BFD}?
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?   -> /ipi-interface:interfaces/interface/name
           +--rw state
           |  +--rw name?   -> /ipi-interface:interfaces/interface/name
           +--rw bfd {feature-list:HAVE_BFD}?
              +--rw config
              |  +--rw ipv4-enable-bfd?   ipi-rib-types:rib_bfd_state {feature-list:HAVE_BFD}?
              |  +--rw ipv6-enable-bfd?   ipi-rib-types:rib_bfd_state {feature-list:HAVE_BFD,feature-list:HAVE_IPV6}?
              +--ro state
                 +--ro ipv4-enable-bfd?   ipi-rib-types:rib_bfd_state {feature-list:HAVE_BFD}?
                 +--ro ipv6-enable-bfd?   ipi-rib-types:rib_bfd_state {feature-list:HAVE_BFD,feature-list:HAVE_IPV6}?
 
  rpcs:
    +---x rib-snmp-restart {feature-list:HAVE_SNMP}?
    +---x clear-ip-stale-kernel-routes {feature-list:HAVE_RIBD}?
    +---x clear-ipv6-stale-kernel-routes {feature-list:HAVE_IPV6}?
    +---x clear-ip-route-all {feature-list:HAVE_RIBD}?
    +---x clear-ip-route {feature-list:HAVE_RIBD}?
    |  +---w input
    |     +---w prefix-address    cml-data-types:cml_ipv4_prefix_t
    +---x clear-ipv6-route-all {feature-list:HAVE_IPV6}?
    +---x clear-ipv6-route {feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w prefix-ipv6-address    cml-data-types:cml_ipv6_prefix_t
    +---x rib-terminal-debug-on {feature-list:HAVE_RIBD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-rib-types:rib_debug_t
    +---x rib-terminal-debug-off {feature-list:HAVE_RIBD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-rib-types:rib_debug_t
    +---x rib-terminal-debug-ipv4-routing-on {feature-list:HAVE_RIBD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-rib-types:rib_debug_routing_t
    +---x rib-terminal-debug-ipv4-routing-off {feature-list:HAVE_RIBD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-rib-types:rib_debug_routing_t
    +---x rib-terminal-debug-ipv6-routing-on {feature-list:HAVE_IPV6}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-rib-types:rib_debug_routing_t
    +---x rib-terminal-debug-ipv6-routing-off {feature-list:HAVE_IPV6}?
       +---w input
          +---w terminal-debug-options    ipi-rib-types:rib_debug_routing_t
 
 
 
 
module: ipi-rip
  +--rw rip
     +--rw global
     |  +--rw config
     |  +--ro state
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-rip-types:rip_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-rip-types:rip_debug_t
     |     +--ro terminal-debug-status?   ipi-rip-types:rip_debug_t
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name      -> ../config/name
     |     +--rw config
     |     |  +--rw name?                     -> /ipi-interface:interfaces/interface/name
     |     |  +--rw disable-receive-packet?   empty
     |     |  +--rw disable-send-packet?      empty
     |     |  +--rw receive-version?          ipi-rip-types:rip_version_t
     |     |  +--rw send-version?             ipi-rip-types:rip_version_t
     |     |  +--rw auth-mode?                ipi-rip-types:rip_auth_mode_t
     |     |  +--rw auth-string?              cml-data-types:cml_line_t
     |     |  +--rw auth-keychain?            string
     |     |  +--rw split-horizon?            boolean
     |     +--ro state
     |        +--ro name?                     -> /ipi-interface:interfaces/interface/name
     |        +--ro disable-receive-packet?   empty
     |        +--ro disable-send-packet?      empty
     |        +--ro receive-version?          ipi-rip-types:rip_version_t
     |        +--ro send-version?             ipi-rip-types:rip_version_t
     |        +--ro auth-mode?                ipi-rip-types:rip_auth_mode_t
     |        +--ro auth-string?              cml-data-types:cml_line_t
     |        +--ro auth-keychain?            string
     |        +--ro split-horizon?            boolean
     |        +--ro statistics
     |           +--ro sent-mcast-updates?          yang:counter32
     |           +--ro sent-mcast-requests?         yang:counter32
     |           +--ro sent-unicast-updates?        yang:counter32
     |           +--ro sent-unicast-requests?       yang:counter32
     |           +--ro received-mcast-updates?      yang:counter32
     |           +--ro received-mcast-requests?     yang:counter32
     |           +--ro received-unicast-updates?    yang:counter32
     |           +--ro received-unicast-requests?   yang:counter32
     |           +--ro received-bad-packets?        yang:counter32
     |           +--ro received-bad-routes?         yang:counter32
     +--rw instance
        +--rw config!
        |  +--rw enable-cisco-metric-behavior?   cml-data-types:cml_enable_disable_t
        |  +--rw default-metric?                 uint8
        |  +--rw version?                        uint8
        |  +--rw distance?                       uint8
        |  +--rw network-interfaces*             -> /ipi-interface:interfaces/interface/name
        |  +--rw network-routes*                 cml-data-types:cml_ipv4_prefix_t
        |  +--rw rip-enabled                     empty
        |  +--rw bfd-enable?                     empty {feature-list:HAVE_BFD}?
        |  +--rw receive-buffer-size?            uint32
        |  +--rw passive-interfaces*             -> /ipi-interface:interfaces/interface/name
        |  +--rw static-routes*                  cml-data-types:cml_ipv4_prefix_t
        |  +--rw neighbors*                      inet:ipv4-address
        |  +--rw neighbor-fall-over-bfd*         inet:ipv4-address {feature-list:HAVE_BFD}?
        +--ro state
        |  +--ro enable-cisco-metric-behavior?   cml-data-types:cml_enable_disable_t
        |  +--ro default-metric?                 uint8
        |  +--ro version?                        uint8
        |  +--ro distance?                       uint8
        |  +--ro network-interfaces*             -> /ipi-interface:interfaces/interface/name
        |  +--ro network-routes*                 cml-data-types:cml_ipv4_prefix_t
        |  +--ro rip-enabled                     empty
        |  +--ro bfd-enable?                     empty {feature-list:HAVE_BFD}?
        |  +--ro receive-buffer-size?            uint32
        |  +--ro passive-interfaces*             -> /ipi-interface:interfaces/interface/name
        |  +--ro static-routes*                  cml-data-types:cml_ipv4_prefix_t
        |  +--ro neighbors*                      inet:ipv4-address
        |  +--ro neighbor-fall-over-bfd*         inet:ipv4-address {feature-list:HAVE_BFD}?
        +--rw distances
        |  +--rw distance* [source-prefix]
        |     +--rw source-prefix    -> ../config/source-prefix
        |     +--rw config
        |     |  +--rw source-prefix?      cml-data-types:cml_ipv4_prefix_t
        |     |  +--rw distance            uint8
        |     |  +--rw access-list-name?   string
        |     +--ro state
        |        +--ro source-prefix?      cml-data-types:cml_ipv4_prefix_t
        |        +--ro distance            uint8
        |        +--ro access-list-name?   string
        +--rw timers
        |  +--rw config!
        |  |  +--rw route-table-update-interval    uint32
        |  |  +--rw route-info-timeout-interval    uint32
        |  |  +--rw garbage-collection-interval    uint32
        |  +--ro state
        |     +--ro route-table-update-interval    uint32
        |     +--ro route-info-timeout-interval    uint32
        |     +--ro garbage-collection-interval    uint32
        +--rw maximum-prefix
        |  +--rw config!
        |  |  +--rw max-routes                      uint32
        |  |  +--rw warning-threshold-percentage?   uint32
        |  +--ro state
        |     +--ro max-routes                      uint32
        |     +--ro warning-threshold-percentage?   uint32
        +--rw redistribute-policies
        |  +--rw redistribute-policy* [route-type]
        |     +--rw route-type    -> ../config/route-type
        |     +--rw config
        |     |  +--rw route-type?   ipi-rip-types:rip_redistribute_proto_t
        |     |  +--rw metric?       uint8
        |     |  +--rw route-map?    string
        |     +--ro state
        |        +--ro route-type?   ipi-rip-types:rip_redistribute_proto_t
        |        +--ro metric?       uint8
        |        +--ro route-map?    string
        +--rw default-information
        |  +--rw config!
        |  |  +--rw originate           empty
        |  |  +--rw always-advertise?   empty
        |  |  +--rw route-map?          string
        |  +--ro state
        |     +--ro originate           empty
        |     +--ro always-advertise?   empty
        |     +--ro route-map?          string
        +--rw offset-lists
        |  +--rw offset-list* [direction]
        |     +--rw direction    -> ../config/direction
        |     +--rw config
        |     |  +--rw direction?          ipi-rip-types:rip_direction_t
        |     |  +--rw access-list-name    string
        |     |  +--rw metric              uint8
        |     +--ro state
        |        +--ro direction?          ipi-rip-types:rip_direction_t
        |        +--ro access-list-name    string
        |        +--ro metric              uint8
        +--rw distribute-filter-lists
        |  +--rw distribute-filter-list* [direction]
        |     +--rw direction    -> ../config/direction
        |     +--rw config
        |     |  +--rw direction?          ipi-rip-types:rip_direction_t
        |     |  +--rw access-list-name    string
        |     +--ro state
        |        +--ro direction?          ipi-rip-types:rip_direction_t
        |        +--ro access-list-name    string
        +--rw distribute-prefix-lists
        |  +--rw distribute-prefix-list* [direction]
        |     +--rw direction    -> ../config/direction
        |     +--rw config
        |     |  +--rw direction?          ipi-rip-types:rip_direction_t
        |     |  +--rw access-list-name    string
        |     +--ro state
        |        +--ro direction?          ipi-rip-types:rip_direction_t
        |        +--ro access-list-name    string
        +--rw interfaces
        |  +--rw interface* [name]
        |     +--rw name                       -> ../config/name
        |     +--rw config
        |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
        |     +--ro state
        |     |  +--ro name?   -> /ipi-interface:interfaces/interface/name
        |     +--rw offset-lists
        |     |  +--rw offset-list* [direction]
        |     |     +--rw direction    -> ../config/direction
        |     |     +--rw config
        |     |     |  +--rw direction?          ipi-rip-types:rip_direction_t
        |     |     |  +--rw access-list-name    string
        |     |     |  +--rw metric              uint8
        |     |     +--ro state
        |     |        +--ro direction?          ipi-rip-types:rip_direction_t
        |     |        +--ro access-list-name    string
        |     |        +--ro metric              uint8
        |     +--rw distribute-filter-lists
        |     |  +--rw distribute-filter-list* [direction]
        |     |     +--rw direction    -> ../config/direction
        |     |     +--rw config
        |     |     |  +--rw direction?          ipi-rip-types:rip_direction_t
        |     |     |  +--rw access-list-name    string
        |     |     +--ro state
        |     |        +--ro direction?          ipi-rip-types:rip_direction_t
        |     |        +--ro access-list-name    string
        |     +--rw distribute-prefix-lists
        |        +--rw distribute-prefix-list* [direction]
        |           +--rw direction    -> ../config/direction
        |           +--rw config
        |           |  +--rw direction?          ipi-rip-types:rip_direction_t
        |           |  +--rw access-list-name    string
        |           +--ro state
        |              +--ro direction?          ipi-rip-types:rip_direction_t
        |              +--ro access-list-name    string
        +--ro routes
        |  +--ro route* [prefix]
        |     +--ro prefix      -> ../state/prefix
        |     +--ro state
        |     |  +--ro prefix?         cml-data-types:cml_ipv4_prefix_t
        |     |  +--ro type?           ipi-rip-types:rip_route_type_t
        |     |  +--ro rip-sub-type?   ipi-rip-types:rip_route_subtype_t
        |     |  +--ro tag?            uint16
        |     +--ro nexthops
        |        +--ro nexthop* [address]
        |           +--ro address    -> ../state/address
        |           +--ro state
        |              +--ro address?   inet:ipv4-address
        |              +--ro if-name?   string
        |              +--ro metric?    uint8
        |              +--ro up-time?   string
        +--rw vrfs
           +--rw vrf* [vrf-name]
              +--rw vrf-name                   -> ../config/vrf-name
              +--rw config
              |  +--rw enable-cisco-metric-behavior?   cml-data-types:cml_enable_disable_t
              |  +--rw default-metric?                 uint8
              |  +--rw version?                        uint8
              |  +--rw distance?                       uint8
              |  +--rw network-interfaces*             -> /ipi-interface:interfaces/interface/name
              |  +--rw network-routes*                 cml-data-types:cml_ipv4_prefix_t
              |  +--rw vrf-name?                       -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
              +--ro state
              |  +--ro enable-cisco-metric-behavior?   cml-data-types:cml_enable_disable_t
              |  +--ro default-metric?                 uint8
              |  +--ro version?                        uint8
              |  +--ro distance?                       uint8
              |  +--ro network-interfaces*             -> /ipi-interface:interfaces/interface/name
              |  +--ro network-routes*                 cml-data-types:cml_ipv4_prefix_t
              |  +--ro vrf-name?                       -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
              +--rw distances
              |  +--rw distance* [source-prefix]
              |     +--rw source-prefix    -> ../config/source-prefix
              |     +--rw config
              |     |  +--rw source-prefix?      cml-data-types:cml_ipv4_prefix_t
              |     |  +--rw distance            uint8
              |     |  +--rw access-list-name?   string
              |     +--ro state
              |        +--ro source-prefix?      cml-data-types:cml_ipv4_prefix_t
              |        +--ro distance            uint8
              |        +--ro access-list-name?   string
              +--rw redistribute-policies
              |  +--rw redistribute-policy* [route-type]
              |     +--rw route-type    -> ../config/route-type
              |     +--rw config
              |     |  +--rw route-type?   ipi-rip-types:rip_vrf_redistribute_proto_t
              |     |  +--rw metric?       uint8
              |     |  +--rw route-map?    string
              |     +--ro state
              |        +--ro route-type?   ipi-rip-types:rip_vrf_redistribute_proto_t
              |        +--ro metric?       uint8
              |        +--ro route-map?    string
              +--rw default-information
              |  +--rw config!
              |  |  +--rw originate           empty
              |  |  +--rw always-advertise?   empty
              |  |  +--rw route-map?          string
              |  +--ro state
              |     +--ro originate           empty
              |     +--ro always-advertise?   empty
              |     +--ro route-map?          string
              +--rw offset-lists
              |  +--rw offset-list* [direction]
              |     +--rw direction    -> ../config/direction
              |     +--rw config
              |     |  +--rw direction?          ipi-rip-types:rip_direction_t
              |     |  +--rw access-list-name    string
              |     |  +--rw metric              uint8
              |     +--ro state
              |        +--ro direction?          ipi-rip-types:rip_direction_t
              |        +--ro access-list-name    string
              |        +--ro metric              uint8
              +--rw distribute-filter-lists
              |  +--rw distribute-filter-list* [direction]
              |     +--rw direction    -> ../config/direction
              |     +--rw config
              |     |  +--rw direction?          ipi-rip-types:rip_direction_t
              |     |  +--rw access-list-name    string
              |     +--ro state
              |        +--ro direction?          ipi-rip-types:rip_direction_t
              |        +--ro access-list-name    string
              +--rw distribute-prefix-lists
              |  +--rw distribute-prefix-list* [direction]
              |     +--rw direction    -> ../config/direction
              |     +--rw config
              |     |  +--rw direction?          ipi-rip-types:rip_direction_t
              |     |  +--rw access-list-name    string
              |     +--ro state
              |        +--ro direction?          ipi-rip-types:rip_direction_t
              |        +--ro access-list-name    string
              +--rw interfaces
              |  +--rw interface* [name]
              |     +--rw name                       -> ../config/name
              |     +--rw config
              |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
              |     +--ro state
              |     |  +--ro name?   -> /ipi-interface:interfaces/interface/name
              |     +--rw offset-lists
              |     |  +--rw offset-list* [direction]
              |     |     +--rw direction    -> ../config/direction
              |     |     +--rw config
              |     |     |  +--rw direction?          ipi-rip-types:rip_direction_t
              |     |     |  +--rw access-list-name    string
              |     |     |  +--rw metric              uint8
              |     |     +--ro state
              |     |        +--ro direction?          ipi-rip-types:rip_direction_t
              |     |        +--ro access-list-name    string
              |     |        +--ro metric              uint8
              |     +--rw distribute-filter-lists
              |     |  +--rw distribute-filter-list* [direction]
              |     |     +--rw direction    -> ../config/direction
              |     |     +--rw config
              |     |     |  +--rw direction?          ipi-rip-types:rip_direction_t
              |     |     |  +--rw access-list-name    string
              |     |     +--ro state
              |     |        +--ro direction?          ipi-rip-types:rip_direction_t
              |     |        +--ro access-list-name    string
              |     +--rw distribute-prefix-lists
              |        +--rw distribute-prefix-list* [direction]
              |           +--rw direction    -> ../config/direction
              |           +--rw config
              |           |  +--rw direction?          ipi-rip-types:rip_direction_t
              |           |  +--rw access-list-name    string
              |           +--ro state
              |              +--ro direction?          ipi-rip-types:rip_direction_t
              |              +--ro access-list-name    string
              +--ro routes
                 +--ro route* [prefix]
                    +--ro prefix      -> ../state/prefix
                    +--ro state
                    |  +--ro prefix?         cml-data-types:cml_ipv4_prefix_t
                    |  +--ro type?           ipi-rip-types:rip_route_type_t
                    |  +--ro rip-sub-type?   ipi-rip-types:rip_route_subtype_t
                    |  +--ro tag?            uint16
                    +--ro nexthops
                       +--ro nexthop* [address]
                          +--ro address    -> ../state/address
                          +--ro state
                             +--ro address?   inet:ipv4-address
                             +--ro if-name?   string
                             +--ro metric?    uint8
                             +--ro up-time?   string
 
  rpcs:
    +---x rip-vrf-clear-route {feature-list:HAVE_VRF_RIP,feature-list:HAVE_RIPD}?
    |  +---w input
    |     +---w vrf-name    string
    |     +---w prefix      cml-data-types:cml_ipv4_prefix_t
    +---x rip-vrf-clear-route-all {feature-list:HAVE_VRF_RIP,feature-list:HAVE_RIPD}?
    |  +---w input
    |     +---w vrf-name    string
    +---x rip-clear-route {feature-list:HAVE_RIPD}?
    |  +---w input
    |     +---w route-type    ipi-rip-types:rip_redistribute_proto_clear_t
    +---x rip-clear-route-prefix {feature-list:HAVE_RIPD}?
    |  +---w input
    |     +---w prefix-address    cml-data-types:cml_ipv4_prefix_t
    +---x rip-clear-statistics {feature-list:HAVE_RIPD}?
    |  +---w input
    |     +---w name    string
    +---x rip-snmp-restart {feature-list:HAVE_SNMP}?
    +---x rip-terminal-debugging-on {feature-list:HAVE_RIPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-rip-types:rip_debug_t
    +---x rip-terminal-debugging-off {feature-list:HAVE_RIPD}?
       +---w input
          +---w terminal-debug-options    ipi-rip-types:rip_debug_t
 
 
 
 
module: ipi-ripng
  +--rw ripng
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-ripng-types:ripng_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-ripng-types:ripng_debug_t
     |     +--ro terminal-debug-status?   ipi-ripng-types:ripng_debug_t
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name      -> ../config/name
     |     +--rw config
     |     |  +--rw name?            -> /ipi-interface:interfaces/interface/name
     |     |  +--rw enabled?         empty
     |     |  +--rw split-horizon?   boolean
     |     |  +--rw metric-offset?   uint8
     |     +--ro state
     |        +--ro name?            -> /ipi-interface:interfaces/interface/name
     |        +--ro enabled?         empty
     |        +--ro split-horizon?   boolean
     |        +--ro metric-offset?   uint8
     +--rw instance
        +--rw config!
        |  +--rw passive-interfaces*             -> /ipi-interface:interfaces/interface/name
        |  +--rw distance?                       uint8
        |  +--rw static-routes*                  cml-data-types:cml_ipv6_prefix_t
        |  +--rw aggregate-prefixes*             cml-data-types:cml_ipv6_prefix_t
        |  +--rw default-metric?                 uint8
        |  +--rw originate-default-route?        empty
        |  +--rw enable-cisco-metric-behavior?   boolean
        |  +--rw receive-buffer-size?            uint32
        |  +--rw ripng-enabled                   empty
        +--ro state
        |  +--ro passive-interfaces*             -> /ipi-interface:interfaces/interface/name
        |  +--ro distance?                       uint8
        |  +--ro static-routes*                  cml-data-types:cml_ipv6_prefix_t
        |  +--ro aggregate-prefixes*             cml-data-types:cml_ipv6_prefix_t
        |  +--ro default-metric?                 uint8
        |  +--ro originate-default-route?        empty
        |  +--ro enable-cisco-metric-behavior?   boolean
        |  +--ro receive-buffer-size?            uint32
        |  +--ro ripng-enabled                   empty
        +--rw redistribute-policies
        |  +--rw redistribute-policy* [route-type]
        |     +--rw route-type    -> ../config/route-type
        |     +--rw config
        |     |  +--rw metric?       uint8
        |     |  +--rw route-map?    string
        |     |  +--rw route-type?   ipi-ripng-types:ripng_redistribute_proto_t
        |     +--ro state
        |        +--ro metric?       uint8
        |        +--ro route-map?    string
        |        +--ro route-type?   ipi-ripng-types:ripng_redistribute_proto_t
        +--rw timers
        |  +--rw config!
        |  |  +--rw route-table-update-interval    uint32
        |  |  +--rw route-info-timeout-interval    uint32
        |  |  +--rw garbage-collection-interval    uint32
        |  +--ro state
        |     +--ro route-table-update-interval    uint32
        |     +--ro route-info-timeout-interval    uint32
        |     +--ro garbage-collection-interval    uint32
        +--rw neighbors
        |  +--rw neighbor* [address]
        |     +--rw address    -> ../config/address
        |     +--rw config
        |     |  +--rw address?   inet:ipv6-address
        |     |  +--rw if-name    -> /ipi-interface:interfaces/interface/name
        |     +--ro state
        |        +--ro address?   inet:ipv6-address
        |        +--ro if-name    -> /ipi-interface:interfaces/interface/name
        +--rw interfaces
        |  +--rw interface* [name]
        |     +--rw name                       -> ../config/name
        |     +--rw config
        |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
        |     +--ro state
        |     |  +--ro name?   -> /ipi-interface:interfaces/interface/name
        |     +--rw filtering-route-maps
        |     |  +--rw filtering-route-map* [type]
        |     |     +--rw type      -> ../config/type
        |     |     +--rw config
        |     |     |  +--rw type?             ipi-ripng-types:ripng_direction_t
        |     |     |  +--rw route-map-name    string
        |     |     +--ro state
        |     |        +--ro type?             ipi-ripng-types:ripng_direction_t
        |     |        +--ro route-map-name    string
        |     +--rw offset-lists
        |     |  +--rw offset-list* [direction]
        |     |     +--rw direction    -> ../config/direction
        |     |     +--rw config
        |     |     |  +--rw direction?          ipi-ripng-types:ripng_direction_t
        |     |     |  +--rw access-list-name    string
        |     |     |  +--rw metric              uint8
        |     |     +--ro state
        |     |        +--ro direction?          ipi-ripng-types:ripng_direction_t
        |     |        +--ro access-list-name    string
        |     |        +--ro metric              uint8
        |     +--rw distribute-lists
        |     |  +--rw distribute-list* [direction]
        |     |     +--rw direction    -> ../config/direction
        |     |     +--rw config
        |     |     |  +--rw direction?          ipi-ripng-types:ripng_direction_t
        |     |     |  +--rw access-list-name    string
        |     |     +--ro state
        |     |        +--ro direction?          ipi-ripng-types:ripng_direction_t
        |     |        +--ro access-list-name    string
        |     +--rw distribute-prefix-lists
        |        +--rw distribute-prefix-list* [direction]
        |           +--rw direction    -> ../config/direction
        |           +--rw config
        |           |  +--rw direction?   ipi-ripng-types:ripng_direction_t
        |           |  +--rw list-name    string
        |           +--ro state
        |              +--ro direction?   ipi-ripng-types:ripng_direction_t
        |              +--ro list-name    string
        +--rw offset-lists
        |  +--rw offset-list* [direction]
        |     +--rw direction    -> ../config/direction
        |     +--rw config
        |     |  +--rw direction?          ipi-ripng-types:ripng_direction_t
        |     |  +--rw access-list-name    string
        |     |  +--rw metric              uint8
        |     +--ro state
        |        +--ro direction?          ipi-ripng-types:ripng_direction_t
        |        +--ro access-list-name    string
        |        +--ro metric              uint8
        +--rw distribute-lists
        |  +--rw distribute-list* [direction]
        |     +--rw direction    -> ../config/direction
        |     +--rw config
        |     |  +--rw direction?          ipi-ripng-types:ripng_direction_t
        |     |  +--rw access-list-name    string
        |     +--ro state
        |        +--ro direction?          ipi-ripng-types:ripng_direction_t
        |        +--ro access-list-name    string
        +--rw distribute-prefix-lists
        |  +--rw distribute-prefix-list* [direction]
        |     +--rw direction    -> ../config/direction
        |     +--rw config
        |     |  +--rw direction?   ipi-ripng-types:ripng_direction_t
        |     |  +--rw list-name    string
        |     +--ro state
        |        +--ro direction?   ipi-ripng-types:ripng_direction_t
        |        +--ro list-name    string
        +--ro routes
        |  +--ro route* [prefix]
        |     +--ro prefix             -> ../state/prefix
        |     +--ro state
        |     |  +--ro prefix?     cml-data-types:cml_ipv6_prefix_t
        |     |  +--ro type?       ipi-ripng-types:ripng_route_type_t
        |     |  +--ro sub-type?   ipi-ripng-types:ripng_route_sub_type_t
        |     |  +--ro tag?        uint16
        |     +--ro next-hops
        |     |  +--ro next-hop* [address]
        |     |     +--ro address    -> ../state/address
        |     |     +--ro state
        |     |        +--ro address?   inet:ipv6-address
        |     |        +--ro if-name?   string
        |     |        +--ro metric?    uint8
        |     |        +--ro up-time?   string
        |     +--ro aggregate-route
        |        +--ro state
        |           +--ro count?    uint32
        |           +--ro metric?   uint8
        |           +--ro tag?      uint16
        +--rw vrfs
           +--rw vrf* [vrf-name]
              +--rw vrf-name                   -> ../config/vrf-name
              +--rw config
              |  +--rw passive-interfaces*             -> /ipi-interface:interfaces/interface/name
              |  +--rw distance?                       uint8
              |  +--rw static-routes*                  cml-data-types:cml_ipv6_prefix_t
              |  +--rw aggregate-prefixes*             cml-data-types:cml_ipv6_prefix_t
              |  +--rw default-metric?                 uint8
              |  +--rw originate-default-route?        empty
              |  +--rw enable-cisco-metric-behavior?   boolean
              |  +--rw receive-buffer-size?            uint32
              |  +--rw vrf-name?                       -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
              +--ro state
              |  +--ro passive-interfaces*             -> /ipi-interface:interfaces/interface/name
              |  +--ro distance?                       uint8
              |  +--ro static-routes*                  cml-data-types:cml_ipv6_prefix_t
              |  +--ro aggregate-prefixes*             cml-data-types:cml_ipv6_prefix_t
              |  +--ro default-metric?                 uint8
              |  +--ro originate-default-route?        empty
              |  +--ro enable-cisco-metric-behavior?   boolean
              |  +--ro receive-buffer-size?            uint32
              |  +--ro vrf-name?                       -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
              +--rw redistribute-policies
              |  +--rw redistribute-policy* [route-type]
              |     +--rw route-type    -> ../config/route-type
              |     +--rw config
              |     |  +--rw metric?       uint8
              |     |  +--rw route-map?    string
              |     |  +--rw route-type?   ipi-ripng-types:ripng_vrf_redistribute_proto_t
              |     +--ro state
              |        +--ro metric?       uint8
              |        +--ro route-map?    string
              |        +--ro route-type?   ipi-ripng-types:ripng_vrf_redistribute_proto_t
              +--rw timers
              |  +--rw config!
              |  |  +--rw route-table-update-interval    uint32
              |  |  +--rw route-info-timeout-interval    uint32
              |  |  +--rw garbage-collection-interval    uint32
              |  +--ro state
              |     +--ro route-table-update-interval    uint32
              |     +--ro route-info-timeout-interval    uint32
              |     +--ro garbage-collection-interval    uint32
              +--rw neighbors
              |  +--rw neighbor* [address]
              |     +--rw address    -> ../config/address
              |     +--rw config
              |     |  +--rw address?   inet:ipv6-address
              |     |  +--rw if-name    -> /ipi-interface:interfaces/interface/name
              |     +--ro state
              |        +--ro address?   inet:ipv6-address
              |        +--ro if-name    -> /ipi-interface:interfaces/interface/name
              +--rw interfaces
              |  +--rw interface* [name]
              |     +--rw name                       -> ../config/name
              |     +--rw config
              |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
              |     +--ro state
              |     |  +--ro name?   -> /ipi-interface:interfaces/interface/name
              |     +--rw filtering-route-maps
              |     |  +--rw filtering-route-map* [type]
              |     |     +--rw type      -> ../config/type
              |     |     +--rw config
              |     |     |  +--rw type?             ipi-ripng-types:ripng_direction_t
              |     |     |  +--rw route-map-name    string
              |     |     +--ro state
              |     |        +--ro type?             ipi-ripng-types:ripng_direction_t
              |     |        +--ro route-map-name    string
              |     +--rw offset-lists
              |     |  +--rw offset-list* [direction]
              |     |     +--rw direction    -> ../config/direction
              |     |     +--rw config
              |     |     |  +--rw direction?          ipi-ripng-types:ripng_direction_t
              |     |     |  +--rw access-list-name    string
              |     |     |  +--rw metric              uint8
              |     |     +--ro state
              |     |        +--ro direction?          ipi-ripng-types:ripng_direction_t
              |     |        +--ro access-list-name    string
              |     |        +--ro metric              uint8
              |     +--rw distribute-lists
              |     |  +--rw distribute-list* [direction]
              |     |     +--rw direction    -> ../config/direction
              |     |     +--rw config
              |     |     |  +--rw direction?          ipi-ripng-types:ripng_direction_t
              |     |     |  +--rw access-list-name    string
              |     |     +--ro state
              |     |        +--ro direction?          ipi-ripng-types:ripng_direction_t
              |     |        +--ro access-list-name    string
              |     +--rw distribute-prefix-lists
              |        +--rw distribute-prefix-list* [direction]
              |           +--rw direction    -> ../config/direction
              |           +--rw config
              |           |  +--rw direction?   ipi-ripng-types:ripng_direction_t
              |           |  +--rw list-name    string
              |           +--ro state
              |              +--ro direction?   ipi-ripng-types:ripng_direction_t
              |              +--ro list-name    string
              +--rw offset-lists
              |  +--rw offset-list* [direction]
              |     +--rw direction    -> ../config/direction
              |     +--rw config
              |     |  +--rw direction?          ipi-ripng-types:ripng_direction_t
              |     |  +--rw access-list-name    string
              |     |  +--rw metric              uint8
              |     +--ro state
              |        +--ro direction?          ipi-ripng-types:ripng_direction_t
              |        +--ro access-list-name    string
              |        +--ro metric              uint8
              +--rw distribute-lists
              |  +--rw distribute-list* [direction]
              |     +--rw direction    -> ../config/direction
              |     +--rw config
              |     |  +--rw direction?          ipi-ripng-types:ripng_direction_t
              |     |  +--rw access-list-name    string
              |     +--ro state
              |        +--ro direction?          ipi-ripng-types:ripng_direction_t
              |        +--ro access-list-name    string
              +--rw distribute-prefix-lists
              |  +--rw distribute-prefix-list* [direction]
              |     +--rw direction    -> ../config/direction
              |     +--rw config
              |     |  +--rw direction?   ipi-ripng-types:ripng_direction_t
              |     |  +--rw list-name    string
              |     +--ro state
              |        +--ro direction?   ipi-ripng-types:ripng_direction_t
              |        +--ro list-name    string
              +--ro routes
                 +--ro route* [prefix]
                    +--ro prefix             -> ../state/prefix
                    +--ro state
                    |  +--ro prefix?     cml-data-types:cml_ipv6_prefix_t
                    |  +--ro type?       ipi-ripng-types:ripng_route_type_t
                    |  +--ro sub-type?   ipi-ripng-types:ripng_route_sub_type_t
                    |  +--ro tag?        uint16
                    +--ro next-hops
                    |  +--ro next-hop* [address]
                    |     +--ro address    -> ../state/address
                    |     +--ro state
                    |        +--ro address?   inet:ipv6-address
                    |        +--ro if-name?   string
                    |        +--ro metric?    uint8
                    |        +--ro up-time?   string
                    +--ro aggregate-route
                       +--ro state
                          +--ro count?    uint32
                          +--ro metric?   uint8
                          +--ro tag?      uint16
 
  rpcs:
    +---x ripng-terminal-debug-on {feature-list:HAVE_RIPNGD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-ripng-types:ripng_debug_t
    +---x ripng-terminal-debug-off {feature-list:HAVE_RIPNGD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-ripng-types:ripng_debug_t
    +---x ripng-clear-route {feature-list:HAVE_RIPNGD}?
    |  +---w input
    |     +---w type    ipi-ripng-types:ripng_clear_route_type_t
    +---x ripng-clear-route-prefix {feature-list:HAVE_RIPNGD}?
       +---w input
          +---w prefix    cml-data-types:cml_ipv6_prefix_t
 
 
module: ipi-role-based-access-control
  +--rw role-based-access-control
     +--rw config
     |  +--rw enable?   empty
     +--ro state
     |  +--ro enable?   empty
     +--rw policies
     |  +--rw policy* [policy-name]
     |     +--rw policy-name    -> ../config/policy-name
     |     +--rw config
     |     |  +--rw policy-name?   string
     |     +--ro state
     |     |  +--ro policy-name?   string
     |     +--rw rules
     |        +--rw rule* [rule-name]
     |           +--rw rule-name    -> ../config/rule-name
     |           +--rw config
     |           |  +--rw rule-name?      cml-data-types:cml_line_t
     |           |  +--rw rule-type       ipi-role-based-access-control-types:rbac_rule_type_t
     |           |  +--rw command-mode*   string
     |           +--ro state
     |              +--ro rule-name?      cml-data-types:cml_line_t
     |              +--ro rule-type       ipi-role-based-access-control-types:rbac_rule_type_t
     |              +--ro command-mode*   string
     +--rw roles
        +--rw role* [role-name]
           +--rw role-name    -> ../config/role-name
           +--rw config
           |  +--rw role-name?        string
           |  +--rw default-policy?   ipi-role-based-access-control-types:rbac_default_rule_type_t
           +--ro state
           |  +--ro role-name?        string
           |  +--ro default-policy?   ipi-role-based-access-control-types:rbac_default_rule_type_t
           +--rw policies
              +--rw policy* [policy-name]
                 +--rw policy-name    -> ../config/policy-name
                 +--rw config
                 |  +--rw policy-name?   -> /role-based-access-control/policies/policy/policy-name
                 +--ro state
                    +--ro policy-name?   -> /role-based-access-control/policies/policy/policy-name
 
 
module: ipi-routemap
  +--rw routemaps
     +--rw routemap* [routemap-name sequence-id]
        +--rw routemap-name        -> ../config/routemap-name
        +--rw sequence-id          -> ../config/sequence-id
        +--rw config
        |  +--rw routemap-name?   string
        |  +--rw action           ipi-routemap-types:rmap_action_type_t
        |  +--rw sequence-id?     uint32
        +--ro state
        |  +--ro routemap-name?   string
        |  +--ro action           ipi-routemap-types:rmap_action_type_t
        |  +--ro sequence-id?     uint32
        +--rw continue-on-match
        |  +--rw config
        |  |  +--rw continue-to-next-sequence?   empty
        |  |  +--rw next-sequence-number?        uint32
        |  +--ro state
        |     +--ro continue-to-next-sequence?   empty
        |     +--ro next-sequence-number?        uint32
        +--rw match-condition
        |  +--rw config
        |  |  +--rw interface-name?         -> /ipi-interface:interfaces/interface/name
        |  |  +--rw metric?                 uint32
        |  |  +--rw vlan-id?                cml-data-types:cml_range_t {feature-list:HAVE_VLAN,feature-list:HAVE_PBR}?
        |  |  +--rw mac-access-list-name?   string {feature-list:HAVE_PBR}?
        |  |  +--rw tag?                    uint32
        |  |  +--rw route-type?             ipi-routemap-types:rmap_route_type_t
        |  |  +--rw as-path-name?           string
        |  |  +--rw route-origin?           ipi-routemap-types:rmap_origin_type_t
        |  +--ro state
        |  |  +--ro interface-name?         -> /ipi-interface:interfaces/interface/name
        |  |  +--ro metric?                 uint32
        |  |  +--ro vlan-id?                cml-data-types:cml_range_t {feature-list:HAVE_VLAN,feature-list:HAVE_PBR}?
        |  |  +--ro mac-access-list-name?   string {feature-list:HAVE_PBR}?
        |  |  +--ro tag?                    uint32
        |  |  +--ro route-type?             ipi-routemap-types:rmap_route_type_t
        |  |  +--ro as-path-name?           string
        |  |  +--ro route-origin?           ipi-routemap-types:rmap_origin_type_t
        |  +--rw route-filter {feature-list:HAVE_PBR}?
        |  |  +--rw packet-length-constraints* [packet-min-length packet-max-length] {feature-list:HAVE_PBR}?
        |  |     +--rw packet-min-length    -> ../config/packet-min-length
        |  |     +--rw packet-max-length    -> ../config/packet-max-length
        |  |     +--rw config
        |  |     |  +--rw packet-min-length?   uint16
        |  |     |  +--rw packet-max-length?   uint16
        |  |     +--ro state
        |  |        +--ro packet-min-length?   uint16
        |  |        +--ro packet-max-length?   uint16
        |  +--rw communities
        |  |  +--rw community* [community-identifier]
        |  |     +--rw community-identifier    -> ../config/community-identifier
        |  |     +--rw config
        |  |     |  +--rw community-identifier?   ipi-routemap-types:rmap_community_string_t
        |  |     |  +--rw match-type              ipi-routemap-types:rmap_community_type_t
        |  |     +--ro state
        |  |        +--ro community-identifier?   ipi-routemap-types:rmap_community_string_t
        |  |        +--ro match-type              ipi-routemap-types:rmap_community_type_t
        |  +--rw extended-communities
        |  |  +--rw extended-community* [extended-community-identifier]
        |  |     +--rw extended-community-identifier    -> ../config/extended-community-identifier
        |  |     +--rw config
        |  |     |  +--rw extended-community-identifier?   ipi-routemap-types:rmap_extcommunity_string_t
        |  |     |  +--rw match-type                       ipi-routemap-types:rmap_community_type_t
        |  |     +--ro state
        |  |        +--ro extended-community-identifier?   ipi-routemap-types:rmap_extcommunity_string_t
        |  |        +--ro match-type                       ipi-routemap-types:rmap_community_type_t
        |  +--rw ipv4
        |  |  +--rw config
        |  |  |  +--rw ip-access-list-name?         string
        |  |  |  +--rw ip-prefix-list-name?         string
        |  |  |  +--rw peer-access-list-name?       string
        |  |  |  +--rw next-hop-prefix-list-name?   string
        |  |  |  +--rw next-hop-access-list-name?   string
        |  |  +--ro state
        |  |     +--ro ip-access-list-name?         string
        |  |     +--ro ip-prefix-list-name?         string
        |  |     +--ro peer-access-list-name?       string
        |  |     +--ro next-hop-prefix-list-name?   string
        |  |     +--ro next-hop-access-list-name?   string
        |  +--rw ipv6 {feature-list:HAVE_IPV6}?
        |  |  +--rw config {feature-list:HAVE_IPV6}?
        |  |  |  +--rw ipv6-address-access-list-name?   string
        |  |  |  +--rw ipv6-prefix-list-name?           string
        |  |  |  +--rw peer-access-list-name?           string
        |  |  |  +--rw next-hop-prefix-list-name?       string
        |  |  |  +--rw next-hop-match-string?           ipi-routemap-types:rmap_ipv6_nexthop_t
        |  |  +--ro state
        |  |     +--ro ipv6-address-access-list-name?   string
        |  |     +--ro ipv6-prefix-list-name?           string
        |  |     +--ro peer-access-list-name?           string
        |  |     +--ro next-hop-prefix-list-name?       string
        |  |     +--ro next-hop-match-string?           ipi-routemap-types:rmap_ipv6_nexthop_t
        |  +--rw large-match-community
        |     +--rw config!
        |     |  +--rw large-community-number-match?   cml-data-types:cml_line_t
        |     +--ro state
        |        +--ro large-community-number-match?   cml-data-types:cml_line_t
        +--rw set-action
           +--rw config
           |  +--rw forward-interface-type?         ipi-routemap-types:rmap_forward_interface_type_t
           |  +--rw metric-value?                   string
           |  +--rw route-tag?                      uint32
           |  +--rw weight?                         uint32
           |  +--rw local-preference?               uint32
           |  +--rw route-origin-type?              ipi-routemap-types:rmap_origin_type_t
           |  +--rw metric-type?                    ipi-routemap-types:rmap_metric_type_t
           |  +--rw aigp-metric?                    ipi-routemap-types:aigp_metric_type_t {feature-list:HAVE_BGP_AIGP}?
           |  +--rw level-type?                     ipi-routemap-types:rmap_level_type_t
           |  +--rw enable-as-path-tag?             empty
           |  +--rw atomic-aggregate?               empty
           |  +--rw delete-community-value?         ipi-routemap-types:rmap_community_string_t
           |  +--rw bgp-originator-id?              inet:ipv4-address
           |  +--rw as-path-prepend?                cml-data-types:cml_line_t
           |  +--rw ext-community-site-of-origin?   cml-data-types:cml_line_t
           |  +--rw ext-community-color?            uint32
           +--ro state
           |  +--ro forward-interface-type?         ipi-routemap-types:rmap_forward_interface_type_t
           |  +--ro metric-value?                   string
           |  +--ro route-tag?                      uint32
           |  +--ro weight?                         uint32
           |  +--ro local-preference?               uint32
           |  +--ro route-origin-type?              ipi-routemap-types:rmap_origin_type_t
           |  +--ro metric-type?                    ipi-routemap-types:rmap_metric_type_t
           |  +--ro aigp-metric?                    ipi-routemap-types:aigp_metric_type_t {feature-list:HAVE_BGP_AIGP}?
           |  +--ro level-type?                     ipi-routemap-types:rmap_level_type_t
           |  +--ro enable-as-path-tag?             empty
           |  +--ro atomic-aggregate?               empty
           |  +--ro delete-community-value?         ipi-routemap-types:rmap_community_string_t
           |  +--ro bgp-originator-id?              inet:ipv4-address
           |  +--ro as-path-prepend?                cml-data-types:cml_line_t
           |  +--ro ext-community-site-of-origin?   cml-data-types:cml_line_t
           |  +--ro ext-community-color?            uint32
           +--rw ipv4
           |  +--rw config
           |  |  +--rw ip-nexthop-address?        inet:ipv4-address
           |  |  +--rw use-peer-address?          empty
           |  |  +--rw default-nexthop-address?   inet:ipv4-address {feature-list:HAVE_PBR}?
           |  |  +--rw vpnv4-nexthop-address?     inet:ipv4-address {feature-list:HAVE_VRF}?
           |  +--ro state
           |     +--ro ip-nexthop-address?        inet:ipv4-address
           |     +--ro use-peer-address?          empty
           |     +--ro default-nexthop-address?   inet:ipv4-address {feature-list:HAVE_PBR}?
           |     +--ro vpnv4-nexthop-address?     inet:ipv4-address {feature-list:HAVE_VRF}?
           +--rw ipv6
           |  +--rw config
           |  |  +--rw ipv6-nexthop-address?           inet:ipv6-address {feature-list:HAVE_IPV6}?
           |  |  +--rw default-ipv6-nexthop-address?   inet:ipv6-address {feature-list:HAVE_PBR,feature-list:HAVE_IPV6}?
           |  |  +--rw local-ipv6-nexthop-address?     inet:ipv6-address {feature-list:HAVE_IPV6}?
           |  +--ro state
           |     +--ro ipv6-nexthop-address?           inet:ipv6-address {feature-list:HAVE_IPV6}?
           |     +--ro default-ipv6-nexthop-address?   inet:ipv6-address {feature-list:HAVE_PBR,feature-list:HAVE_IPV6}?
           |     +--ro local-ipv6-nexthop-address?     inet:ipv6-address {feature-list:HAVE_IPV6}?
           +--rw bgp-aggregator-attributes
           |  +--rw bgp-aggregator-attribute* [as-number aggregator-ip-address]
           |     +--rw as-number                -> ../config/as-number
           |     +--rw aggregator-ip-address    -> ../config/aggregator-ip-address
           |     +--rw config
           |     |  +--rw as-number?               uint32
           |     |  +--rw aggregator-ip-address?   inet:ipv4-address
           |     +--ro state
           |        +--ro as-number?               uint32
           |        +--ro aggregator-ip-address?   inet:ipv4-address
           +--rw extended-community
           |  +--rw route-targets
           |  |  +--rw route-target* [ext-community-rt]
           |  |     +--rw ext-community-rt    -> ../config/ext-community-rt
           |  |     +--rw config
           |  |     |  +--rw ext-community-rt?   cml-data-types:cml_line_t
           |  |     |  +--rw additive-type       ipi-routemap-types:rmap_additive_type_t
           |  |     +--ro state
           |  |        +--ro ext-community-rt?   cml-data-types:cml_line_t
           |  |        +--ro additive-type       ipi-routemap-types:rmap_additive_type_t
           |  +--rw costs
           |     +--rw cost* [comparison-type community-id cost-value]
           |        +--rw comparison-type    -> ../config/comparison-type
           |        +--rw community-id       -> ../config/community-id
           |        +--rw cost-value         -> ../config/cost-value
           |        +--rw config
           |        |  +--rw comparison-type?   ipi-routemap-types:rmap_ext_cost_type_t
           |        |  +--rw community-id?      uint8
           |        |  +--rw cost-value?        uint32
           |        +--ro state
           |           +--ro comparison-type?   ipi-routemap-types:rmap_ext_cost_type_t
           |           +--ro community-id?      uint8
           |           +--ro cost-value?        uint32
           +--rw dampening
           |  +--rw config!
           |  |  +--rw enable-dampening                 empty
           |  |  +--rw reachability-half-life-time?     uint8
           |  |  +--rw reuse-time-limit?                uint16
           |  |  +--rw suppress-time-limit?             uint16
           |  |  +--rw max-suppress-time-limit?         uint8
           |  |  +--rw unreachability-half-life-time?   uint8
           |  +--ro state
           |     +--ro enable-dampening                 empty
           |     +--ro reachability-half-life-time?     uint8
           |     +--ro reuse-time-limit?                uint16
           |     +--ro suppress-time-limit?             uint16
           |     +--ro max-suppress-time-limit?         uint8
           |     +--ro unreachability-half-life-time?   uint8
           +--rw communities
           |  +--rw config
           |  |  +--rw enable-internet?            empty
           |  |  +--rw enable-local-as?            empty
           |  |  +--rw enable-no-advertise?        empty
           |  |  +--rw enable-no-export?           empty
           |  |  +--rw no-community-attribute?     empty
           |  |  +--rw additive-set?               empty
           |  |  +--rw community-number?           cml-data-types:cml_line_t
           |  |  +--rw community-with-as-number?   cml-data-types:cml_line_t
           |  +--ro state
           |     +--ro enable-internet?            empty
           |     +--ro enable-local-as?            empty
           |     +--ro enable-no-advertise?        empty
           |     +--ro enable-no-export?           empty
           |     +--ro no-community-attribute?     empty
           |     +--ro additive-set?               empty
           |     +--ro community-number?           cml-data-types:cml_line_t
           |     +--ro community-with-as-number?   cml-data-types:cml_line_t
           +--rw large-community
              +--rw config!
              |  +--rw large-community-number-set?   cml-data-types:cml_line_t
              +--ro state
                 +--ro large-community-number-set?   cml-data-types:cml_line_t
 
 
 
 
 
module: ipi-rsvp
  +--rw rsvp-te
     +--ro admin-group* [name]
     |  +--ro name     -> ../state/name
     |  +--ro state
     |     +--ro name?    string
     |     +--ro value?   uint32
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-rsvp-types:rsvp_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-rsvp-types:rsvp_debug_t
     |     +--ro terminal-debug-status?   ipi-rsvp-types:rsvp_debug_t
     +--rw snmp-configuration
     |  +--rw config
     |  |  +--rw enable-rsvp-trap?   empty {feature-list:HAVE_SNMP}?
     |  +--ro state
     |     +--ro enable-rsvp-trap?   empty {feature-list:HAVE_SNMP}?
     +--ro dscp
     |  +--ro state
     |     +--ro class-exp-mapping*         uint32 {feature-list:NOT_HAVE_SWFWDR}?
     |     +--ro class-exp-mapping-value*   uint8 {feature-list:NOT_HAVE_SWFWDR}?
     +--rw rsvp-instance
     |  +--ro summary-refresh* [address]
     |  |  +--ro address    -> ../state/address
     |  |  +--ro state
     |  |     +--ro address?              inet:ip-address
     |  |     +--ro trunk-id?             uint32
     |  |     +--ro lsp-id?               uint16
     |  |     +--ro session-frr-type?     ipi-rsvp-types:rsvp_session_frr_type_t
     |  |     +--ro ingress?              inet:ip-address
     |  |     +--ro egress?               inet:ip-address
     |  |     +--ro trunk-session-type?   ipi-rsvp-types:rsvp_sess_type_t
     |  +--ro local-address-ipv4* [addr]
     |  |  +--ro addr     -> ../state/addr
     |  |  +--ro state
     |  |     +--ro if-name?   -> /ipi-interface:interfaces/interface/name
     |  |     +--ro family?    ipi-rsvp-types:rsvp_addr_family_t
     |  |     +--ro addr?      inet:ip-address
     |  +--ro local-address-ipv6* [addr]
     |  |  +--ro addr     -> ../state/addr
     |  |  +--ro state
     |  |     +--ro if-name?   -> /ipi-interface:interfaces/interface/name
     |  |     +--ro family?    ipi-rsvp-types:rsvp_addr_family_t
     |  |     +--ro addr?      inet:ip-address
     |  +--ro rsvp-nexthop* [prefix]
     |  |  +--ro prefix    -> ../state/prefix
     |  |  +--ro state
     |  |     +--ro prefix?               cml-data-types:cml_ip_prefix_addr_t
     |  |     +--ro number-of-sessions?   uint32
     |  |     +--ro ip-addr?              inet:ip-address
     |  |     +--ro if-name?              -> /ipi-interface:interfaces/interface/name
     |  +--rw config!
     |  |  +--rw rsvp                               ipi-rsvp-types:rsvp_instance_t
     |  |  +--rw enable-explicit-null?              empty
     |  |  +--rw enable-local-protection?           empty
     |  |  +--rw enable-php?                        empty
     |  |  +--rw enable-entropy-label-capability?   empty {feature-list:NOT_HAVE_CUSTOM1_MPLS}?
     |  |  +--rw disable-refresh-resv-parsing?      empty
     |  |  +--rw disable-refresh-path-parsing?      empty
     |  |  +--rw disable-loop-detection?            empty
     |  |  +--rw revert-timer?                      uint32
     |  |  +--rw enable-bundle-send?                empty
     |  |  +--rw ingress?                           inet:ipv4-address
     |  |  +--rw on-boot-sample-interval?           uint16 {feature-list:HAVE_AUTO_BANDWIDTH}?
     |  |  +--rw on-boot-adjust-interval?           uint16 {feature-list:HAVE_AUTO_BANDWIDTH}?
     |  |  +--rw on-boot-adjust-multiplier?         uint8 {feature-list:HAVE_AUTO_BANDWIDTH}?
     |  +--ro state
     |  |  +--ro counters
     |  |  |  +--ro in-path-messages?                            uint32
     |  |  |  +--ro in-path-error-messages?                      uint32
     |  |  |  +--ro in-path-tear-messages?                       uint32
     |  |  |  +--ro in-reservation-fixed-filter-messages?        uint32
     |  |  |  +--ro in-reservation-wildcard-filter-messages?     uint32
     |  |  |  +--ro in-reservation-shared-explicit-messages?     uint32
     |  |  |  +--ro in-reservation-error-messages?               uint32
     |  |  |  +--ro in-reservation-tear-messages?                uint32
     |  |  |  +--ro in-reservation-conform-messages?             uint32
     |  |  |  +--ro in-hello-messages?                           uint32
     |  |  |  +--ro in-bundle-messages?                          uint32
     |  |  |  +--ro in-acknowledge-messages?                     uint32
     |  |  |  +--ro in-srefresh-messages?                        uint32
     |  |  |  +--ro in-notify-messages?                          uint32
     |  |  |  +--ro out-path-messages?                           uint32
     |  |  |  +--ro out-path-error-messages?                     uint32
     |  |  |  +--ro out-path-tear-messages?                      uint32
     |  |  |  +--ro out-reservation-fixed-filter-messages?       uint32
     |  |  |  +--ro out-reservation-wildcard-filter-messages?    uint32
     |  |  |  +--ro out-reservatoion-shared-explicit-messages?   uint32
     |  |  |  +--ro out-reservation-error-messages?              uint32
     |  |  |  +--ro out-reservation-tear-messages?               uint32
     |  |  |  +--ro out-reservation-conform-messages?            uint32
     |  |  |  +--ro out-hello-messages?                          uint32
     |  |  |  +--ro out-bundle-messages?                         uint32
     |  |  |  +--ro out-acknowledge-messages?                    uint32
     |  |  |  +--ro out-srefresh-messages?                       uint32
     |  |  |  +--ro out-notify-messages?                         uint32
     |  |  |  +--ro total-number-of-sessions?                    int32
     |  |  |  +--ro active-sessions?                             int32
     |  |  |  +--ro total-ingress-sessions?                      int32
     |  |  |  +--ro active-ingress-sessions?                     int32
     |  |  |  +--ro total-transit-sessions?                      int32
     |  |  |  +--ro active-transit-sessions?                     int32
     |  |  |  +--ro total-egress-sessions?                       int32
     |  |  |  +--ro active-egress-sessions?                      int32
     |  |  +--ro rsvp                               ipi-rsvp-types:rsvp_instance_t
     |  |  +--ro enable-explicit-null?              empty
     |  |  +--ro enable-local-protection?           empty
     |  |  +--ro enable-php?                        empty
     |  |  +--ro enable-entropy-label-capability?   empty {feature-list:NOT_HAVE_CUSTOM1_MPLS}?
     |  |  +--ro disable-refresh-resv-parsing?      empty
     |  |  +--ro disable-refresh-path-parsing?      empty
     |  |  +--ro disable-loop-detection?            empty
     |  |  +--ro revert-timer?                      uint32
     |  |  +--ro enable-bundle-send?                empty
     |  |  +--ro ingress?                           inet:ipv4-address
     |  |  +--ro on-boot-sample-interval?           uint16 {feature-list:HAVE_AUTO_BANDWIDTH}?
     |  |  +--ro on-boot-adjust-interval?           uint16 {feature-list:HAVE_AUTO_BANDWIDTH}?
     |  |  +--ro on-boot-adjust-multiplier?         uint8 {feature-list:HAVE_AUTO_BANDWIDTH}?
     |  |  +--ro rsvp-version?                      uint16
     |  |  +--ro rsvp-state?                        ipi-rsvp-types:rsvp_status_t
     |  |  +--ro refresh-timer?                     uint32
     |  |  +--ro keep-multiplier?                   uint32
     |  |  +--ro preemption-type?                   ipi-rsvp-types:rsvp_preemption_type_t
     |  |  +--ro selected-ingress-ipv4?             inet:ipv4-address
     |  |  +--ro selected-ingress-ipv6?             inet:ipv6-address {feature-list:HAVE_IPV6}?
     |  +--rw route-refresh
     |  |  +--rw config
     |  |  |  +--rw enable-message-ack?          empty
     |  |  |  +--rw disable-refresh-reduction?   empty
     |  |  |  +--rw ack-wait-timeout?            uint32
     |  |  |  +--rw refresh-time?                uint16
     |  |  |  +--rw keep-multiplier?             int32
     |  |  |  +--rw ack-send-timer?              uint16
     |  |  +--ro state
     |  |     +--ro enable-message-ack?          empty
     |  |     +--ro disable-refresh-reduction?   empty
     |  |     +--ro ack-wait-timeout?            uint32
     |  |     +--ro refresh-time?                uint16
     |  |     +--ro keep-multiplier?             int32
     |  |     +--ro ack-send-timer?              uint16
     |  +--rw fast-reroute {feature-list:HAVE_MPLS_FRR}?
     |  |  +--rw config
     |  |  |  +--rw default-frr-protection?               ipi-rsvp-types:rsvp_frr_protection_t {feature-list:HAVE_MPLS_FRR}?
     |  |  |  +--rw preemption-type?                      ipi-rsvp-types:rsvp_preemp_t {feature-list:HAVE_MPLS_FRR}?
     |  |  |  +--rw bypass-lsp-addr-query-interval?       uint8 {feature-list:HAVE_MPLS_FRR}?
     |  |  |  +--rw detour-id?                            ipi-rsvp-types:rsvp_detour_iden_t {feature-list:HAVE_MPLS_FRR}?
     |  |  |  +--rw detour-allow-primary-upstream-path?   empty {feature-list:HAVE_MPLS_FRR}?
     |  |  +--ro state
     |  |  |  +--ro default-frr-protection?               ipi-rsvp-types:rsvp_frr_protection_t {feature-list:HAVE_MPLS_FRR}?
     |  |  |  +--ro preemption-type?                      ipi-rsvp-types:rsvp_preemp_t {feature-list:HAVE_MPLS_FRR}?
     |  |  |  +--ro bypass-lsp-addr-query-interval?       uint8 {feature-list:HAVE_MPLS_FRR}?
     |  |  |  +--ro detour-id?                            ipi-rsvp-types:rsvp_detour_iden_t {feature-list:HAVE_MPLS_FRR}?
     |  |  |  +--ro detour-allow-primary-upstream-path?   empty {feature-list:HAVE_MPLS_FRR}?
     |  |  +--rw auto-bypass
     |  |     +--rw config!
     |  |     |  +--rw auto-bypass         empty
     |  |     |  +--rw enable?             empty
     |  |     |  +--rw inactivity-timer?   uint32
     |  |     +--ro state
     |  |     |  +--ro auto-bypass         empty
     |  |     |  +--ro enable?             empty
     |  |     |  +--ro inactivity-timer?   uint32
     |  |     +--rw attributes
     |  |        +--rw attribute* [type]
     |  |           +--rw type                 -> ../config/type
     |  |           +--rw config
     |  |           |  +--rw type?                    ipi-rsvp-types:rsvp_bypass_attr_type_t
     |  |           |  +--rw protection-capability?   ipi-rsvp-types:rsvp_exclude_path_type_t
     |  |           |  +--rw bandwidth?               string
     |  |           |  +--rw setup-priority?          uint8
     |  |           |  +--rw hold-priority?           uint8
     |  |           |  +--rw hop-limit?               uint16
     |  |           |  +--rw reoptimize?              empty
     |  |           +--ro state
     |  |           |  +--ro type?                    ipi-rsvp-types:rsvp_bypass_attr_type_t
     |  |           |  +--ro protection-capability?   ipi-rsvp-types:rsvp_exclude_path_type_t
     |  |           |  +--ro bandwidth?               string
     |  |           |  +--ro setup-priority?          uint8
     |  |           |  +--ro hold-priority?           uint8
     |  |           |  +--ro hop-limit?               uint16
     |  |           |  +--ro reoptimize?              empty
     |  |           +--rw exclude-addresses
     |  |              +--rw exclude-address* [address]
     |  |                 +--rw address    -> ../config/address
     |  |                 +--rw config
     |  |                 |  +--rw exclude-type    ipi-rsvp-types:rsvp_exclude_path_type_t
     |  |                 |  +--rw address?        inet:ipv4-address
     |  |                 +--ro state
     |  |                    +--ro exclude-type    ipi-rsvp-types:rsvp_exclude_path_type_t
     |  |                    +--ro address?        inet:ipv4-address
     |  +--rw cspf {feature-list:HAVE_CSPF}?
     |  |  +--rw config
     |  |  |  +--rw disable-cspf?                   empty
     |  |  |  +--rw cspf-lsp-reoptimization-time?   uint32
     |  |  +--ro state
     |  |     +--ro disable-cspf?                   empty
     |  |     +--ro cspf-lsp-reoptimization-time?   uint32
     |  +--rw global
     |  |  +--rw hellos
     |  |  |  +--rw config
     |  |  |  |  +--rw enable-hello-receipt?   empty
     |  |  |  |  +--rw hello-interval?         int32
     |  |  |  |  +--rw hello-timeout?          int32
     |  |  |  +--ro state
     |  |  |     +--ro enable-hello-receipt?   empty
     |  |  |     +--ro hello-interval?         int32
     |  |  |     +--ro hello-timeout?          int32
     |  |  +--rw graceful-restart {feature-list:HAVE_RSVP_GRST}?
     |  |     +--rw config!
     |  |     |  +--rw enable-graceful-restart    empty
     |  |     |  +--rw restart-time?              uint32
     |  |     |  +--rw recovery-time?             uint32
     |  |     +--ro state
     |  |        +--ro enable-graceful-restart    empty
     |  |        +--ro restart-time?              uint32
     |  |        +--ro recovery-time?             uint32
     |  +--rw gmpls {feature-list:HAVE_GMPLS}?
     |  |  +--rw config
     |  |  |  +--rw enable-gmpls-notification?            empty
     |  |  |  +--rw enable-pre-program-suggested-label?   empty
     |  |  +--ro state
     |  |     +--ro enable-gmpls-notification?            empty
     |  |     +--ro enable-pre-program-suggested-label?   empty
     |  +--rw srlg {feature-list:HAVE_SRLG}?
     |  |  +--rw config
     |  |  |  +--rw srlg-disjoint?   ipi-rsvp-types:rsvp_te_srlg_disjoint_type_t {feature-list:HAVE_SRLG}?
     |  |  +--ro state
     |  |     +--ro srlg-disjoint?   ipi-rsvp-types:rsvp_te_srlg_disjoint_type_t {feature-list:HAVE_SRLG}?
     |  +--rw diff-serv {feature-list:HAVE_DIFFSERV}?
     |  |  +--rw config
     |  |  |  +--rw enable-override-diff-serv?   empty {feature-list:HAVE_DIFFSERV}?
     |  |  +--ro state
     |  |     +--ro enable-override-diff-serv?   empty {feature-list:HAVE_DIFFSERV}?
     |  +--rw neighbors
     |     +--rw neighbor* [address]
     |     |  +--rw address    -> ../config/address
     |     |  +--rw config
     |     |  |  +--rw address?   inet:ip-address
     |     |  +--ro state
     |     |     +--ro address?   inet:ip-address
     |     +--ro protocol-neighbor* [neighbor-ip-address]
     |        +--ro neighbor-ip-address    -> ../state/neighbor-ip-address
     |        +--ro state
     |           +--ro neighbor-ip-address?             inet:ip-address
     |           +--ro session-count?                   uint32
     |           +--ro refresh-reduction?               ipi-rsvp-types:rsvp_neighbor_refresh_reduction_status_t
     |           +--ro upstream-lsp-count?              uint32
     |           +--ro downstream-lsp-count?            uint32
     |           +--ro neighbor-state?                  ipi-rsvp-types:rsvp_neighbor_hello_state_t
     |           +--ro srefresh-remaining-time?         uint32
     |           +--ro neighbor-type?                   ipi-rsvp-types:rsvp_neighbor_type_t
     |           +--ro max-acknowledge-packet?          uint16
     |           +--ro used-acknowledge-packet?         uint16
     |           +--ro max-bundle-packet?               uint16
     |           +--ro used-bundle-packet?              uint16
     |           +--ro lsp-id?                          uint16
     |           +--ro session-frr-type?                ipi-rsvp-types:rsvp_session_frr_type_t
     |           +--ro ingress?                         inet:ip-address
     |           +--ro egress?                          inet:ip-address
     |           +--ro trunk-session-type?              ipi-rsvp-types:rsvp_sess_type_t
     |           +--ro trunk-id?                        uint32
     |           +--ro graceful-restart-state?          ipi-rsvp-types:rsvp_graceful_restart_status_t {feature-list:HAVE_RSVP_GRST}?
     |           +--ro graceful-restart-set-recovery?   ipi-rsvp-types:rsvp_graceful_restart_recovery_status_t {feature-list:HAVE_RSVP_GRST}?
     |           +--ro restart-time?                    uint32 {feature-list:HAVE_RSVP_GRST}?
     |           +--ro recovery-time?                   uint32 {feature-list:HAVE_RSVP_GRST}?
     |           +--ro remaining-restart-time?          uint32 {feature-list:HAVE_RSVP_GRST}?
     |           +--ro remaining-recovery-time?         uint32 {feature-list:HAVE_RSVP_GRST}?
     +--rw rsvp-paths {feature-list:NOT_HAVE_MPLS_TUNNEL}?
     |  +--rw rsvp-path* [path-name]
     |     +--rw path-name                -> ../config/path-name
     |     +--rw config
     |     |  +--rw path-name?     string
     |     |  +--rw path-type      ipi-rsvp-types:rsvp_path_type_t
     |     |  +--rw description?   cml-data-types:cml_line_t
     |     +--ro state
     |     |  +--ro path-name?         string
     |     |  +--ro path-type          ipi-rsvp-types:rsvp_path_type_t
     |     |  +--ro description?       cml-data-types:cml_line_t
     |     |  +--ro path-identifier?   uint16
     |     |  +--ro hop-count?         uint16
     |     +--rw explicit-route-object
     |        +--rw mpls-hops
     |        |  +--rw mpls-hop* [hop-address hop-type]
     |        |     +--rw hop-address    -> ../config/hop-address
     |        |     +--rw hop-type       -> ../config/hop-type
     |        |     +--rw config
     |        |     |  +--rw hop-address?   inet:ipv4-address
     |        |     |  +--rw hop-type?      ipi-rsvp-types:rsvp_path_status_t
     |        |     +--ro state
     |        |        +--ro hop-address?   inet:ipv4-address
     |        |        +--ro hop-type?      ipi-rsvp-types:rsvp_path_status_t
     |        +--rw gmpls-strict-hops
     +--rw multipaths {feature-list:HAVE_RSVP_MULTIPATH}?
     |  +--rw multipath* [multipath-name]
     |     +--rw multipath-name    -> ../config/multipath-name
     |     +--rw config
     |     |  +--rw description?      cml-data-types:cml_line_t
     |     |  +--rw destination?      inet:ipv4-address
     |     |  +--rw multipath-name?   string
     |     +--ro state
     |     |  +--ro description?            cml-data-types:cml_line_t
     |     |  +--ro destination?            inet:ipv4-address
     |     |  +--ro multipath-name?         string
     |     |  +--ro multipath-identifier?   uint16
     |     |  +--ro member-trunk-count?     uint16
     |     +--ro member-trunks
     |        +--ro member-trunk* [trunk-name]
     |           +--ro trunk-name    -> ../state/trunk-name
     |           +--ro state
     |              +--ro trunk-name?         string
     |              +--ro trunk-identifier?   uint32
     |              +--ro trunk-status?       ipi-rsvp-types:rsvp_trunk_status_t
     +--rw trunks
     |  +--rw bypass-trunks
     |  |  +--rw bypass-trunk* [bypass-name] {feature-list:HAVE_MPLS_FRR}?
     |  |     +--rw bypass-name    -> ../config/bypass-name
     |  |     +--rw config
     |  |     |  +--rw bypass-name?             string
     |  |     |  +--rw backup-bandwidth-type?   ipi-rsvp-types:rsvp_backup_bandwidth_type
     |  |     |  +--rw ingress?                 inet:ipv4-address
     |  |     |  +--rw egress?                  inet:ipv4-address
     |  |     |  +--rw ext-tunnel-id?           inet:ipv4-address
     |  |     |  +--rw update-type?             ipi-rsvp-types:rsvp_update_type_t
     |  |     |  +--rw description?             cml-data-types:cml_line_t
     |  |     |  +--rw enable-reoptimize?       empty
     |  |     |  +--rw shutdown?                empty
     |  |     +--ro state
     |  |     |  +--ro bypass-name?             string
     |  |     |  +--ro backup-bandwidth-type?   ipi-rsvp-types:rsvp_backup_bandwidth_type
     |  |     |  +--ro ingress?                 inet:ipv4-address
     |  |     |  +--ro egress?                  inet:ipv4-address
     |  |     |  +--ro ext-tunnel-id?           inet:ipv4-address
     |  |     |  +--ro update-type?             ipi-rsvp-types:rsvp_update_type_t
     |  |     |  +--ro description?             cml-data-types:cml_line_t
     |  |     |  +--ro enable-reoptimize?       empty
     |  |     |  +--ro shutdown?                empty
     |  |     +--rw session
     |  |        +--rw config
     |  |        |  +--rw traffic-type?                ipi-rsvp-types:rsvp_traffic_type_t
     |  |        |  +--rw retry-count?                 uint16
     |  |        |  +--rw retry-interval?              uint16
     |  |        |  +--rw disable-route-record?        empty
     |  |        |  +--rw enable-reuse-route-record?   empty
     |  |        |  +--rw cspf-retry-count?            uint16 {feature-list:HAVE_CSPF}?
     |  |        |  +--rw cspf-retry-interval?         uint16 {feature-list:HAVE_CSPF}?
     |  |        +--ro state
     |  |        |  +--ro traffic-type?                ipi-rsvp-types:rsvp_traffic_type_t
     |  |        |  +--ro retry-count?                 uint16
     |  |        |  +--ro retry-interval?              uint16
     |  |        |  +--ro disable-route-record?        empty
     |  |        |  +--ro enable-reuse-route-record?   empty
     |  |        |  +--ro cspf-retry-count?            uint16 {feature-list:HAVE_CSPF}?
     |  |        |  +--ro cspf-retry-interval?         uint16 {feature-list:HAVE_CSPF}?
     |  |        +--rw exclude-path {feature-list:HAVE_MPLS_FRR}?
     |  |        |  +--rw config!
     |  |        |  |  +--rw exclude-type    ipi-rsvp-types:rsvp_exclude_path_type_t
     |  |        |  |  +--rw exclude-addr    inet:ipv4-address
     |  |        |  +--ro state
     |  |        |     +--ro exclude-type    ipi-rsvp-types:rsvp_exclude_path_type_t
     |  |        |     +--ro exclude-addr    inet:ipv4-address
     |  |        +--rw path-state-block
     |  |        |  +--rw config
     |  |        |  |  +--rw path-name?   string
     |  |        |  +--ro state
     |  |        |  |  +--ro path-name?   string
     |  |        |  +--rw session-attributes
     |  |        |     +--rw config
     |  |        |     |  +--rw bandwidth?             string
     |  |        |     |  +--rw hold-priority?         uint8
     |  |        |     |  +--rw setup-priority?        uint8
     |  |        |     |  +--rw enable-label-record?   empty
     |  |        |     |  +--rw hop-limit?             uint16
     |  |        |     |  +--rw filter-type?           ipi-rsvp-types:rsvp_filter_type_t
     |  |        |     +--ro state
     |  |        |        +--ro bandwidth?             string
     |  |        |        +--ro hold-priority?         uint8
     |  |        |        +--ro setup-priority?        uint8
     |  |        |        +--ro enable-label-record?   empty
     |  |        |        +--ro hop-limit?             uint16
     |  |        |        +--ro filter-type?           ipi-rsvp-types:rsvp_filter_type_t
     |  |        +--rw diff-serv-info {feature-list:HAVE_MPLS_FRR,feature-list:HAVE_DIFFSERV}?
     |  |           +--rw config
     |  |           +--ro state
     |  |           +--rw dscp-exp-maps
     |  |              +--rw dscp-exp-map* [dscp-exp-map-exp-val]
     |  |                 +--rw dscp-exp-map-exp-val    -> ../config/dscp-exp-map-exp-val
     |  |                 +--rw config
     |  |                 |  +--rw dscp-exp-map-exp-val?      int32
     |  |                 |  +--rw dscp-exp-map-class-name    string
     |  |                 +--ro state
     |  |                    +--ro dscp-exp-map-exp-val?      int32
     |  |                    +--ro dscp-exp-map-class-name    string
     |  +--rw ingress-trunks
     |  |  +--rw ingress-trunk* [trunk-name]
     |  |     +--rw trunk-name                    -> ../config/trunk-name
     |  |     +--rw config
     |  |     |  +--rw bsid-value?            uint32
     |  |     |  +--rw trunk-color?           uint32 {feature-list:HAVE_SERVICE_MAPPING}?
     |  |     |  +--rw ingress?               inet:ipv4-address
     |  |     |  +--rw egress?                inet:ipv4-address
     |  |     |  +--rw ext-tunnel-id?         inet:ipv4-address
     |  |     |  +--rw update-type?           ipi-rsvp-types:rsvp_update_type_t
     |  |     |  +--rw description?           cml-data-types:cml_line_t
     |  |     |  +--rw enable-reoptimize?     empty
     |  |     |  +--rw shutdown?              empty
     |  |     |  +--rw trunk-name?            string
     |  |     |  +--rw trunk-family           ipi-rsvp-types:rsvp_trunk_family_t
     |  |     |  +--rw enable-igp-shortcut?   empty
     |  |     |  +--rw absolute-metric?       uint32
     |  |     |  +--rw relative-metric?       int32
     |  |     |  +--rw revert-timer?          uint32
     |  |     |  +--rw auto-bandwidth?        -> /rsvp-te/rsvp-auto-bandwidths/rsvp-auto-bandwidth/config/profile-name {feature-list:HAVE_AUTO_BANDWIDTH}?
     |  |     |  +--rw ldp-tunneling?         empty {feature-list:HAVE_LDP_TUNNELING}?
     |  |     |  +--rw multipath-group?       -> /rsvp-te/multipaths/multipath/config/multipath-name {feature-list:HAVE_RSVP_MULTIPATH}?
     |  |     +--ro state
     |  |     |  +--ro bsid-value?            uint32
     |  |     |  +--ro trunk-color?           uint32 {feature-list:HAVE_SERVICE_MAPPING}?
     |  |     |  +--ro ingress?               inet:ipv4-address
     |  |     |  +--ro egress?                inet:ipv4-address
     |  |     |  +--ro ext-tunnel-id?         inet:ipv4-address
     |  |     |  +--ro update-type?           ipi-rsvp-types:rsvp_update_type_t
     |  |     |  +--ro description?           cml-data-types:cml_line_t
     |  |     |  +--ro enable-reoptimize?     empty
     |  |     |  +--ro shutdown?              empty
     |  |     |  +--ro trunk-name?            string
     |  |     |  +--ro trunk-family           ipi-rsvp-types:rsvp_trunk_family_t
     |  |     |  +--ro enable-igp-shortcut?   empty
     |  |     |  +--ro absolute-metric?       uint32
     |  |     |  +--ro relative-metric?       int32
     |  |     |  +--ro revert-timer?          uint32
     |  |     |  +--ro auto-bandwidth?        -> /rsvp-te/rsvp-auto-bandwidths/rsvp-auto-bandwidth/config/profile-name {feature-list:HAVE_AUTO_BANDWIDTH}?
     |  |     |  +--ro ldp-tunneling?         empty {feature-list:HAVE_LDP_TUNNELING}?
     |  |     |  +--ro multipath-group?       -> /rsvp-te/multipaths/multipath/config/multipath-name {feature-list:HAVE_RSVP_MULTIPATH}?
     |  |     +--rw path-computation-element {feature-list:HAVE_PCEP_RSVP}?
     |  |     |  +--rw config
     |  |     |  |  +--rw path-option-dynamic?     cml-data-types:cml_pcep_path_dyn_t {feature-list:HAVE_PCEP_RSVP}?
     |  |     |  |  +--rw pce-entity-identifier?   uint8 {feature-list:HAVE_PCEP_RSVP}?
     |  |     |  |  +--rw pce-state-report?        empty {feature-list:HAVE_PCEP_RSVP}?
     |  |     |  |  +--rw pce-lsp-delegate?        empty {feature-list:HAVE_PCEP_RSVP}?
     |  |     |  +--ro state
     |  |     |     +--ro path-option-dynamic?     cml-data-types:cml_pcep_path_dyn_t {feature-list:HAVE_PCEP_RSVP}?
     |  |     |     +--ro pce-entity-identifier?   uint8 {feature-list:HAVE_PCEP_RSVP}?
     |  |     |     +--ro pce-state-report?        empty {feature-list:HAVE_PCEP_RSVP}?
     |  |     |     +--ro pce-lsp-delegate?        empty {feature-list:HAVE_PCEP_RSVP}?
     |  |     +--rw mapped-ip-routes
     |  |     |  +--rw mapped-ip-route* [address]
     |  |     |     +--rw address    -> ../config/address
     |  |     |     +--rw config
     |  |     |     |  +--rw address?   cml-data-types:cml_ipv4_prefix_t
     |  |     |     +--ro state
     |  |     |        +--ro address?   cml-data-types:cml_ipv4_prefix_t
     |  |     +--rw mapped-prefix-class-routes
     |  |     |  +--rw mapped-prefix-class-route* [dst-addr]
     |  |     |     +--rw dst-addr    -> ../config/dst-addr
     |  |     |     +--rw config
     |  |     |     |  +--rw dst-addr    cml-data-types:cml_ipv4_prefix_t
     |  |     |     |  +--rw name        string {feature-list:HAVE_DIFFSERV}?
     |  |     |     +--ro state
     |  |     |        +--ro dst-addr    cml-data-types:cml_ipv4_prefix_t
     |  |     |        +--ro name        string {feature-list:HAVE_DIFFSERV}?
     |  |     +--rw secondary-priorities
     |  |     |  +--rw secondary-priority* [priority-value]
     |  |     |     +--rw priority-value    -> ../config/priority-value
     |  |     |     +--rw config
     |  |     |     |  +--rw bandwidth?                          string
     |  |     |     |  +--rw priority-value?                     int32
     |  |     |     |  +--rw priority-path?                      string
     |  |     |     |  +--rw secondary-priority-srlg-disjoint?   ipi-rsvp-types:rsvp_te_srlg_disjoint_type_t {feature-list:HAVE_SRLG}?
     |  |     |     |  +--rw hold-priority?                      uint8
     |  |     |     |  +--rw setup-priority?                     uint8
     |  |     |     |  +--rw enable-label-record?                empty
     |  |     |     |  +--rw hop-limit?                          uint16
     |  |     |     +--ro state
     |  |     |        +--ro bandwidth?                          string
     |  |     |        +--ro priority-value?                     int32
     |  |     |        +--ro priority-path?                      string
     |  |     |        +--ro secondary-priority-srlg-disjoint?   ipi-rsvp-types:rsvp_te_srlg_disjoint_type_t {feature-list:HAVE_SRLG}?
     |  |     |        +--ro hold-priority?                      uint8
     |  |     |        +--ro setup-priority?                     uint8
     |  |     |        +--ro enable-label-record?                empty
     |  |     |        +--ro hop-limit?                          uint16
     |  |     +--rw sessions
     |  |        +--rw session* [trunk-session-type]
     |  |        |  +--rw trunk-session-type    -> ../config/trunk-session-type
     |  |        |  +--rw config
     |  |        |  |  +--rw traffic-type?                ipi-rsvp-types:rsvp_traffic_type_t
     |  |        |  |  +--rw retry-count?                 uint16
     |  |        |  |  +--rw retry-interval?              uint16
     |  |        |  |  +--rw disable-route-record?        empty
     |  |        |  |  +--rw enable-reuse-route-record?   empty
     |  |        |  |  +--rw cspf-retry-count?            uint16 {feature-list:HAVE_CSPF}?
     |  |        |  |  +--rw cspf-retry-interval?         uint16 {feature-list:HAVE_CSPF}?
     |  |        |  |  +--rw trunk-session-type?          ipi-rsvp-types:rsvp_sess_type_t
     |  |        |  |  +--rw disable-cspf?                empty {feature-list:HAVE_CSPF}?
     |  |        |  |  +--rw disable-affinity?            empty {feature-list:HAVE_TE}?
     |  |        |  |  +--rw enable-local-protection?     empty
     |  |        |  +--ro state
     |  |        |  |  +--ro traffic-type?                ipi-rsvp-types:rsvp_traffic_type_t
     |  |        |  |  +--ro retry-count?                 uint16
     |  |        |  |  +--ro retry-interval?              uint16
     |  |        |  |  +--ro disable-route-record?        empty
     |  |        |  |  +--ro enable-reuse-route-record?   empty
     |  |        |  |  +--ro cspf-retry-count?            uint16 {feature-list:HAVE_CSPF}?
     |  |        |  |  +--ro cspf-retry-interval?         uint16 {feature-list:HAVE_CSPF}?
     |  |        |  |  +--ro trunk-session-type?          ipi-rsvp-types:rsvp_sess_type_t
     |  |        |  |  +--ro disable-cspf?                empty {feature-list:HAVE_CSPF}?
     |  |        |  |  +--ro disable-affinity?            empty {feature-list:HAVE_TE}?
     |  |        |  |  +--ro enable-local-protection?     empty
     |  |        |  +--rw admin-groups
     |  |        |  |  +--rw admin-group* [name] {feature-list:HAVE_TE}?
     |  |        |  |     +--rw name      -> ../config/name
     |  |        |  |     +--rw config
     |  |        |  |     |  +--rw name?   string
     |  |        |  |     |  +--rw type?   ipi-rsvp-types:rsvp_admin_type_t
     |  |        |  |     +--ro state
     |  |        |  |        +--ro name?   string
     |  |        |  |        +--ro type?   ipi-rsvp-types:rsvp_admin_type_t
     |  |        |  +--rw path-state-block
     |  |        |  |  +--rw config
     |  |        |  |  |  +--rw path-name?   -> /rsvp-te/rsvp-paths/rsvp-path/config/path-name
     |  |        |  |  +--ro state
     |  |        |  |  |  +--ro path-name?   -> /rsvp-te/rsvp-paths/rsvp-path/config/path-name
     |  |        |  |  +--rw session-attributes
     |  |        |  |     +--rw config
     |  |        |  |     |  +--rw bandwidth?             string
     |  |        |  |     |  +--rw hold-priority?         uint8
     |  |        |  |     |  +--rw setup-priority?        uint8
     |  |        |  |     |  +--rw enable-label-record?   empty
     |  |        |  |     |  +--rw hop-limit?             uint16
     |  |        |  |     |  +--rw filter-type?           ipi-rsvp-types:rsvp_filter_type_t
     |  |        |  |     +--ro state
     |  |        |  |        +--ro bandwidth?             string
     |  |        |  |        +--ro hold-priority?         uint8
     |  |        |  |        +--ro setup-priority?        uint8
     |  |        |  |        +--ro enable-label-record?   empty
     |  |        |  |        +--ro hop-limit?             uint16
     |  |        |  |        +--ro filter-type?           ipi-rsvp-types:rsvp_filter_type_t
     |  |        |  +--rw diff-serv-info {feature-list:HAVE_DIFFSERV}?
     |  |        |     +--rw config
     |  |        |     +--ro state
     |  |        |     +--rw dscp-exp-maps
     |  |        |     |  +--rw dscp-exp-map* [dscp-exp-map-exp-val]
     |  |        |     |     +--rw dscp-exp-map-exp-val    -> ../config/dscp-exp-map-exp-val
     |  |        |     |     +--rw config
     |  |        |     |     |  +--rw dscp-exp-map-exp-val?      int32
     |  |        |     |     |  +--rw dscp-exp-map-class-name    string
     |  |        |     |     +--ro state
     |  |        |     |        +--ro dscp-exp-map-exp-val?      int32
     |  |        |     |        +--ro dscp-exp-map-class-name    string
     |  |        |     +--rw elsp-class
     |  |        |        +--rw config
     |  |        |        |  +--rw elsp-signal?          empty
     |  |        |        |  +--rw elsp-signal-class1?   string
     |  |        |        |  +--rw elsp-signal-class2?   string
     |  |        |        |  +--rw elsp-signal-class3?   string
     |  |        |        |  +--rw elsp-signal-class4?   string
     |  |        |        |  +--rw elsp-signal-class5?   string
     |  |        |        |  +--rw elsp-signal-class6?   string
     |  |        |        |  +--rw elsp-signal-class7?   string
     |  |        |        +--ro state
     |  |        |           +--ro elsp-signal?          empty
     |  |        |           +--ro elsp-signal-class1?   string
     |  |        |           +--ro elsp-signal-class2?   string
     |  |        |           +--ro elsp-signal-class3?   string
     |  |        |           +--ro elsp-signal-class4?   string
     |  |        |           +--ro elsp-signal-class5?   string
     |  |        |           +--ro elsp-signal-class6?   string
     |  |        |           +--ro elsp-signal-class7?   string
     |  |        +--rw fast-reroute {feature-list:HAVE_MPLS_FRR}?
     |  |        |  +--rw config
     |  |        |  |  +--rw fast-reroute-bandwidth?   string
     |  |        |  |  +--rw protection?               ipi-rsvp-types:rsvp_frr_protection_t {feature-list:HAVE_MPLS_FRR}?
     |  |        |  |  +--rw enable-node-protection?   empty {feature-list:HAVE_MPLS_FRR}?
     |  |        |  |  +--rw frr-hold-priority?        uint32
     |  |        |  |  +--rw frr-setup-priority?       uint32
     |  |        |  |  +--rw frr-hop-limit?            uint32
     |  |        |  +--ro state
     |  |        |  |  +--ro fast-reroute-bandwidth?   string
     |  |        |  |  +--ro protection?               ipi-rsvp-types:rsvp_frr_protection_t {feature-list:HAVE_MPLS_FRR}?
     |  |        |  |  +--ro enable-node-protection?   empty {feature-list:HAVE_MPLS_FRR}?
     |  |        |  |  +--ro frr-hold-priority?        uint32
     |  |        |  |  +--ro frr-setup-priority?       uint32
     |  |        |  |  +--ro frr-hop-limit?            uint32
     |  |        |  +--rw frr-admin-groups
     |  |        |     +--rw frr-admin-group* [admin-group-name] {feature-list:HAVE_MPLS_FRR}?
     |  |        |        +--rw admin-group-name    -> ../config/admin-group-name
     |  |        |        +--rw config
     |  |        |        |  +--rw admin-group-name?   string
     |  |        |        |  +--rw admin-group-type?   ipi-rsvp-types:rsvp_frr_admin_type_t
     |  |        |        +--ro state
     |  |        |           +--ro admin-group-name?   string
     |  |        |           +--ro admin-group-type?   ipi-rsvp-types:rsvp_frr_admin_type_t
     |  |        +--rw srlg {feature-list:HAVE_SRLG}?
     |  |           +--rw config
     |  |           |  +--rw srlg-disjoint-secondary?   ipi-rsvp-types:rsvp_te_srlg_disjoint_type_t {feature-list:HAVE_SRLG}?
     |  |           +--ro state
     |  |              +--ro srlg-disjoint-secondary?   ipi-rsvp-types:rsvp_te_srlg_disjoint_type_t {feature-list:HAVE_SRLG}?
     |  +--ro trunk* [trunk-id extended-tunnel-id egress]
     |     +--ro trunk-id              -> ../state/trunk-id
     |     +--ro extended-tunnel-id    -> ../state/extended-tunnel-id
     |     +--ro egress                -> ../state/egress
     |     +--ro sessions
     |     |  +--ro session* [session-name]
     |     |     +--ro session-name    -> ../state/session-name
     |     |     +--ro state
     |     |        +--ro received-explicit-route-object* [link-address]
     |     |        |  +--ro link-address    -> ../state/link-address
     |     |        |  +--ro state
     |     |        |     +--ro link-address?   inet:ip-address
     |     |        |     +--ro link-type?      ipi-rsvp-types:rsvp_path_status_t
     |     |        +--ro explicit-route-object* [link-address]
     |     |        |  +--ro link-address    -> ../state/link-address
     |     |        |  +--ro state
     |     |        |     +--ro link-address?   inet:ip-address
     |     |        |     +--ro link-type?      ipi-rsvp-types:rsvp_path_status_t
     |     |        +--ro constrained-shortest-path
     |     |        |  +--ro state
     |     |        |     +--ro cspf-state?                 ipi-rsvp-types:rsvp_status_t
     |     |        |     +--ro lsp-reoptimization-state?   ipi-rsvp-types:rsvp_status_t
     |     |        |     +--ro lsp-reoptimization-timer?   uint32
     |     |        |     +--ro cspf-client?                ipi-rsvp-types:rsvp_cspf_client_t
     |     |        +--ro fast-reroute {feature-list:HAVE_MPLS_FRR}?
     |     |        |  +--ro state
     |     |        |     +--ro lsp-protection?        ipi-rsvp-types:rsvp_frr_protection_t {feature-list:HAVE_MPLS_FRR}?
     |     |        |     +--ro bypass-trunk-name?     string {feature-list:HAVE_MPLS_FRR}?
     |     |        |     +--ro merge-point-address?   inet:ipv4-address {feature-list:HAVE_MPLS_FRR}?
     |     |        |     +--ro merge-point-label?     uint32 {feature-list:HAVE_MPLS_FRR}?
     |     |        +--ro upstream-downstream-state
     |     |        |  +--ro state
     |     |        |     +--ro upstream-ip-address?         inet:ip-address
     |     |        |     +--ro upstream-interface-name?     string
     |     |        |     +--ro downstream-ip-address?       inet:ip-address
     |     |        |     +--ro downstream-interface-name?   string
     |     |        +--ro traffic-flow-specification
     |     |        |  +--ro state
     |     |        |     +--ro traffic-specification-rate?   uint32
     |     |        |     +--ro filter-specification-rate?    uint32
     |     |        +--ro session-priority
     |     |        |  +--ro state
     |     |        |     +--ro setup-priority?   uint8
     |     |        |     +--ro hold-priority?    uint8
     |     |        |     +--ro hop-limit?        uint8
     |     |        |     +--ro bandwidth?        string
     |     |        +--ro path-refresh-timers
     |     |        |  +--ro state
     |     |        |     +--ro path-refresh-time?             uint32
     |     |        |     +--ro remaining-path-refresh-time?   uint32
     |     |        |     +--ro path-lifetime?                 uint32
     |     |        |     +--ro remaining-path-lifetime?       uint32
     |     |        +--ro reserve-refresh-timers
     |     |        |  +--ro state
     |     |        |     +--ro reserve-refresh-time?             uint32
     |     |        |     +--ro remaining-reserve-refresh-time?   uint32
     |     |        |     +--ro reserve-lifetime?                 uint32
     |     |        |     +--ro remaining-reserve-lifetime?       uint32
     |     |        +--ro retry-timers
     |     |        |  +--ro state
     |     |        |     +--ro remaining-retry-time?   uint32
     |     |        |     +--ro next-retry-time?        uint32
     |     |        +--ro upstream-route-record-object
     |     |        |  +--ro state
     |     |        |     +--ro address*   inet:ip-address
     |     |        +--ro downstream-route-record-object
     |     |        |  +--ro state
     |     |        |     +--ro address*   inet:ip-address
     |     |        +--ro session-name?                     string
     |     |        +--ro lsp-id?                           uint16
     |     |        +--ro session-frr-type?                 ipi-rsvp-types:rsvp_session_frr_type_t
     |     |        +--ro ingress?                          inet:ip-address
     |     |        +--ro trunk-session-type?               ipi-rsvp-types:rsvp_sess_type_t
     |     |        +--ro session-role?                     ipi-rsvp-types:rsvp_session_role_t
     |     |        +--ro is-pseudo-primary?                ipi-rsvp-types:rsvp_yes_no_t
     |     |        +--ro lsp-state?                        string
     |     |        +--ro fsm-state?                        string
     |     |        +--ro transit-downstream-fsm-state?     string
     |     |        +--ro establishment-time?               cml-data-types:cml_line_t
     |     |        +--ro revert-hold-timer?                ipi-rsvp-types:rsvp_yes_no_t
     |     |        +--ro remaining-revert-time?            uint32
     |     |        +--ro session-filter-style?             ipi-rsvp-types:rsvp_filter_state_type_t
     |     |        +--ro in-label?                         uint32
     |     |        +--ro out-label?                        uint32
     |     |        +--ro bypass-out-label?                 uint32
     |     |        +--ro bypass-out-interface?             string
     |     |        +--ro gmpls-label-type?                 ipi-rsvp-types:rsvp_gmpls_label_type_t
     |     |        +--ro qos-traffic-type?                 ipi-rsvp-types:rsvp_traffic_type_state_t
     |     |        +--ro minimum-path-mtu?                 uint32
     |     +--ro state
     |     |  +--ro trunk-id?                     uint32
     |     |  +--ro extended-tunnel-id?           inet:ip-address
     |     |  +--ro egress?                       inet:ip-address
     |     |  +--ro trunk-name?                   string
     |     |  +--ro multipath-group-name?         string {feature-list:HAVE_RSVP_MULTIPATH}?
     |     |  +--ro multipath-group-identifier?   uint16 {feature-list:HAVE_RSVP_MULTIPATH}?
     |     +--ro auto-bandwidth {feature-list:HAVE_AUTO_BANDWIDTH}?
     |        +--ro state
     |           +--ro last-bandwidth?                 string
     |           +--ro requested-bandwidth?            string
     |           +--ro signaled-bandwidth?             string
     |           +--ro current-bandwidth?              string
     |           +--ro highest-watermark-bandwidth?    string
     |           +--ro last-adjusted-bandwidth?        string
     |           +--ro total-bandwidth-adjustments?    uint32
     |           +--ro successful-adjustments?         uint32
     |           +--ro failed-adjustments?             uint32
     |           +--ro minimum-average-bandwidth?      string
     |           +--ro maximum-average-bandwidth?      string
     |           +--ro overflow-sample-count?          uint16
     |           +--ro underflow-sample-count?         uint16
     |           +--ro maxbw-exceed-sample-count?      uint16
     |           +--ro teardown-count?                 uint32
     |           +--ro sample-request-due-time?        uint32
     |           +--ro next-adjustment-due-time?       uint32
     |           +--ro last-bandwidth-request-time?    cml-data-types:cml_line_t
     |           +--ro last-bandwidth-signal-time?     cml-data-types:cml_line_t
     |           +--ro last-adjustment-time?           cml-data-types:cml_line_t
     |           +--ro highest-watermark-time?         cml-data-types:cml_line_t
     |           +--ro total-force-adjustments?        uint32
     |           +--ro successful-force-adjustments?   uint32
     |           +--ro failed-force-adjustments?       uint32
     +--rw rsvp-auto-bandwidths {feature-list:HAVE_AUTO_BANDWIDTH}?
     |  +--rw rsvp-auto-bandwidth* [profile-name]
     |     +--rw profile-name    -> ../config/profile-name
     |     +--rw config
     |     |  +--rw profile-name?                             string
     |     |  +--rw sample-interval?                          uint16
     |     |  +--rw adjust-interval?                          uint16
     |     |  +--rw minimum-bandwidth?                        string
     |     |  +--rw maximum-bandwidth?                        string
     |     |  +--rw overflow-threshold-percent?               uint8
     |     |  +--rw underflow-threshold-percent?              uint8
     |     |  +--rw overflow-threshold-bandwidth?             string
     |     |  +--rw underflow-threshold-bandwidth?            string
     |     |  +--rw underflow-threshold-activate-bandwidth?   string
     |     |  +--rw overflow-threshold-activate-bandwidth?    string
     |     |  +--rw overflow-limit?                           uint16
     |     |  +--rw underflow-limit?                          uint16
     |     |  +--rw initial-bandwidth?                        string
     |     |  +--rw maximum-bandwidth-exceed-limit?           uint16
     |     |  +--rw maximum-bandwidth-exceed-action?          ipi-rsvp-types:rsvp_auto_bandwidth_action_type_t
     |     |  +--rw resignal-failure-action?                  ipi-rsvp-types:rsvp_auto_bandwidth_action_type_t
     |     |  +--rw sync-bandwidth?                           empty
     |     |  +--rw monitor-bandwidth?                        empty
     |     |  +--rw minimum-samples-percent?                  uint8
     |     |  +--rw minimum-samples-absolute?                 uint16
     |     +--ro state
     |        +--ro profile-name?                             string
     |        +--ro sample-interval?                          uint16
     |        +--ro adjust-interval?                          uint16
     |        +--ro minimum-bandwidth?                        string
     |        +--ro maximum-bandwidth?                        string
     |        +--ro overflow-threshold-percent?               uint8
     |        +--ro underflow-threshold-percent?              uint8
     |        +--ro overflow-threshold-bandwidth?             string
     |        +--ro underflow-threshold-bandwidth?            string
     |        +--ro underflow-threshold-activate-bandwidth?   string
     |        +--ro overflow-threshold-activate-bandwidth?    string
     |        +--ro overflow-limit?                           uint16
     |        +--ro underflow-limit?                          uint16
     |        +--ro initial-bandwidth?                        string
     |        +--ro maximum-bandwidth-exceed-limit?           uint16
     |        +--ro maximum-bandwidth-exceed-action?          ipi-rsvp-types:rsvp_auto_bandwidth_action_type_t
     |        +--ro resignal-failure-action?                  ipi-rsvp-types:rsvp_auto_bandwidth_action_type_t
     |        +--ro sync-bandwidth?                           empty
     |        +--ro monitor-bandwidth?                        empty
     |        +--ro minimum-samples-percent?                  uint8
     |        +--ro minimum-samples-absolute?                 uint16
     +--rw interfaces
        +--rw interface* [name]
           +--rw name                 -> ../config/name
           +--rw config
           |  +--rw name?                       -> /ipi-interface:interfaces/interface/name
           |  +--rw enable-rsvp?                empty
           |  +--rw enable-iana-hello-config?   empty
           +--ro state
           |  +--ro name?                        -> /ipi-interface:interfaces/interface/name
           |  +--ro enable-rsvp?                 empty
           |  +--ro enable-iana-hello-config?    empty
           |  +--ro selected-ipv4-address?       inet:ipv4-address
           |  +--ro selected-ipv6-address?       inet:ipv6-address
           |  +--ro interface-type?              ipi-rsvp-types:rsvp_interface_type_t
           |  +--ro interface-index?             uint32
           |  +--ro rsvp-status?                 ipi-rsvp-types:rsvp_status_t
           |  +--ro administrative-group-name*   string
           |  +--ro bundle-buffer-size?          uint16
           |  +--ro epoch?                       uint32
           +--rw refresh-reduction
           |  +--rw config
           |  |  +--rw enable-message-ack?          empty
           |  |  +--rw disable-refresh-reduction?   empty
           |  |  +--rw ack-wait-timeout?            uint32
           |  |  +--rw refresh-time?                uint16
           |  |  +--rw keep-multiplier?             int32
           |  +--ro state
           |     +--ro enable-message-ack?          empty
           |     +--ro disable-refresh-reduction?   empty
           |     +--ro ack-wait-timeout?            uint32
           |     +--ro refresh-time?                uint16
           |     +--ro keep-multiplier?             int32
           +--rw hellos
              +--rw config
              |  +--rw enable-hello-receipt?   empty
              |  +--rw hello-interval?         int32
              |  +--rw hello-timeout?          int32
              +--ro state
                 +--ro enable-hello-receipt?   empty
                 +--ro hello-interval?         int32
                 +--ro hello-timeout?          int32
 
  rpcs:
    +---x clear-rsvp-session {feature-list:HAVE_RSVPD}?
    +---x clear-rsvp-trunk {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w trunk-name    string
    +---x clear-rsvp-primary-trunk {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w trunk-name    string
    +---x clear-rsvp-secondary-trunk {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w trunk-name    string
    +---x clear-rsvp-ingress-trunk {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w trunk-name    string
    +---x clear-rsvp-non-ingress-trunk {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w trunk-name    string
    +---x rsvp-trunk-force-reoptimize-on {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w trunk-name    string
    +---x rsvp-trunk-force-switchover-secondary {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w trunk-name    string
    |     +---w action        ipi-rsvp-types:rsvp_force_secondary_t
    +---x rsvp-trunk-restart {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w trunk-name    string
    +---x rsvp-session-reset {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w tunnel-id    uint32
    |     +---w lsp-id       uint32
    |     +---w ingress      inet:ipv4-address
    |     +---w egress       inet:ipv4-address
    +---x rsvp-trunk-force-auto-bandwidth-adjustment {feature-list:HAVE_AUTO_BANDWIDTH}?
    |  +---w input
    |     +---w trunk-name                         string
    |     +---w force-auto-bandwidth-adjustment    boolean
    |     +---w bandwidth                          string
    +---x rsvp-clear-auto-bandwidth {feature-list:HAVE_AUTO_BANDWIDTH}?
    |  +---w input
    |     +---w autobw-profile    string
    +---x clear-rsvp-trunk-auto-bandwidth-statistics {feature-list:HAVE_AUTO_BANDWIDTH}?
    |  +---w input
    |     +---w trunk-name    string
    +---x clear-rsvp-statistics {feature-list:HAVE_RSVPD}?
    +---x rsvp-snmp-restart {feature-list:HAVE_SNMP}?
    +---x rsvp-terminal-debug-on {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-rsvp-types:rsvp_debug_t
    +---x rsvp-terminal-debug-off {feature-list:HAVE_RSVPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-rsvp-types:rsvp_debug_t
    +---x restart-rsvp-graceful {feature-list:HAVE_RSVP_GRST}?
 
  notifications:
    +---n rsvp-session-up
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro session-name?         string
    |  +--ro trunk-id?             uint32
    |  +--ro extended-tunnel-id?   inet:ip-address
    |  +--ro egress?               inet:ip-address
    |  +--ro lsp-id?               uint16
    |  +--ro ingress?              inet:ip-address
    |  +--ro trunk-session-type?   ipi-rsvp-types:rsvp_sess_type_t
    +---n rsvp-session-down
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro session-name?         string
    |  +--ro trunk-id?             uint32
    |  +--ro extended-tunnel-id?   inet:ip-address
    |  +--ro egress?               inet:ip-address
    |  +--ro lsp-id?               uint16
    |  +--ro ingress?              inet:ip-address
    |  +--ro trunk-session-type?   ipi-rsvp-types:rsvp_sess_type_t
    +---n rsvp-session-force-switchover
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro session-name?         string
    |  +--ro trunk-id?             uint32
    |  +--ro extended-tunnel-id?   inet:ip-address
    |  +--ro egress?               inet:ip-address
    |  +--ro lsp-id?               uint16
    |  +--ro ingress?              inet:ip-address
    |  +--ro trunk-session-type?   ipi-rsvp-types:rsvp_sess_type_t
    +---n rsvp-tunnel-reoptimized
    |  +--ro severity?             cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?           cml-data-types:cml_notif_class_t
    |  +--ro session-name?         string
    |  +--ro trunk-id?             uint32
    |  +--ro extended-tunnel-id?   inet:ip-address
    |  +--ro egress?               inet:ip-address
    |  +--ro lsp-id?               uint16
    |  +--ro ingress?              inet:ip-address
    |  +--ro trunk-session-type?   ipi-rsvp-types:rsvp_sess_type_t
    +---n rsvp-auto-bw-subceed-minimum-bandwidth {feature-list:HAVE_AUTO_BANDWIDTH}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n rsvp-auto-bw-exceed-maximum-bandwidth {feature-list:HAVE_AUTO_BANDWIDTH}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n rsvp-auto-bw-adjust-time-expiry {feature-list:HAVE_AUTO_BANDWIDTH}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n rsvp-auto-bw-overflow {feature-list:HAVE_AUTO_BANDWIDTH}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n rsvp-auto-bw-underflow {feature-list:HAVE_AUTO_BANDWIDTH}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n rsvp-auto-bw-exceed-limit {feature-list:HAVE_AUTO_BANDWIDTH}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n rsvp-auto-bw-teardown {feature-list:HAVE_AUTO_BANDWIDTH}?
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro message?      string
 
 
module: ipi-seamless-bfd
  +--rw seamless-bfd
     +--ro state
     |  +--ro remote-discriminator*   string
     +--rw sr-policies
     |  +--rw sr-policy* [lsp-type sr-policy-name]
     |     +--rw lsp-type              -> ../config/lsp-type
     |     +--rw sr-policy-name        -> ../config/sr-policy-name
     |     +--rw config
     |     |  +--rw lsp-type?         ipi-sbfd-types:sbfd_sr_type_t
     |     |  +--rw sr-policy-name?   string
     |     +--ro state
     |     |  +--ro lsp-type?         ipi-sbfd-types:sbfd_sr_type_t
     |     |  +--ro sr-policy-name?   string
     |     +--rw session-attributes
     |        +--rw config
     |        |  +--rw admin-down?   empty
     |        +--ro state
     |        |  +--ro admin-down?   empty
     |        +--rw intervals
     |           +--rw interval* [minimum-tx detection-multiplier]
     |              +--rw minimum-tx              -> ../config/minimum-tx
     |              +--rw detection-multiplier    -> ../config/detection-multiplier
     |              +--rw config
     |              |  +--rw minimum-tx?             uint32
     |              |  +--rw detection-multiplier?   uint8
     |              +--ro state
     |                 +--ro minimum-tx?             uint32
     |                 +--ro detection-multiplier?   uint8
     +--rw local-discriminators
        +--rw local-discriminator* [discriminator]
           +--rw discriminator    -> ../config/discriminator
           +--rw config
           |  +--rw discriminator?              string
           |  +--rw required-min-rx-interval?   uint32
           +--ro state
              +--ro discriminator?              string
              +--ro required-min-rx-interval?   uint32
 
 
 
 
 
module: ipi-segment-routing
  +--rw segment-routing {feature-list:HAVE_SRV6_OR_HAVE_SR_MPLS}?
     +--rw config!
     |  +--rw enable              empty
     |  +--rw flex-algo-enable?   empty
     +--ro state
     |  +--ro enable              empty
     |  +--ro flex-algo-enable?   empty
     +--rw interfaces {feature-list:HAVE_SR_MPLS}?
     |  +--rw interface* [name]
     |     +--rw name                         -> ../config/name
     |     +--rw config
     |     |  +--rw name?   -> /ipi-interface:interfaces/interface/name
     |     +--rw adjacency-segment {feature-list:HAVE_SR_MPLS}?
     |     |  +--rw config
     |     |  |  +--rw adj-sid-absolute?   uint32
     |     |  |  +--rw adj-sid-index?      uint32
     |     |  +--ro state
     |     |     +--ro adj-sid-absolute?   uint32
     |     |     +--ro adj-sid-index?      uint32
     |     +--rw prefix-segment-algorithms {feature-list:HAVE_SR_MPLS}?
     |        +--rw prefix-segment-algorithm* [algorithm-num]
     |           +--rw algorithm-num    -> ../config/algorithm-num
     |           +--rw config
     |           |  +--rw algorithm-num?   ipi-sr-types:sr_algo_choice_t
     |           |  +--rw sid-absolute?    uint32
     |           |  +--rw sid-index?       uint32
     |           |  +--rw exp-null?        ipi-sr-types:if_sr_prefix_flag_t
     |           |  +--rw n-flag-clear?    ipi-sr-types:if_sr_n_flag_clear_t
     |           +--ro state
     |              +--ro algorithm-num?   ipi-sr-types:sr_algo_choice_t
     |              +--ro sid-absolute?    uint32
     |              +--ro sid-index?       uint32
     |              +--ro exp-null?        ipi-sr-types:if_sr_prefix_flag_t
     |              +--ro n-flag-clear?    ipi-sr-types:if_sr_n_flag_clear_t
     +--rw sr-mpls {feature-list:HAVE_SR_MPLS}?
     |  +--rw sr-prefer-over-ldp
     |  |  +--rw config
     |  |  |  +--rw enable-preference?   empty
     |  |  +--ro state
     |  |     +--ro enable-preference?   empty
     |  +--rw bindings
     |  |  +--rw mapping-server
     |  |     +--rw config!
     |  |     |  +--rw enable    empty
     |  |     +--ro state
     |  |     |  +--ro enable    empty
     |  |     +--rw srms-preferenece
     |  |     |  +--rw config
     |  |     |  |  +--rw preference?   uint8
     |  |     |  +--ro state
     |  |     |     +--ro preference?   uint8
     |  |     +--rw prefix-sid-map-ipv4
     |  |        +--rw config!
     |  |        |  +--rw enable    empty
     |  |        +--ro state
     |  |        |  +--ro enable    empty
     |  |        +--rw mapping-entries
     |  |           +--rw mapping-entry* [start-address start-sid]
     |  |              +--rw start-address    -> ../config/start-address
     |  |              +--rw start-sid        -> ../config/start-sid
     |  |              +--rw config
     |  |              |  +--rw start-address?   cml-data-types:cml_ipv4_prefix_t
     |  |              |  +--rw start-sid?       uint32
     |  |              |  +--rw range?           uint32
     |  |              |  +--rw attached?        boolean
     |  |              |  +--rw algorithm-num?   uint32
     |  |              +--ro state
     |  |              |  +--ro start-address?   cml-data-types:cml_ipv4_prefix_t
     |  |              |  +--ro start-sid?       uint32
     |  |              |  +--ro range?           uint32
     |  |              |  +--ro attached?        boolean
     |  |              |  +--ro algorithm-num?   uint32
     |  |              +--ro ipv4-table
     |  |                 +--ro state
     |  |                    +--ro start-prefix?      cml-data-types:cml_ip_prefix_addr_t
     |  |                    +--ro algorithm-num?     uint8
     |  |                    +--ro start-sid-index?   uint16
     |  |                    +--ro range?             uint16
     |  |                    +--ro end-prefix?        cml-data-types:cml_ip_prefix_addr_t
     |  |                    +--ro end-sid-index?     uint16
     |  |                    +--ro attached?          empty
     |  |                    +--ro preference?        uint8
     |  +--rw global-block {feature-list:HAVE_SR_MPLS}?
     |  |  +--rw config!
     |  |  |  +--rw start    uint32
     |  |  |  +--rw end      uint32
     |  |  +--ro state
     |  |     +--ro start    uint32
     |  |     +--ro end      uint32
     |  +--rw local-block {feature-list:HAVE_SR_MPLS}?
     |     +--rw config!
     |     |  +--rw start    uint32
     |     |  +--rw end      uint32
     |     +--ro state
     |        +--ro start    uint32
     |        +--ro end      uint32
     +--rw traffic-engineering {feature-list:HAVE_SR_POLICY_OR_HAVE_SRV6}?
     |  +--rw config!
     |  |  +--rw fast-reroute-enable?   empty {feature-list:HAVE_SR_POLICY}?
     |  |  +--rw enable                 empty
     |  +--ro state
     |  |  +--ro fast-reroute-enable?   empty {feature-list:HAVE_SR_POLICY}?
     |  |  +--ro enable                 empty
     |  +--rw attributes
     |  |  +--rw segment-lists {feature-list:HAVE_SR_POLICY_OR_HAVE_SRV6}?
     |  |     +--rw segment-list* [list-name]
     |  |        +--rw list-name    -> ../config/list-name
     |  |        +--rw config
     |  |        |  +--rw list-name?   string
     |  |        +--ro state
     |  |        |  +--ro list-name?   string
     |  |        +--rw segments
     |  |           +--rw segment* [segment-index type]
     |  |           |  +--rw segment-index     -> ../config/segment-index
     |  |           |  +--rw type              -> ../config/type
     |  |           |  +--rw config
     |  |           |  |  +--rw segment-index?   uint32
     |  |           |  |  +--rw type?            ipi-sr-types:srte_segment_type_mpls_t
     |  |           |  +--ro state
     |  |           |  |  +--ro segment-index?   uint32
     |  |           |  |  +--ro type?            ipi-sr-types:srte_segment_type_mpls_t
     |  |           |  +--rw segment-type-1 {feature-list:HAVE_SR_MPLS}?
     |  |           |     +--rw config
     |  |           |     |  +--rw sid-value?   uint32
     |  |           |     +--ro state
     |  |           |        +--ro sid-value?   uint32
     |  |           +--rw segment-v6* [segment-index type]
     |  |              +--rw segment-index     -> ../config/segment-index
     |  |              +--rw type              -> ../config/type
     |  |              +--rw config
     |  |              |  +--rw segment-index?   uint32
     |  |              |  +--rw type?            ipi-sr-types:srte_segment_type_2_t
     |  |              +--ro state
     |  |              |  +--ro segment-index?   uint32
     |  |              |  +--ro type?            ipi-sr-types:srte_segment_type_2_t
     |  |              +--rw segment-type-2 {feature-list:HAVE_SRV6}?
     |  |                 +--rw config
     |  |                 |  +--rw prefix?   inet:ipv6-address
     |  |                 +--ro state
     |  |                    +--ro prefix?   inet:ipv6-address
     |  +--rw policies {feature-list:HAVE_SR_POLICY_OR_HAVE_SRV6}?
     |  |  +--rw policy* [name]
     |  |     +--rw name               -> ../config/name
     |  |     +--rw policy-keys
     |  |     |  +--rw policy-key* [color end-point]
     |  |     |     +--rw color        -> ../config/color
     |  |     |     +--rw end-point    -> ../config/end-point
     |  |     |     +--rw config
     |  |     |     |  +--rw color?       uint32
     |  |     |     |  +--rw end-point?   inet:ip-address
     |  |     |     +--ro state
     |  |     |        +--ro color?       uint32
     |  |     |        +--ro end-point?   inet:ip-address
     |  |     +--rw config
     |  |     |  +--rw name?                  string
     |  |     |  +--rw admin-state?           empty
     |  |     |  +--rw explicit-null?         ipi-sr-types:srte_explicite_null_type_t {feature-list:HAVE_SR_POLICY}?
     |  |     |  +--rw cspf-retry-limit?      uint32 {feature-list:HAVE_SR_POLICY}?
     |  |     |  +--rw cspf-retry-interval?   uint32 {feature-list:HAVE_SR_POLICY}?
     |  |     |  +--rw entropy-erld?          uint8 {feature-list:HAVE_SR_POLICY}?
     |  |     |  +--rw pce-lsp-delegate?      empty {feature-list:HAVE_PCEP_SR_OR_HAVE_PCEP_SRV6}?
     |  |     |  +--rw pce-state-report?      empty {feature-list:HAVE_PCEP_SR_OR_HAVE_PCEP_SRV6}?
     |  |     |  +--rw pce-entity-id?         uint32 {feature-list:HAVE_PCEP_SR_OR_HAVE_PCEP_SRV6}?
     |  |     |  +--rw bsid-value?            uint32 {feature-list:HAVE_SR_POLICY}?
     |  |     +--rw candidate-paths
     |  |     |  +--rw candidate-path* [discriminator protocol-origin originator]
     |  |     |     +--rw discriminator       -> ../config/discriminator
     |  |     |     +--rw protocol-origin     -> ../config/protocol-origin
     |  |     |     +--rw originator          -> ../config/originator
     |  |     |     +--rw config
     |  |     |     |  +--rw discriminator?     uint32
     |  |     |     |  +--rw protocol-origin?   ipi-sr-types:srte_protocol_origin_type_type_t
     |  |     |     |  +--rw originator?        string
     |  |     |     |  +--rw preference?        uint32
     |  |     |     +--ro state
     |  |     |     |  +--ro discriminator?            uint32
     |  |     |     |  +--ro protocol-origin?          ipi-sr-types:srte_protocol_origin_type_type_t
     |  |     |     |  +--ro originator?               string
     |  |     |     |  +--ro preference?               uint32
     |  |     |     |  +--ro is-valid?                 boolean
     |  |     |     |  +--ro non-selection-reason?     cml-data-types:cml_line_t
     |  |     |     |  +--ro is-best-candidate-path?   boolean
     |  |     |     +--ro forwarding-paths
     |  |     |     |  +--ro forwarding-path
     |  |     |     |     +--ro state
     |  |     |     |     |  +--ro path-id?              uint8
     |  |     |     |     |  +--ro next-hop-address?     inet:ip-address
     |  |     |     |     |  +--ro outgoing-interface?   string
     |  |     |     |     |  +--ro path-type?            string
     |  |     |     |     +--ro label-stack
     |  |     |     |        +--ro labels
     |  |     |     |           +--ro state
     |  |     |     |              +--ro label?   string
     |  |     |     +--rw dynamic {feature-list:HAVE_SR_POLICY_OR_HAVE_PCEP_SRV6}?
     |  |     |     |  +--rw config
     |  |     |     |  |  +--rw pcep?         empty {feature-list:HAVE_PCEP_SR_OR_HAVE_PCEP_SRV6}?
     |  |     |     |  |  +--rw isis?         string
     |  |     |     |  |  +--rw ospf?         int32
     |  |     |     |  |  +--rw ospf-empty?   empty
     |  |     |     |  +--ro state
     |  |     |     |  |  +--ro pcep?         empty {feature-list:HAVE_PCEP_SR_OR_HAVE_PCEP_SRV6}?
     |  |     |     |  |  +--ro isis?         string
     |  |     |     |  |  +--ro ospf?         int32
     |  |     |     |  |  +--ro ospf-empty?   empty
     |  |     |     |  +--rw constraints
     |  |     |     |     +--rw config!
     |  |     |     |     |  +--rw enable    empty
     |  |     |     |     +--ro state
     |  |     |     |     |  +--ro enable    empty
     |  |     |     |     +--rw admin-groups {feature-list:HAVE_SR_POLICY_OR_HAVE_PCEP_SRV6}?
     |  |     |     |     |  +--rw admin-group* [admin-group-name] {feature-list:HAVE_SR_POLICY_OR_HAVE_PCEP_SRV6}?
     |  |     |     |     |     +--rw admin-group-name    -> ../config/admin-group-name
     |  |     |     |     |     +--rw config
     |  |     |     |     |     |  +--rw affinity-type?      ipi-sr-types:sr_te_admin_group_type_t
     |  |     |     |     |     |  +--rw admin-group-name?   string
     |  |     |     |     |     +--ro state
     |  |     |     |     |        +--ro affinity-type?      ipi-sr-types:sr_te_admin_group_type_t
     |  |     |     |     |        +--ro admin-group-name?   string
     |  |     |     |     +--rw bounds
     |  |     |     |     |  +--rw bound* [metric-type]
     |  |     |     |     |     +--rw metric-type    -> ../config/metric-type
     |  |     |     |     |     +--rw config
     |  |     |     |     |     |  +--rw metric-type?     ipi-sr-types:srte_cp_metric_type_t
     |  |     |     |     |     |  +--rw bound?           uint32
     |  |     |     |     |     |  +--rw segment-bound?   uint32
     |  |     |     |     |     +--ro state
     |  |     |     |     |        +--ro metric-type?     ipi-sr-types:srte_cp_metric_type_t
     |  |     |     |     |        +--ro bound?           uint32
     |  |     |     |     |        +--ro segment-bound?   uint32
     |  |     |     |     +--rw ip
     |  |     |     |     |  +--rw include-hop* [address]
     |  |     |     |     |     +--rw address    -> ../config/address
     |  |     |     |     |     +--rw config
     |  |     |     |     |     |  +--rw address?   inet:ip-address
     |  |     |     |     |     |  +--rw type?      ipi-sr-types:srte_ip_constraint_hop_type_t
     |  |     |     |     |     +--ro state
     |  |     |     |     |        +--ro address?   inet:ip-address
     |  |     |     |     |        +--ro type?      ipi-sr-types:srte_ip_constraint_hop_type_t
     |  |     |     |     +--rw segment-rule
     |  |     |     |     |  +--rw config!
     |  |     |     |     |  |  +--rw enable    empty
     |  |     |     |     |  +--ro state
     |  |     |     |     |  |  +--ro enable    empty
     |  |     |     |     |  +--rw property
     |  |     |     |     |     +--rw config!
     |  |     |     |     |     |  +--rw dataplane-type?    ipi-sr-types:sr_dyn_cp_dataplane_type_t
     |  |     |     |     |     |  +--rw sid-algorithm?     uint32
     |  |     |     |     |     |  +--rw protection-type?   ipi-sr-types:sr_dyn_cp_protection_type_t
     |  |     |     |     |     +--ro state
     |  |     |     |     |        +--ro dataplane-type?    ipi-sr-types:sr_dyn_cp_dataplane_type_t
     |  |     |     |     |        +--ro sid-algorithm?     uint32
     |  |     |     |     |        +--ro protection-type?   ipi-sr-types:sr_dyn_cp_protection_type_t
     |  |     |     |     +--rw disjoint-paths
     |  |     |     |        +--rw disjoint-path* [group-id disjoint-type]
     |  |     |     |           +--rw group-id         -> ../config/group-id
     |  |     |     |           +--rw disjoint-type    -> ../config/disjoint-type
     |  |     |     |           +--rw config!
     |  |     |     |           |  +--rw group-id?        uint32
     |  |     |     |           |  +--rw disjoint-type?   ipi-sr-types:sr_dyn_cp_disjoint_path_type_t
     |  |     |     |           |  +--rw sub-id?          uint32
     |  |     |     |           +--ro state
     |  |     |     |              +--ro group-id?        uint32
     |  |     |     |              +--ro disjoint-type?   ipi-sr-types:sr_dyn_cp_disjoint_path_type_t
     |  |     |     |              +--ro sub-id?          uint32
     |  |     |     +--rw explicit
     |  |     |        +--rw segment-lists {feature-list:HAVE_SR_POLICY_OR_HAVE_SRV6}?
     |  |     |           +--rw segment-list* [list-name]
     |  |     |              +--rw list-name    -> ../config/list-name
     |  |     |              +--rw config
     |  |     |                 +--rw list-name?   string
     |  |     +--ro state
     |  |        +--ro statistics {feature-list:HAVE_SR_POLICY}?
     |  |        |  +--ro tx-bytes?     uint64
     |  |        |  +--ro rx-bytes?     uint64
     |  |        |  +--ro tx-packets?   uint64
     |  |        |  +--ro rx-packets?   uint64
     |  |        +--ro name?                  string
     |  |        +--ro admin-state?           empty
     |  |        +--ro explicit-null?         ipi-sr-types:srte_explicite_null_type_t {feature-list:HAVE_SR_POLICY}?
     |  |        +--ro cspf-retry-limit?      uint32 {feature-list:HAVE_SR_POLICY}?
     |  |        +--ro cspf-retry-interval?   uint32 {feature-list:HAVE_SR_POLICY}?
     |  |        +--ro entropy-erld?          uint8 {feature-list:HAVE_SR_POLICY}?
     |  |        +--ro pce-lsp-delegate?      empty {feature-list:HAVE_PCEP_SR_OR_HAVE_PCEP_SRV6}?
     |  |        +--ro pce-state-report?      empty {feature-list:HAVE_PCEP_SR_OR_HAVE_PCEP_SRV6}?
     |  |        +--ro pce-entity-id?         uint32 {feature-list:HAVE_PCEP_SR_OR_HAVE_PCEP_SRV6}?
     |  |        +--ro bsid-value?            uint32 {feature-list:HAVE_SR_POLICY}?
     |  |        +--ro oper-state?            ipi-sr-types:srte_policy_oper_state_t
     |  |        +--ro transition-count?      uint32
     |  |        +--ro up-time?               string
     |  |        +--ro down-time?             string
     |  |        +--ro bsid-alloc-mode?       string
     |  |        +--ro bsid-oper-state?       ipi-sr-types:sr_policy_bsid_oper_state
     |  +--rw on-demand-nexthops {feature-list:HAVE_SR_POLICY}?
     |     +--rw on-demand-nexthop* [color]
     |        +--rw color              -> ../config/color
     |        +--rw config
     |        |  +--rw color?                 uint32
     |        |  +--rw cspf-retry-limit?      uint16
     |        |  +--rw cspf-retry-interval?   uint16
     |        |  +--rw pce-lsp-delegate?      empty {feature-list:HAVE_PCEP_SR}?
     |        |  +--rw pce-state-report?      empty {feature-list:HAVE_PCEP_SR}?
     |        |  +--rw pce-entity-id?         uint8 {feature-list:HAVE_PCEP_SR}?
     |        |  +--rw binding-sid-label?     uint16
     |        +--ro state
     |        |  +--ro color?                 uint32
     |        |  +--ro cspf-retry-limit?      uint16
     |        |  +--ro cspf-retry-interval?   uint16
     |        |  +--ro pce-lsp-delegate?      empty {feature-list:HAVE_PCEP_SR}?
     |        |  +--ro pce-state-report?      empty {feature-list:HAVE_PCEP_SR}?
     |        |  +--ro pce-entity-id?         uint8 {feature-list:HAVE_PCEP_SR}?
     |        |  +--ro binding-sid-label?     uint16
     |        +--rw candidate-paths
     |           +--rw candidate-path* [discriminator protocol-origin originator]
     |              +--rw discriminator      -> ../config/discriminator
     |              +--rw protocol-origin    -> ../config/protocol-origin
     |              +--rw originator         -> ../config/originator
     |              +--rw config
     |              |  +--rw discriminator?     uint32
     |              |  +--rw protocol-origin?   ipi-sr-types:srte_protocol_origin_type_type_t
     |              |  +--rw originator?        string
     |              |  +--rw preference?        uint16
     |              +--ro state
     |              |  +--ro discriminator?     uint32
     |              |  +--ro protocol-origin?   ipi-sr-types:srte_protocol_origin_type_type_t
     |              |  +--ro originator?        string
     |              |  +--ro preference?        uint16
     |              +--rw dynamic {feature-list:HAVE_SR_POLICY}?
     |                 +--rw config
     |                 |  +--rw pcep?               empty {feature-list:HAVE_PCEP_SR}?
     |                 |  +--rw isis-instance-id?   string
     |                 |  +--rw ospf-process-id?    int32
     |                 |  +--rw ospf-empty?         empty
     |                 +--ro state
     |                 |  +--ro pcep?               empty {feature-list:HAVE_PCEP_SR}?
     |                 |  +--ro isis-instance-id?   string
     |                 |  +--ro ospf-process-id?    int32
     |                 |  +--ro ospf-empty?         empty
     |                 +--rw constraints
     |                    +--rw config!
     |                    |  +--rw enable    empty
     |                    +--ro state
     |                    |  +--ro enable    empty
     |                    +--rw affinity-admin-groups
     |                    |  +--rw affinity-admin-group* [admin-group-name] {feature-list:HAVE_SR_POLICY}?
     |                    |     +--rw admin-group-name    -> ../config/admin-group-name
     |                    |     +--rw config
     |                    |     |  +--rw affinity-type?      ipi-sr-types:sr_te_admin_group_type_t
     |                    |     |  +--rw admin-group-name?   string
     |                    |     +--ro state
     |                    |        +--ro affinity-type?      ipi-sr-types:sr_te_admin_group_type_t
     |                    |        +--ro admin-group-name?   string
     |                    +--rw bounds
     |                    |  +--rw bound* [metric-type]
     |                    |     +--rw metric-type    -> ../config/metric-type
     |                    |     +--rw config
     |                    |     |  +--rw metric-type?   ipi-sr-types:srte_cp_metric_type_t
     |                    |     |  +--rw bound?         uint32
     |                    |     +--ro state
     |                    |        +--ro metric-type?   ipi-sr-types:srte_cp_metric_type_t
     |                    |        +--ro bound?         uint32
     |                    +--rw ip
     |                       +--rw include-hops
     |                          +--rw include-hop* [address]
     |                             +--rw address    -> ../config/address
     |                             +--rw config
     |                             |  +--rw address?   inet:ip-address
     |                             |  +--rw type?      ipi-sr-types:srte_ip_constraint_hop_type_t
     |                             +--ro state
     |                                +--ro address?   inet:ip-address
     |                                +--ro type?      ipi-sr-types:srte_ip_constraint_hop_type_t
     +--rw srv6 {feature-list:HAVE_SRV6}?
     |  +--rw config!
     |  |  +--rw enable    empty
     |  +--ro state
     |  |  +--ro enable    empty
     |  +--rw locators {feature-list:HAVE_SRV6}?
     |  |  +--rw config!
     |  |  |  +--rw enable    empty
     |  |  +--ro state
     |  |  |  +--ro enable    empty
     |  |  +--rw locator* [locator-name]
     |  |     +--rw locator-name    -> ../config/locator-name
     |  |     +--rw config
     |  |     |  +--rw locator-name?   string
     |  |     |  +--rw prefix?         cml-data-types:cml_ipv6_prefix_t
     |  |     +--ro state
     |  |        +--ro locator-name?   string
     |  |        +--ro prefix?         cml-data-types:cml_ipv6_prefix_t
     |  |        +--ro uptime?         string
     |  +--ro services-entries
     |  |  +--ro services-entry* [fec-ipv4-prefix service-vrf-id]
     |  |     +--ro fec-ipv4-prefix    -> ../state/fec-ipv4-prefix
     |  |     +--ro service-vrf-id     -> ../state/service-vrf-id
     |  |     +--ro state
     |  |        +--ro fec-ipv4-prefix?       cml-data-types:cml_ipv4_prefix_t
     |  |        +--ro service-vrf-id?        uint32
     |  |        +--ro service-vrf-name?      string
     |  |        +--ro service-type?          string
     |  |        +--ro flags?                 string
     |  |        +--ro address-family?        uint32
     |  |        +--ro sid?                   inet:ipv6-address
     |  |        +--ro nexthop-ipv6-prefix?   inet:ipv6-address
     |  |        +--ro service-policy-name?   string
     |  +--ro transport-entries
     |  |  +--ro transport-entry* [fec]
     |  |     +--ro fec            -> ../state/fec
     |  |     +--ro state
     |  |     |  +--ro fec?               inet:ipv6-address
     |  |     |  +--ro policy-name?       string
     |  |     |  +--ro policy-id?         uint32
     |  |     |  +--ro transport-color?   uint32
     |  |     |  +--ro code?              string
     |  |     |  +--ro is-primary?        boolean
     |  |     |  +--ro out-sid?           inet:ipv6-address
     |  |     |  +--ro out-interface?     string
     |  |     |  +--ro nexthop?           inet:ipv6-address
     |  |     +--ro ftn-entries
     |  |        +--ro ftn-entry* [vrf-id fec-prefix]
     |  |           +--ro vrf-id        -> ../state/vrf-id
     |  |           +--ro fec-prefix    -> ../state/fec-prefix
     |  |           +--ro state
     |  |              +--ro vrf-id?          uint32
     |  |              +--ro fec-prefix?      cml-data-types:cml_ipv4_addr_prefix_t
     |  |              +--ro vrf-name?        string
     |  |              +--ro ftn-nexthop?     inet:ipv6-address
     |  |              +--ro tunnel-policy?   string
     |  |              +--ro ftn-color?       uint32
     |  +--ro manager-entries {feature-list:HAVE_SRV6}?
     |     +--ro state
     |        +--ro protocol-state?                            ipi-sr-types:srv6_protocol_state_t
     |        +--ro srv6-locator-name?                         string
     |        +--ro platform-capabilities-end-function*        string
     |        +--ro platform-capabilities-ingress-function*    string
     |        +--ro platform-capabilities-ingress-sr-policy*   string
     +--rw debug {feature-list:HAVE_SR_POLICY_OR_HAVE_SRV6}?
        +--rw config
        |  +--rw options?   ipi-sr-types:sr_te_debug_t
        +--ro state
           +--ro options?                 ipi-sr-types:sr_te_debug_t
           +--ro terminal-debug-status?   ipi-sr-types:sr_te_debug_t
 
  rpcs:
    +---x sr-policy-terminal-debug-all-on {feature-list:HAVE_SR_POLICY_OR_HAVE_SRV6_OR_HAVE_SR_MPLS}?
    +---x sr-policy-terminal-debug-on {feature-list:HAVE_SR_POLICY_OR_HAVE_SRV6_OR_HAVE_SR_MPLS}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-sr-types:sr_te_debug_t
    +---x sr-policy-terminal-debug-off {feature-list:HAVE_SR_POLICY_OR_HAVE_SRV6_OR_HAVE_SR_MPLS}?
       +---w input
          +---w terminal-debug-options    ipi-sr-types:sr_te_debug_t
 
  notifications:
    +---n sr-policy-oper-state-down
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro oper-state?   ipi-sr-types:srte_policy_oper_state_t
    +---n sr-policy-oper-state-up
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro name?         string
    |  +--ro oper-state?   ipi-sr-types:srte_policy_oper_state_t
    +---n sr-policy-cp-active
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro discriminator?     uint32
    |  +--ro protocol-origin?   ipi-sr-types:srte_protocol_origin_type_type_t
    |  +--ro originator?        string
    |  +--ro name?              string
    |  +--ro is-valid?          boolean
    +---n sr-policy-cp-inactive
    |  +--ro severity?          cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?        cml-data-types:cml_notif_class_t
    |  +--ro discriminator?     uint32
    |  +--ro protocol-origin?   ipi-sr-types:srte_protocol_origin_type_type_t
    |  +--ro originator?        string
    |  +--ro name?              string
    |  +--ro is-valid?          boolean
    +---n sr-policy-binding-sid-unavailable-event {feature-list:HAVE_SR_POLICY}?
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro name?         string
       +--ro bsid-value?   uint32
 
 
module: ipi-service-map
  +--rw service-map {feature-list:HAVE_SERVICE_MAPPING}?
     +--rw tunnel-policies
        +--rw tunnel-policy* [name]
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?             string
           |  +--rw color-code*       uint32
           |  +--rw selection-mode?   ipi-service-map-types:tunnel_selection_mode_t
           |  +--rw tunnel-type?      ipi-service-map-types:tunnel_selection_type_t {feature-list:HAVE_SRV6_OR_HAVE_SR_MPLS_OR_HAVE_MPLS}?
           +--ro state
              +--ro name?             string
              +--ro color-code*       uint32
              +--ro selection-mode?   ipi-service-map-types:tunnel_selection_mode_t
              +--ro tunnel-type?      ipi-service-map-types:tunnel_selection_type_t {feature-list:HAVE_SRV6_OR_HAVE_SR_MPLS_OR_HAVE_MPLS}?
 
module: ipi-sflow-interface
 
  augment /ipi-sflow:sampling/ipi-sflow:sflow:
    +--rw interfaces
       +--rw interface* [name]
          +--rw name       -> ../config/name
          +--rw config
          |  +--rw name?               -> /ipi-interface:interfaces/interface/name
          |  +--rw enabled?            empty
          |  +--rw polling-interval?   uint8
          |  +--rw collector-id?       uint8
          +--ro state
          |  +--ro name?               -> /ipi-interface:interfaces/interface/name
          |  +--ro enabled?            empty
          |  +--ro polling-interval?   uint8
          |  +--ro collector-id?       uint8
          |  +--ro polling-count?      yang:counter32
          +--rw ingress
          |  +--rw config!
          |  |  +--rw sampling-rate    uint32
          |  |  +--rw sample-size      uint16
          |  +--ro state
          |     +--ro sampling-rate           uint32
          |     +--ro sample-size             uint16
          |     +--ro sampling-status?        ipi-sflow-types:sflow_egress_ingress_t
          |     +--ro sampled-packet-count?   yang:counter32
          +--rw egress
             +--rw config!
             |  +--rw sampling-rate    uint32
             |  +--rw sample-size      uint16
             +--ro state
                +--ro sampling-rate           uint32
                +--ro sample-size             uint16
                +--ro sampling-status?        ipi-sflow-types:sflow_egress_ingress_t
                +--ro sampled-packet-count?   yang:counter32
 
  rpcs:
    +---x sflow-clear-statistics {feature-list:HAVE_SFLOW}?
       +---w input
          +---w interface    string
 
module: ipi-sflow-ipfix
  +--rw ipfix
     +--rw ip-flow-exporters
     |  +--rw ip-flow-exporter* [exporter-name]
     |     +--rw exporter-name    -> ../config/exporter-name
     |     +--rw config
     |     |  +--rw exporter-name?               string
     |     |  +--rw source-if?                   -> /ipi-interface:interfaces/interface/name
     |     |  +--rw collector-ip?                inet:ipv4-address
     |     |  +--rw collector-port?              inet:port-number
     |     |  +--rw collector-vrf?               -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |     |  +--rw template-id?                 uint32
     |     |  +--rw template-refresh-interval?   uint32
     |     |  +--rw samples-per-message?         uint32
     |     +--ro state
     |        +--ro exporter-name?               string
     |        +--ro source-if?                   -> /ipi-interface:interfaces/interface/name
     |        +--ro collector-ip?                inet:ipv4-address
     |        +--ro collector-port?              inet:port-number
     |        +--ro collector-vrf?               -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |        +--ro template-id?                 uint32
     |        +--ro template-refresh-interval?   uint32
     |        +--ro samples-per-message?         uint32
     +--rw ip-flow-monitors
     |  +--rw ip-flow-monitor* [monitor-name]
     |     +--rw monitor-name    -> ../config/monitor-name
     |     +--rw config
     |     |  +--rw monitor-name?            string
     |     |  +--rw flow-exporter?           -> /ipfix/ip-flow-exporters/ip-flow-exporter/exporter-name
     |     |  +--rw sampling-rate?           uint32
     |     |  +--rw observation-domain-id?   uint32
     |     +--ro state
     |        +--ro monitor-name?            string
     |        +--ro flow-exporter?           -> /ipfix/ip-flow-exporters/ip-flow-exporter/exporter-name
     |        +--ro sampling-rate?           uint32
     |        +--ro observation-domain-id?   uint32
     +--rw interfaces
        +--rw interface* [interface-name]
           +--rw interface-name    -> ../config/interface-name
           +--rw config
           |  +--rw interface-name?   -> /ipi-interface:interfaces/interface/name
           |  +--rw flow-monitor?     -> /ipfix/ip-flow-monitors/ip-flow-monitor/config/monitor-name
           +--ro state
              +--ro interface-name?   -> /ipi-interface:interfaces/interface/name
              +--ro flow-monitor?     -> /ipfix/ip-flow-monitors/ip-flow-monitor/config/monitor-name
 
 
module: ipi-sflow
  +--rw sampling
     +--rw sflow
        +--rw config!
        |  +--rw enabled           empty
        |  +--rw source-address?   inet:ipv4-address
        +--ro state
        |  +--ro enabled             empty
        |  +--ro source-address?     inet:ipv4-address
        |  +--ro sflow-version?      string
        |  +--ro datagram-version?   uint8
        +--rw collectors
        |  +--rw collector* [address port collector-id]
        |     +--rw address         -> ../config/address
        |     +--rw port            -> ../config/port
        |     +--rw collector-id    -> ../config/collector-id
        |     +--rw config
        |     |  +--rw address?             inet:ipv4-address
        |     |  +--rw port?                inet:port-number
        |     |  +--rw receiver-timeout     uint32
        |     |  +--rw max-datagram-size    uint16
        |     |  +--rw collector-id?        uint8
        |     |  +--rw vrf-name             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
        |     +--ro state
        |        +--ro address?             inet:ipv4-address
        |        +--ro port?                inet:port-number
        |        +--ro receiver-timeout     uint32
        |        +--ro max-datagram-size    uint16
        |        +--ro collector-id?        uint8
        |        +--ro vrf-name             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
        +--rw debug
           +--rw config
           |  +--rw options?   ipi-sflow-types:sflow_debug_t
           +--ro state
              +--ro options?                 ipi-sflow-types:sflow_debug_t
              +--ro terminal-debug-status?   ipi-sflow-types:sflow_debug_t
 
  rpcs:
    +---x sflow-terminal-debug-on {feature-list:HAVE_SFLOW}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-sflow-types:sflow_debug_t
    +---x sflow-terminal-debug-off {feature-list:HAVE_SFLOW}?
       +---w input
          +---w terminal-debug-options    ipi-sflow-types:sflow_debug_t
 
  notifications:
    +---n sflow-receiver-timeout-alarm-message
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro message?      string
 
 
module: ipi-snmp-server-extended
  +--rw snmp-dir
     +--rw config
     |  +--rw include-directive?   empty
     +--ro state
        +--ro include-directive?   empty
 
  augment /ipi-snmp:snmp/ipi-snmp-server:servers:
    +--rw debug {feature-list:HAVE_SNMP_AGENT}?
       +--rw config
       |  +--rw enable?   empty
       +--ro state
          +--ro enable?                  empty
          +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
  augment /ipi-snmp:snmp/ipi-snmp-server:servers/ipi-snmp-server:server:
    +--rw snmp-views {feature-list:HAVE_SNMP_AGENT}?
       +--rw snmp-view* [view-name] {feature-list:HAVE_SNMP_AGENT}?
          +--rw view-name    -> ../config/view-name
          +--rw config
          |  +--rw view-name?   string
          +--ro state
          |  +--ro view-name?   string
          +--rw oid-trees
             +--rw oid-tree* [oid] {feature-list:HAVE_SNMP_AGENT}?
                +--rw oid       -> ../config/oid
                +--rw config!
                |  +--rw oid?           string
                |  +--rw filter-type    ipi-snmp-server-extended-types:snmp_server_oid_tree_t
                +--ro state
                   +--ro oid?           string
                   +--ro filter-type    ipi-snmp-server-extended-types:snmp_server_oid_tree_t
  augment /ipi-snmp:snmp:
    +--rw engine-id {feature-list:HAVE_SNMP_V3,feature-list:HAVE_SNMP_AGENT}?
       +--rw config
       |  +--rw engine-id?   string
       +--ro state
          +--ro engine-id?   string
  augment /ipi-snmp:snmp/ipi-snmp-server:servers/ipi-snmp-server:server:
    +--rw smux-port {feature-list:HAVE_SNMP_AGENT}?
       +--rw config
       |  +--rw smux-port-enable?   empty
       +--ro state
          +--ro smux-port-enable?   empty
  augment /ipi-snmp:snmp/ipi-snmp-server:servers/ipi-snmp-server:server:
    +--rw hosts {feature-list:HAVE_SNMP_AGENT}?
       +--rw host* [host-name] {feature-list:HAVE_SNMP_AGENT}?
          +--rw host-name    -> ../config/host-name
          +--rw config
          |  +--rw host-name?                string
          |  +--rw snmp-version?             ipi-snmp-server-extended-types:snmp_server_version_t
          |  +--rw notification-type?        ipi-snmp-server-extended-types:snmp_server_notification_t
          |  +--rw udp-port?                 uint32
          |  +--rw (host-option)?
          |     +--:(use-community)
          |     |  +--rw community?          -> /ipi-snmp:snmp/ipi-snmp-server:servers/server/communities/community/community-name
          |     +--:(use-snmpv3-user)
          |     |  +--rw snmpv3-auth-type?   ipi-snmp-server-extended-types:snmp_server_version3_auth_type_t
          |     |  +--rw snmpv3-user?        -> /ipi-snmp:snmp/ipi-snmp-server:servers/server/users/user/config/user-name
          |     +--:(use-host-user)
          |        +--rw host-user?          string
          +--ro state
             +--ro host-name?                string
             +--ro snmp-version?             ipi-snmp-server-extended-types:snmp_server_version_t
             +--ro notification-type?        ipi-snmp-server-extended-types:snmp_server_notification_t
             +--ro udp-port?                 uint32
             +--ro (host-option)?
                +--:(use-community)
                |  +--ro community?          -> /ipi-snmp:snmp/ipi-snmp-server:servers/server/communities/community/community-name
                +--:(use-snmpv3-user)
                |  +--ro snmpv3-auth-type?   ipi-snmp-server-extended-types:snmp_server_version3_auth_type_t
                |  +--ro snmpv3-user?        -> /ipi-snmp:snmp/ipi-snmp-server:servers/server/users/user/config/user-name
                +--:(use-host-user)
                   +--ro host-user?          string
  augment /ipi-snmp:snmp/ipi-snmp-server:servers/ipi-snmp-server:server:
    +--rw users {feature-list:HAVE_SNMP_AGENT}?
       +--rw user* [user-name] {feature-list:HAVE_SNMP_AGENT,feature-list:HAVE_SNMP_V3}?
          +--rw user-name    -> ../config/user-name
          +--rw config
          |  +--rw user-name?                 string
          |  +--rw user-type?                 ipi-snmp-server-extended-types:snmp_server_group_name_t
          |  +--rw user-group?                string
          |  +--rw encryption-type?           ipi-snmp-server-extended-types:snmp_server_key_type_t
          |  +--rw authentication-type?       ipi-snmp-server-extended-types:snmp_server_auth_t
          |  +--rw authentication-password?   string
          |  +--rw privilege-type?            ipi-snmp-server-extended-types:snmp_server_priv_t
          |  +--rw privilege-password?        string
          +--ro state
             +--ro user-name?                 string
             +--ro user-type?                 ipi-snmp-server-extended-types:snmp_server_group_name_t
             +--ro user-group?                string
             +--ro encryption-type?           ipi-snmp-server-extended-types:snmp_server_key_type_t
             +--ro authentication-type?       ipi-snmp-server-extended-types:snmp_server_auth_t
             +--ro authentication-password?   string
             +--ro privilege-type?            ipi-snmp-server-extended-types:snmp_server_priv_t
             +--ro privilege-password?        string
  augment /ipi-snmp:snmp/ipi-snmp-server:servers/ipi-snmp-server:server:
    +--rw contexts {feature-list:HAVE_SNMP_AGENT}?
       +--rw context* [context-name]
          +--rw context-name    -> ../config/context-name
          +--rw config
          |  +--rw context-name?   string
          +--ro state
             +--ro context-name?   string
  augment /ipi-snmp:snmp/ipi-snmp-server:servers/ipi-snmp-server:server:
    +--rw communities {feature-list:HAVE_SNMP_AGENT}?
       +--rw community* [community-name] {feature-list:HAVE_SNMP_AGENT}?
          +--rw community-name               -> ../config/community-name
          +--rw config
          |  +--rw community-name?            string
          |  +--rw acl-name?                  -> /ipi-acl:acl/standard-acl-sets/standard-acl-set/name
          |  +--rw community-view-name?       -> /ipi-snmp:snmp/ipi-snmp-server:servers/server/snmp-views/snmp-view/view-name
          |  +--rw version?                   ipi-snmp-server-extended-types:snmp_server_view_version_t
          |  +--rw access?                    ipi-snmp-server-extended-types:snmp_server_access_t
          |  +--rw (community-option)?
          |     +--:(use-group)
          |     |  +--rw snmp-group?          ipi-snmp-server-extended-types:snmp_server_group_t
          |     +--:(use-access)
          |        +--rw access-privileges?   ipi-snmp-server-extended-types:snmp_server_access_t
          +--ro state
          |  +--ro community-name?            string
          |  +--ro acl-name?                  -> /ipi-acl:acl/standard-acl-sets/standard-acl-set/name
          |  +--ro community-view-name?       -> /ipi-snmp:snmp/ipi-snmp-server:servers/server/snmp-views/snmp-view/view-name
          |  +--ro version?                   ipi-snmp-server-extended-types:snmp_server_view_version_t
          |  +--ro access?                    ipi-snmp-server-extended-types:snmp_server_access_t
          |  +--ro (community-option)?
          |     +--:(use-group)
          |     |  +--ro snmp-group?          ipi-snmp-server-extended-types:snmp_server_group_t
          |     +--:(use-access)
          |        +--ro access-privileges?   ipi-snmp-server-extended-types:snmp_server_access_t
          +--rw community-context-mapping
             +--rw config
             |  +--rw community-context?   string
             |  +--rw community-user?      string
             +--ro state
                +--ro community-context?   string
                +--ro community-user?      string
  augment /ipi-snmp:snmp/ipi-snmp-server:servers/ipi-snmp-server:server:
    +--rw server-groups {feature-list:HAVE_SNMP_AGENT}?
       +--rw server-group* [group-name] {feature-list:HAVE_SNMP_AGENT}?
          +--rw group-name    -> ../config/group-name
          +--rw config
          |  +--rw group-name?               string
          |  +--rw group-version?            ipi-snmp-server-extended-types:snmp_server_version_t
          |  +--rw snmpv3-group-auth-type?   ipi-snmp-server-extended-types:snmp_v3_server_group_auth_type_t
          |  +--rw context*                  ipi-snmp-server-extended-types:snmp_server_context_name_t
          +--ro state
             +--ro group-name?               string
             +--ro group-version?            ipi-snmp-server-extended-types:snmp_server_version_t
             +--ro snmpv3-group-auth-type?   ipi-snmp-server-extended-types:snmp_v3_server_group_auth_type_t
             +--ro context*                  ipi-snmp-server-extended-types:snmp_server_context_name_t
  augment /ipi-snmp:snmp:
    +--ro statistics {feature-list:HAVE_SNMP_AGENT}?
       +--ro state
          +--ro engine-id?   cml-data-types:cml_line_t
  augment /ipi-snmp:snmp:
    +--ro default-global-values {feature-list:HAVE_SNMP_AGENT}?
       +--ro state
          +--ro system-default-contact?    ipi-snmp-server-extended-types:cml_line_without_pattern_t {feature-list:HAVE_SNMP_AGENT}?
          +--ro system-default-location?   ipi-snmp-server-extended-types:cml_line_without_pattern_t {feature-list:HAVE_SNMP_AGENT}?
 
  rpcs:
    +---x snmp-server-terminal-debug-on {feature-list:HAVE_HOSTPD}?
    +---x snmp-server-terminal-debug-off {feature-list:HAVE_HOSTPD}?
 
module: ipi-snmp-server
  +--rw custom
     +--rw config
     |  +--rw ent-ipi-iftable?   empty {feature-list:HAVE_SNMP_AGENT}?
     +--ro state
        +--ro ent-ipi-iftable?   empty {feature-list:HAVE_SNMP_AGENT}?
 
  augment /ipi-snmp:snmp:
    +--rw servers {feature-list:HAVE_SNMP_AGENT}?
       +--rw server* [vrf-name]
       |  +--rw vrf-name    -> ../config/vrf-name
       |  +--rw config!
       |  |  +--rw vrf-name?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
       |  |  +--rw enabled     empty
       |  +--ro state
       |  |  +--ro vrf-name?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
       |  |  +--ro enabled     empty
       |  +--rw global
       |     +--rw config
       |     |  +--rw system-contact?        cml-data-types:cml_line_t {feature-list:HAVE_SNMP_AGENT}?
       |     |  +--rw system-location?       cml-data-types:cml_line_t {feature-list:HAVE_SNMP_AGENT}?
       |     |  +--rw tcp-session-enabled?   empty {feature-list:HAVE_SNMP_AGENT}?
       |     +--ro state
       |        +--ro system-contact?        cml-data-types:cml_line_t {feature-list:HAVE_SNMP_AGENT}?
       |        +--ro system-location?       cml-data-types:cml_line_t {feature-list:HAVE_SNMP_AGENT}?
       |        +--ro tcp-session-enabled?   empty {feature-list:HAVE_SNMP_AGENT}?
       +--rw default-instance
          +--rw config
          |  +--rw disable-default-instance?   empty
          +--ro state
             +--ro disable-default-instance?   empty
 
 
module: ipi-snmp
  +--rw snmp {feature-list:HAVE_SNMP_AGENT}?
     +--rw server-traps
        +--rw config
        |  +--rw enable-traps?             ipi-snmp-types:snmp_trap_protocols
        |  +--rw enable-link-down-trap?    boolean
        |  +--rw enable-link-up-trap?      boolean
        |  +--rw include-interface-name?   empty
        +--ro state
        |  +--ro enable-traps?             ipi-snmp-types:snmp_trap_protocols
        |  +--ro enable-link-down-trap?    boolean
        |  +--ro enable-link-up-trap?      boolean
        |  +--ro include-interface-name?   empty
        +--rw trap-cache
           +--rw config!
           |  +--rw enable-trap-cache    empty {feature-list:HAVE_SNMP_AGENT}?
           |  +--rw timeout?             int8
           |  +--rw disable-ping?        empty
           |  +--rw max-count?           int16
           +--ro state
              +--ro enable-trap-cache    empty {feature-list:HAVE_SNMP_AGENT}?
              +--ro timeout?             int8
              +--ro disable-ping?        empty
              +--ro max-count?           int16
 
  rpcs:
    +---x snmp-agentx-enable-terminal-debugging {feature-list:HAVE_AGENTX}?
    |  +---w input
    |     +---w debug    ipi-snmp-types:snmp_agentx_debug_type_t
    +---x snmp-agentx-disable-terminal-debugging {feature-list:HAVE_AGENTX}?
       +---w input
          +---w debug    ipi-snmp-types:snmp_agentx_debug_type_t
 
 
module: ipi-source-interface
  +--rw source-interface {feature-list:HAVE_HOSTPD}?
     +--rw address-family-ipv4
     |  +--rw source-nat-mappings
     |     +--rw source-nat-mapping* [interface-name protocol-type vrf-name]
     |        +--rw interface-name    -> ../config/interface-name
     |        +--rw protocol-type     -> ../config/protocol-type
     |        +--rw vrf-name          -> ../config/vrf-name
     |        +--rw config
     |        |  +--rw interface-name?   -> /ipi-interface:interfaces/interface/name
     |        |  +--rw protocol-type?    ipi-source-interface-types:src_intf_proto_types_t
     |        |  +--rw port-number       ipi-source-interface-types:src_intf_port_number_t
     |        |  +--rw vrf-name?         -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |        +--ro state
     |           +--ro interface-name?   -> /ipi-interface:interfaces/interface/name
     |           +--ro protocol-type?    ipi-source-interface-types:src_intf_proto_types_t
     |           +--ro port-number       ipi-source-interface-types:src_intf_port_number_t
     |           +--ro vrf-name?         -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
     |           +--ro address?          inet:ip-address
     |           +--ro status?           ipi-source-interface-types:src_intf_status_t
     +--rw address-family-ipv6 {feature-list:HAVE_IPV6}?
        +--rw source-nat-mappings
           +--rw source-nat-mapping* [interface-name protocol-type vrf-name]
              +--rw interface-name    -> ../config/interface-name
              +--rw protocol-type     -> ../config/protocol-type
              +--rw vrf-name          -> ../config/vrf-name
              +--rw config
              |  +--rw interface-name?   -> /ipi-interface:interfaces/interface/name
              |  +--rw protocol-type?    ipi-source-interface-types:src_intf_proto_types_t
              |  +--rw port-number       ipi-source-interface-types:src_intf_port_number_t
              |  +--rw vrf-name?         -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
              +--ro state
                 +--ro interface-name?   -> /ipi-interface:interfaces/interface/name
                 +--ro protocol-type?    ipi-source-interface-types:src_intf_proto_types_t
                 +--ro port-number       ipi-source-interface-types:src_intf_port_number_t
                 +--ro vrf-name?         -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
                 +--ro address?          inet:ip-address
                 +--ro status?           ipi-source-interface-types:src_intf_status_t
 
 
 
 
module: ipi-ssh
  +--rw ssh-server
     +--rw debug
     |  +--rw config
     |  |  +--rw enable?   empty
     |  +--ro state
     |     +--ro enable?                  empty
     |     +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
     +--rw vrfs
        +--rw vrf* [vrf-name]
           +--rw vrf-name                 -> ../config/vrf-name
           +--rw config
           |  +--rw vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
           |  +--rw enable                boolean {feature-list:HAVE_SSH_SERVER}?
           |  +--rw port?                 uint32 {feature-list:HAVE_SSH_SERVER}?
           |  +--rw session-limit?        uint8 {feature-list:HAVE_SSH_SERVER}?
           |  +--rw max-login-attempts?   uint8 {feature-list:HAVE_SSH_SERVER}?
           |  +--rw default-algorithm?    empty
           +--ro state
           |  +--ro vrf-name?             -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
           |  +--ro enable                boolean {feature-list:HAVE_SSH_SERVER}?
           |  +--ro port?                 uint32 {feature-list:HAVE_SSH_SERVER}?
           |  +--ro session-limit?        uint8 {feature-list:HAVE_SSH_SERVER}?
           |  +--ro max-login-attempts?   uint8 {feature-list:HAVE_SSH_SERVER}?
           |  +--ro default-algorithm?    empty
           +--rw encryption-algorithms {feature-list:HAVE_SSH_SERVER}?
           |  +--rw config
           |  |  +--rw aes128-ctr?          empty
           |  |  +--rw aes192-ctr?          empty
           |  |  +--rw aes256-ctr?          empty
           |  |  +--rw aes128-cbc?          empty
           |  |  +--rw aes192-cbc?          empty
           |  |  +--rw aes256-cbc?          empty
           |  |  +--rw triple-des-cbc?      empty
           |  |  +--rw rijndael-cbc?        empty
           |  |  +--rw aes128-gcm?          empty
           |  |  +--rw aes256-gcm?          empty
           |  |  +--rw chacha20-poly1305?   empty
           |  +--ro state
           |     +--ro aes128-ctr?          empty
           |     +--ro aes192-ctr?          empty
           |     +--ro aes256-ctr?          empty
           |     +--ro aes128-cbc?          empty
           |     +--ro aes192-cbc?          empty
           |     +--ro aes256-cbc?          empty
           |     +--ro triple-des-cbc?      empty
           |     +--ro rijndael-cbc?        empty
           |     +--ro aes128-gcm?          empty
           |     +--ro aes256-gcm?          empty
           |     +--ro chacha20-poly1305?   empty
           +--rw kex-algorithms {feature-list:HAVE_SSH_SERVER}?
           |  +--rw config
           |  |  +--rw diffie-hellman-group1-sha1?             empty
           |  |  +--rw diffie-hellman-group14-sha1?            empty
           |  |  +--rw diffie-hellman-group14-sha256?          empty
           |  |  +--rw diffie-hellman-group16-sha512?          empty
           |  |  +--rw diffie-hellman-group18-sha512?          empty
           |  |  +--rw diffie-hellman-group-exchange-sha1?     empty
           |  |  +--rw diffie-hellman-group-exchange-sha256?   empty
           |  |  +--rw ecdh-sha2-nistp256?                     empty
           |  |  +--rw ecdh-sha2-nistp384?                     empty
           |  |  +--rw ecdh-sha2-nistp521?                     empty
           |  |  +--rw curve25519-sha256?                      empty
           |  |  +--rw curve25519-sha256-libssh-org?           empty
           |  +--ro state
           |     +--ro diffie-hellman-group1-sha1?             empty
           |     +--ro diffie-hellman-group14-sha1?            empty
           |     +--ro diffie-hellman-group14-sha256?          empty
           |     +--ro diffie-hellman-group16-sha512?          empty
           |     +--ro diffie-hellman-group18-sha512?          empty
           |     +--ro diffie-hellman-group-exchange-sha1?     empty
           |     +--ro diffie-hellman-group-exchange-sha256?   empty
           |     +--ro ecdh-sha2-nistp256?                     empty
           |     +--ro ecdh-sha2-nistp384?                     empty
           |     +--ro ecdh-sha2-nistp521?                     empty
           |     +--ro curve25519-sha256?                      empty
           |     +--ro curve25519-sha256-libssh-org?           empty
           +--rw mac-algorithms {feature-list:HAVE_SSH_SERVER}?
              +--rw config
              |  +--rw hmac-sha1?           empty
              |  +--rw hmac-sha1-96?        empty
              |  +--rw hmac-sha2-256?       empty
              |  +--rw hmac-sha2-512?       empty
              |  +--rw hmac-md5?            empty
              |  +--rw hmac-md5-96?         empty
              |  +--rw umac-64?             empty
              |  +--rw umac-128?            empty
              |  +--rw hmac-sha1-etm?       empty
              |  +--rw hmac-sha1-96-etm?    empty
              |  +--rw hmac-sha2-256-etm?   empty
              |  +--rw hmac-sha2-512-etm?   empty
              |  +--rw hmac-md5-etm?        empty
              |  +--rw hmac-md5-96-etm?     empty
              |  +--rw umac-64-etm?         empty
              |  +--rw umac-128-etm?        empty
              +--ro state
                 +--ro hmac-sha1?           empty
                 +--ro hmac-sha1-96?        empty
                 +--ro hmac-sha2-256?       empty
                 +--ro hmac-sha2-512?       empty
                 +--ro hmac-md5?            empty
                 +--ro hmac-md5-96?         empty
                 +--ro umac-64?             empty
                 +--ro umac-128?            empty
                 +--ro hmac-sha1-etm?       empty
                 +--ro hmac-sha1-96-etm?    empty
                 +--ro hmac-sha2-256-etm?   empty
                 +--ro hmac-sha2-512-etm?   empty
                 +--ro hmac-md5-etm?        empty
                 +--ro hmac-md5-96-etm?     empty
                 +--ro umac-64-etm?         empty
                 +--ro umac-128-etm?        empty
 
  augment /ipi-user-management:user-management/ipi-user-management:users/ipi-user-management:user:
    +--rw ssh-keys
       +--rw config
       |  +--rw public-key*   ipi-ssh-types:ssh_public_key_t
       +--ro state
          +--ro public-key*        ipi-ssh-types:ssh_public_key_t
          +--ro rsa-key?           ipi-ssh-types:ssh_public_key_t
          +--ro dsa-key?           ipi-ssh-types:ssh_public_key_t
          +--ro fingerprint-rsa?   ipi-ssh-types:ssh_public_key_t
          +--ro fingerprint-dsa?   ipi-ssh-types:ssh_public_key_t
 
  rpcs:
    +---x ssh-terminal-debug-on {feature-list:HAVE_HOSTPD}?
    +---x ssh-terminal-debug-off {feature-list:HAVE_HOSTPD}?
    +---x ssh-clear-hosts {feature-list:HAVE_HOSTPD}?
    +---x ssh-generate-server-dsa-key {feature-list:HAVE_SSH_SERVER}?
    |  +---w input
    |     +---w vrf-name?   string
    |     +---w force?      boolean
    +---x ssh-generate-server-rsa-key {feature-list:HAVE_SSH_SERVER}?
    |  +---w input
    |     +---w length?     uint32
    |     +---w vrf-name?   string
    |     +---w force?      boolean
    +---x ssh-generate-server-ecdsa-key {feature-list:HAVE_SSH_SERVER}?
    |  +---w input
    |     +---w length?     ipi-ssh-types:ssh_ecdsa_key_len_t
    |     +---w vrf-name?   string
    |     +---w force?      boolean
    +---x ssh-generate-server-ed25519-key {feature-list:HAVE_SSH_SERVER}?
    |  +---w input
    |     +---w vrf-name?   string
    |     +---w force?      boolean
    +---x ssh-clear-server-keys {feature-list:HAVE_SSH_SERVER}?
    |  +---w input
    |     +---w type?       ipi-ssh-types:ssh_host_key_type_t
    |     +---w vrf-name?   string
    +---x ssh-generate-user-rsa-key {feature-list:HAVE_SSH_SERVER}?
    |  +---w input
    |     +---w user-name    string
    |     +---w length?      uint32
    |     +---w force?       boolean
    +---x ssh-generate-user-dsa-key {feature-list:HAVE_SSH_SERVER}?
    |  +---w input
    |     +---w user-name    string
    |     +---w force?       boolean
    +---x ssh-clear-user-keys {feature-list:HAVE_SSH_SERVER}?
       +---w input
          +---w user-name    string
 
 
module: ipi-streaming-telemetry
  +--rw telemetry-system
     +--rw vrfs {feature-list:HAVE_VRF}?
        +--rw vrf* [vrf-name]
           +--rw vrf-name               -> ../config/vrf-name
           +--rw config
           |  +--rw vrf-name?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
           +--ro state
           |  +--ro vrf-name?   -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_VRF}?
           +--rw streaming-telemetry
           |  +--rw config
           |  |  +--rw feature-enabled?   empty
           |  |  +--rw retry-interval?    uint32
           |  +--ro state
           |  |  +--ro feature-enabled?                empty
           |  |  +--ro retry-interval?                 uint32
           |  |  +--ro maximum-sensor-paths?           uint8
           |  |  +--ro minimum-sample-interval?        uint8
           |  |  +--ro platform-type?                  ipi-streaming-telemetry-types:cml_telemetry_platform_type_t
           |  |  +--ro default-retry-interval?         uint8
           |  |  +--ro active-sensor-paths?            uint8
           |  |  +--ro active-dial-in-sensor-paths?    uint8
           |  |  +--ro active-dial-out-sensor-paths?   uint8
           |  +--rw debug
           |     +--rw config
           |     |  +--rw gnmi-debug?      empty
           |     |  +--rw gnmi-severity?   ipi-streaming-telemetry-types:cml_gnmi_debug_severity_t
           |     +--ro state
           |        +--ro gnmi-debug?      empty
           |        +--ro gnmi-severity?   ipi-streaming-telemetry-types:cml_gnmi_debug_severity_t
           +--rw subscriptions
           |  +--ro dynamic-subscriptions
           |  |  +--ro dynamic-subscription* [id]
           |  |     +--ro id              -> ../state/id
           |  |     +--ro state
           |  |     |  +--ro id?                uint64
           |  |     |  +--ro client-address?    string
           |  |     |  +--ro sample-interval?   uint64
           |  |     |  +--ro stream-mode?       ipi-streaming-telemetry-types:cml_streaming_mode_types_t
           |  |     |  +--ro encoding?          ipi-streaming-telemetry-types:cml_data_encode_t
           |  |     +--ro sensor-paths
           |  |        +--ro sensor-path* [path]
           |  |           +--ro path     -> ../state/path
           |  |           +--ro state
           |  |              +--ro path?   string
           |  +--rw persistent-subscriptions
           |     +--rw persistent-subscription* [name]
           |        +--rw name                  -> ../config/name
           |        +--rw config
           |        |  +--rw name?       string
           |        |  +--rw encoding?   ipi-streaming-telemetry-types:cml_data_encode_t
           |        +--ro state
           |        |  +--ro name?                  string
           |        |  +--ro encoding?              ipi-streaming-telemetry-types:cml_data_encode_t
           |        |  +--ro id?                    uint64
           |        |  +--ro subscription-status?   ipi-streaming-telemetry-types:cml_telemetry_status_t
           |        |  +--ro inactive-cause?        string
           |        |  +--ro protocol?              ipi-streaming-telemetry-types:cml_telemetry_protocol_t
           |        +--rw sensor-profiles
           |        |  +--rw sensor-profile* [sensor-group]
           |        |     +--rw sensor-group    -> ../config/sensor-group
           |        |     +--rw config
           |        |     |  +--rw sensor-group?      -> /telemetry-system/vrfs/vrf/sensor-groups/sensor-group/sensor-group-id
           |        |     |  +--rw sample-interval    uint64
           |        |     +--ro state
           |        |        +--ro sensor-group?      -> /telemetry-system/vrfs/vrf/sensor-groups/sensor-group/sensor-group-id
           |        |        +--ro sample-interval    uint64
           |        +--rw destination-groups
           |           +--rw destination-group* [group-id]
           |              +--rw group-id    -> ../config/group-id
           |              +--rw config
           |              |  +--rw group-id?   -> /telemetry-system/vrfs/vrf/destination-groups/destination-group/group-id
           |              +--ro state
           |                 +--ro group-id?   -> /telemetry-system/vrfs/vrf/destination-groups/destination-group/group-id
           +--rw sensor-groups
           |  +--rw sensor-group* [sensor-group-id]
           |     +--rw sensor-group-id    -> ../config/sensor-group-id
           |     +--rw config
           |     |  +--rw sensor-group-id?   string
           |     +--ro state
           |     |  +--ro sensor-group-id?   string
           |     +--rw sensor-paths
           |        +--rw sensor-path* [path]
           |           +--rw path      -> ../config/path
           |           +--rw config
           |           |  +--rw path?   string
           |           +--ro state
           |              +--ro path?   string
           +--rw destination-groups
              +--rw destination-group* [group-id]
                 +--rw group-id        -> ../config/group-id
                 +--rw config
                 |  +--rw group-id?   string
                 +--ro state
                 |  +--ro group-id?   string
                 +--rw destinations
                    +--rw destination* [destination-address destination-port]
                       +--rw destination-address    -> ../config/destination-address
                       +--rw destination-port       -> ../config/destination-port
                       +--rw config
                       |  +--rw destination-address?   inet:ipv4-address
                       |  +--rw destination-port?      uint16
                       +--ro state
                          +--ro destination-address?   inet:ipv4-address
                          +--ro destination-port?      uint16
 
 
module: ipi-synce
  +--rw synce {feature-list:HAVE_SYNCED}?
     +--rw globals
     |  +--rw config!
     |  |  +--rw enable                   empty
     |  |  +--rw network-option?          ipi-synce-types:synce_sync_option_t
     |  |  +--rw clock-selection-mode?    ipi-synce-types:synce_clk_selection_mode_t
     |  |  +--rw dpll3-select-10mhz-in?   empty
     |  |  +--rw holdover-timer?          uint16
     |  +--ro state
     |     +--ro enable                   empty
     |     +--ro network-option?          ipi-synce-types:synce_sync_option_t
     |     +--ro clock-selection-mode?    ipi-synce-types:synce_clk_selection_mode_t
     |     +--ro dpll3-select-10mhz-in?   empty
     |     +--ro holdover-timer?          uint16
     |     +--ro equipment-clock?         string
     |     +--ro locked-interface?        string
     |     +--ro esmc-state?              ipi-synce-types:synce_esmc_state_t
     |     +--ro is-source-selected?      ipi-synce-types:synce_is_src_selected_t
     |     +--ro quality-level?           string
     |     +--ro current-clock-state?     ipi-synce-types:synce_clock_state_t
     |     +--ro dpll-clock-state?        ipi-synce-types:synce_clock_state_t
     |     +--ro state-duration?          ipi-synce-types:synce_uptime_t
     |     +--ro selected-clock-src-id?   uint32
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name      -> ../config/name
     |     +--rw config!
     |     |  +--rw name?                    -> /ipi-interface:interfaces/interface/name
     |     |  +--rw enable                   empty
     |     |  +--rw synchronous-mode?        ipi-synce-types:synce_mode_option_t
     |     |  +--rw input-source-priority?   uint8
     |     |  +--rw is-output-source?        boolean
     |     |  +--rw wait-to-restore-timer?   uint8
     |     |  +--rw vlan-id?                 uint16
     |     |  +--rw hold-off-timer?          uint16
     |     |  +--rw quality-level?           string
     |     |  +--rw clock-source-id?         uint8
     |     |  +--rw auto-neg-mode?           ipi-synce-types:synce_autoneg_mode_t
     |     +--ro state
     |        +--ro name?                          -> /ipi-interface:interfaces/interface/name
     |        +--ro enable                         empty
     |        +--ro synchronous-mode?              ipi-synce-types:synce_mode_option_t
     |        +--ro input-source-priority?         uint8
     |        +--ro is-output-source?              boolean
     |        +--ro wait-to-restore-timer?         uint8
     |        +--ro vlan-id?                       uint16
     |        +--ro hold-off-timer?                uint16
     |        +--ro quality-level?                 string
     |        +--ro clock-source-id?               uint8
     |        +--ro auto-neg-mode?                 ipi-synce-types:synce_autoneg_mode_t
     |        +--ro esmc-state?                    ipi-synce-types:synce_esmc_state_t
     |        +--ro is-source-selected?            ipi-synce-types:synce_is_src_selected_t
     |        +--ro esmc-received?                 uint64
     |        +--ro esmc-sent?                     uint64
     |        +--ro quality-level-received-esmc?   string
     |        +--ro operational-quality-level?     string
     |        +--ro configured-quality-level?      string
     |        +--ro interface-config-priority?     uint8
     |        +--ro signal-fail?                   ipi-synce-types:synce_is_sf_t
     |        +--ro external-command?              ipi-synce-types:synce_external_cmds_t
     |        +--ro wtr-timer-status?              ipi-synce-types:synce_is_timer_running_t
     |        +--ro hold-off-timer-status?         ipi-synce-types:synce_is_timer_running_t
     |        +--ro link-state?                    ipi-synce-types:synce_link_state_t
     +--rw external-interfaces
     |  +--rw external-interface* [external-synce-interface]
     |     +--rw external-synce-interface    -> ../config/external-synce-interface
     |     +--rw config
     |     |  +--rw external-synce-interface?   ipi-synce-types:synce_external_interface_t
     |     |  +--rw synchronous-mode?           ipi-synce-types:synce_mode_option_t
     |     |  +--rw input-source-priority?      uint8
     |     |  +--rw wait-to-restore-timer?      uint8
     |     |  +--rw hold-off-timer?             uint16
     |     |  +--rw quality-level?              string
     |     +--ro state
     |        +--ro external-synce-interface?      ipi-synce-types:synce_external_interface_t
     |        +--ro synchronous-mode?              ipi-synce-types:synce_mode_option_t
     |        +--ro input-source-priority?         uint8
     |        +--ro wait-to-restore-timer?         uint8
     |        +--ro hold-off-timer?                uint16
     |        +--ro quality-level?                 string
     |        +--ro esmc-state?                    ipi-synce-types:synce_esmc_state_t
     |        +--ro is-source-selected?            ipi-synce-types:synce_is_src_selected_t
     |        +--ro esmc-received?                 uint64
     |        +--ro esmc-sent?                     uint64
     |        +--ro quality-level-received-esmc?   string
     |        +--ro operational-quality-level?     string
     |        +--ro configured-quality-level?      string
     |        +--ro interface-config-priority?     uint8
     |        +--ro signal-fail?                   ipi-synce-types:synce_is_sf_t
     |        +--ro external-command?              ipi-synce-types:synce_external_cmds_t
     |        +--ro wtr-timer-status?              ipi-synce-types:synce_is_timer_running_t
     |        +--ro hold-off-timer-status?         ipi-synce-types:synce_is_timer_running_t
     |        +--ro link-state?                    ipi-synce-types:synce_link_state_t
     +--rw debug
        +--rw config
        |  +--rw options?   ipi-synce-types:synce_debug_t
        +--ro state
           +--ro options?                 ipi-synce-types:synce_debug_t
           +--ro terminal-debug-status?   ipi-synce-types:synce_debug_t
 
  rpcs:
    +---x clear-synce-stats {feature-list:HAVE_SYNCED}?
    |  +---w input
    |     +---w interface-name    string
    +---x synce-terminal-debug-on {feature-list:HAVE_SYNCED}?
    |  +---w input
    |     +---w debug-options    ipi-synce-types:synce_debug_t
    +---x synce-terminal-debug-off {feature-list:HAVE_SYNCED}?
       +---w input
          +---w debug-options    ipi-synce-types:synce_debug_t
 
  notifications:
    +---n synce-clock-status {feature-list:HAVE_SYNCED}?
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n synce-clock-state-change-notify {feature-list:HAVE_SYNCED}?
    |  +--ro severity?               cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?             cml-data-types:cml_notif_class_t
    |  +--ro previous-clock-state?   ipi-synce-types:synce_clock_state_t
    |  +--ro current-clock-state?    ipi-synce-types:synce_clock_state_t
    +---n synce-clock-state-transition-locked-interface {feature-list:HAVE_SYNCED}?
       +--ro severity?               cml-data-types:cml_notif_severity_t
       +--ro eventClass?             cml-data-types:cml_notif_class_t
       +--ro previous-clock-state?   ipi-synce-types:synce_clock_state_t
       +--ro current-clock-state?    ipi-synce-types:synce_clock_state_t
       +--ro locked-interface?       string
 
module: ipi-sys-mgmt
 
  rpcs:
    +---x sys-shutdown {feature-list:HAVE_PSERVD}?
       +---w input
          +---w save-config    boolean
 
module: ipi-sys-notifications
 
  notifications:
    +---n lock-forcibly-released
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n config-sync-completion-status
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n config-change
    |  +--ro message?   string
    +---n system-shutdown-or-reload
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro message?      string
 
 
module: ipi-sys-update
  +--rw system-update
     +--rw docker
     |  +--ro images
     |  |  +--ro image* [name]
     |  |     +--ro name     -> ../state/name
     |  |     +--ro state
     |  |        +--ro name?   string
     |  +--ro info
     |  |  +--ro state
     |  |     +--ro version?   string
     |  |     +--ro status?    string
     |  +--ro download-status
     |     +--ro state
     |        +--ro inprogress?   boolean
     +--ro installers
     |  +--ro installer* [name]
     |     +--ro name     -> ../state/name
     |     +--ro state
     |        +--ro name?   string
     +--ro system-update-details
        +--ro state
           +--ro previous-version?         cml-data-types:cml_line_t
           +--ro current-version?          cml-data-types:cml_line_t
           +--ro last-upgraded-time?       cml-data-types:cml_line_t
           +--ro auto-rollback-end-time?   cml-data-types:cml_line_t
 
  rpcs:
    +---x sys-update-install {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w installer-name          string
    |     +---w ignore-feature-check    boolean
    +---x sys-update-uninstall {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    +---x sys-update-get {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w source-interface    string
    |     +---w source-ip?          inet:ip-address
    |     +---w url                 string
    |     +---w known-hosts-add?    boolean
    +---x sys-update-delete {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w image-name    string
    +---x sys-update-cancel-download {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    +---x sys-container-install {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w type            ipi-sys-update-types:system_container_type_t
    |     +---w upgrade-type    ipi-sys-update-types:system_container_upgrade_t
    |     +---w file            string
    +---x sys-container-uninstall {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w type          ipi-sys-update-types:system_container_type_t
    |     +---w un-install    boolean
    +---x sys-container-boot {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w type         ipi-sys-update-types:system_container_type_t
    |     +---w boot-type    ipi-sys-update-types:system_container_boot_t
    +---x sys-container-get {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w type                ipi-sys-update-types:system_container_type_t
    |     +---w url                 string
    |     +---w source-interface    string
    +---x sys-container-remove {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w type    ipi-sys-update-types:system_container_type_t
    |     +---w file    string
    +---x sys-container-verify {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
    |  +---w input
    |     +---w type         ipi-sys-update-types:system_container_type_t
    |     +---w image        string
    |     +---w signature    string
    +---x sys-container-cancel-download {feature-list:HAVE_PSERVD,feature-list:NOT_HAVE_TIBIT}?
 
  notifications:
    +---n sys-update-installation-status
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n sys-update-download-status
    |  +--ro severity?     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?   cml-data-types:cml_notif_class_t
    |  +--ro message?      string
    +---n sys-container-download-status
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro message?      string
 
module: ipi-system
  +--rw system-info
     +--rw config
     |  +--rw hostname?   string
     +--ro state
     |  +--ro hostname?           string
     |  +--ro software-version?   string
     |  +--ro system-uptime?      system_time_duration
     |  +--ro boot-time?          uint64
     |  +--ro current-datetime?   yang:date-and-time
     +--rw clock
        +--rw config
        |  +--rw timezone-name?   system_timezone_name_t
        +--ro state
           +--ro timezone-name?   system_timezone_name_t
 
 
module: ipi-tacacs
  +--rw tacacs
     +--rw vrfs
     |  +--rw vrf* [vrf-name] {feature-list:HAVE_HOSTPD,feature-list:HAVE_AAA,feature-list:HAVE_TACACS_CLIENT}?
     |     +--rw vrf-name          -> ../config/vrf-name
     |     +--rw config
     |     |  +--rw vrf-name?            -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--rw feature-enable       empty
     |     |  +--rw timeout?             uint8
     |     |  +--rw key-type?            ipi-tacacs-types:tacacs_hostp_key_type_t
     |     |  +--rw secret-key-string?   string
     |     +--ro state
     |     |  +--ro vrf-name?            -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |     |  +--ro feature-enable       empty
     |     |  +--ro timeout?             uint8
     |     |  +--ro key-type?            ipi-tacacs-types:tacacs_hostp_key_type_t
     |     |  +--ro secret-key-string?   string
     |     +--rw remote-servers
     |        +--rw server* [host-address] {feature-list:HAVE_HOSTPD,feature-list:HAVE_AAA,feature-list:HAVE_TACACS_CLIENT}?
     |           +--rw host-address    -> ../config/host-address
     |           +--rw config
     |           |  +--rw host-address?        cml-data-types:cml_hostname_t
     |           |  +--rw sequence-number      uint8
     |           |  +--rw port?                uint32
     |           |  +--rw timeout?             uint32
     |           |  +--rw key-type?            ipi-tacacs-types:tacacs_hostp_key_type_t
     |           |  +--rw secret-key-string?   string
     |           +--ro state
     |              +--ro host-address?                          cml-data-types:cml_hostname_t
     |              +--ro sequence-number                        uint8
     |              +--ro port?                                  uint32
     |              +--ro timeout?                               uint32
     |              +--ro key-type?                              ipi-tacacs-types:tacacs_hostp_key_type_t
     |              +--ro secret-key-string?                     string
     |              +--ro last-successful-authentication-time?   yang:date-and-time
     |              +--ro counters
     |                 +--ro successful-authentications?   yang:counter64
     |                 +--ro authentication-failures?      yang:counter64
     |                 +--ro connection-failures?          yang:counter64
     +--rw debug
        +--rw config
        |  +--rw enable?   empty
        +--ro state
           +--ro enable?                  empty
           +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
 
  rpcs:
    +---x clear-all-tacacs-server-counters {feature-list:HAVE_HOSTPD}?
    |  +---w input
    |     +---w vrf-name    string
    +---x clear-tacacs-server-host-counters {feature-list:HAVE_HOSTPD}?
    |  +---w input
    |     +---w hostname    cml-data-types:cml_hostpname_t
    |     +---w vrf-name    string
    +---x tacacs-terminal-debug-on {feature-list:HAVE_HOSTPD}?
    +---x tacacs-terminal-debug-off {feature-list:HAVE_HOSTPD}?
 
module: ipi-telnet
  +--rw telnet-server
     +--rw debug
     |  +--rw config
     |  |  +--rw enable?   empty
     |  +--ro state
     |     +--ro enable?                  empty
     |     +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
     +--rw vrfs
        +--rw vrf* [vrf-name]
           +--rw vrf-name    -> ../config/vrf-name
           +--rw config
           |  +--rw vrf-name?        -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
           |  +--rw enable           boolean
           |  +--rw port?            uint32 {feature-list:HAVE_TELNET_SERVER}?
           |  +--rw session-limit?   uint8 {feature-list:HAVE_TELNET_SERVER}?
           +--ro state
              +--ro vrf-name?        -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
              +--ro enable           boolean
              +--ro port?            uint32 {feature-list:HAVE_TELNET_SERVER}?
              +--ro session-limit?   uint8 {feature-list:HAVE_TELNET_SERVER}?
 
  rpcs:
    +---x telnet-terminal-debug-on {feature-list:HAVE_HOSTPD}?
    +---x telnet-terminal-debug-off {feature-list:HAVE_HOSTPD}?
 
 
module: ipi-tfo
  +--rw trigger-failover
     +--rw config
     |  +--rw admin-status?   cml-data-types:cml_enable_disable_t
     +--ro state
     |  +--ro admin-status?   cml-data-types:cml_enable_disable_t
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name          -> ../config/name
     |     +--rw config
     |     |  +--rw name?        -> /ipi-interface:interfaces/interface/name
     |     |  +--rw link-type?   ipi-tfo-types:tfo_fog_link_type_t
     |     +--ro state
     |     |  +--ro name?        -> /ipi-interface:interfaces/interface/name
     |     |  +--ro link-type?   ipi-tfo-types:tfo_fog_link_type_t
     |     +--rw tfo-groups
     |        +--rw tfo-group* [fog-id]
     |           +--rw fog-id    -> ../config/fog-id
     |           +--rw config
     |           |  +--rw fog-id?       uint32
     |           |  +--rw group-type    ipi-tfo-types:tfo_fog_group_type_t
     |           +--ro state
     |              +--ro fog-id?       uint32
     |              +--ro group-type    ipi-tfo-types:tfo_fog_group_type_t
     +--rw failover-groups
        +--rw failover-group* [group-id]
           +--rw group-id    -> ../config/group-id
           +--rw config
           |  +--rw group-id?                 uint32
           |  +--rw admin-status              cml-data-types:cml_enable_disable_t
           |  +--rw failover-trigger-count?   uint32
           +--ro state
           |  +--ro group-id?                 uint32
           |  +--ro admin-status              cml-data-types:cml_enable_disable_t
           |  +--ro failover-trigger-count?   uint32
           |  +--ro cpg-disable-status?       boolean
           |  +--ro mpg-disable-status?       boolean
           +--ro counters
              +--ro mpg-link-failure-count?   uint64
              +--ro mpg-link-recover-count?   uint64
              +--ro cpg-auto-disable-count?   uint64
              +--ro cpg-auto-enable-count?    uint64
 
  rpcs:
    +---x tfo-clear-counters-all {feature-list:HAVE_TFO}?
    +---x tfo-clear-fog-counters {feature-list:HAVE_TFO}?
       +---w input
          +---w group-id    uint32
 
module: ipi-time-range
  +--rw time-ranges
     +--rw time-range* [name]
        +--rw name                  -> ../config/name
        +--rw config
        |  +--rw name?   string
        +--ro state
        |  +--ro name?   string
        +--rw start-time-options
        |  +--rw config
        |  |  +--rw (start-time)?
        |  |     +--:(absolute-start-time)
        |  |     |  +--rw absolute-start-time?   time_range_date_time_t
        |  |     +--:(relative-start-time)
        |  |        +--rw relative-start-time?   time_range_relative_time_t
        |  +--ro state
        |     +--ro (start-time)?
        |        +--:(absolute-start-time)
        |        |  +--ro absolute-start-time?   time_range_date_time_t
        |        +--:(relative-start-time)
        |           +--ro relative-start-time?   time_range_relative_time_t
        +--rw end-time-options
        |  +--rw config
        |  |  +--rw (end-time)?
        |  |     +--:(absolute-end-time)
        |  |     |  +--rw absolute-end-time?   time_range_date_time_t
        |  |     +--:(relative-end-time)
        |  |        +--rw relative-end-time?   string
        |  +--ro state
        |     +--ro (end-time)?
        |        +--:(absolute-end-time)
        |        |  +--ro absolute-end-time?   time_range_date_time_t
        |        +--:(relative-end-time)
        |           +--ro relative-end-time?   string
        +--rw frequency-options
           +--rw config
           |  +--rw frequency?   time_range_frequency_t
           +--ro state
              +--ro frequency?   time_range_frequency_t
 
 
 
module: ipi-twamp
  +--rw twamp
     +--rw light
     |  +--rw control
     |  |  +--rw config!
     |  |  |  +--rw enable                  empty
     |  |  |  +--rw administrative-state?   cml-data-types:cml_enable_disable_t
     |  |  +--ro state
     |  |  |  +--ro enable                  empty
     |  |  |  +--ro administrative-state?   cml-data-types:cml_enable_disable_t
     |  |  +--rw test-sessions
     |  |     +--rw test-session* [session-name vrf-name]
     |  |        +--rw session-name    -> ../config/session-name
     |  |        +--rw vrf-name        -> ../config/vrf-name
     |  |        +--rw config
     |  |        |  +--rw session-name?           string
     |  |        |  +--rw sender-ip-address       ipi-twamp-types:twamp_hostname_t
     |  |        |  +--rw sender-udp-port         ipi-twamp-types:twamp_udp_port_t
     |  |        |  +--rw reflector-ip-address    ipi-twamp-types:twamp_hostname_t
     |  |        |  +--rw reflector-udp-port      ipi-twamp-types:twamp_udp_port_t
     |  |        |  +--rw dscp-value?             ipi-twamp-types:twamp_dscp_t
     |  |        |  +--rw vrf-name?               string
     |  |        +--ro state
     |  |           +--ro session-name?           string
     |  |           +--ro sender-ip-address       ipi-twamp-types:twamp_hostname_t
     |  |           +--ro sender-udp-port         ipi-twamp-types:twamp_udp_port_t
     |  |           +--ro reflector-ip-address    ipi-twamp-types:twamp_hostname_t
     |  |           +--ro reflector-udp-port      ipi-twamp-types:twamp_udp_port_t
     |  |           +--ro dscp-value?             ipi-twamp-types:twamp_dscp_t
     |  |           +--ro vrf-name?               string
     |  |           +--ro start-time?             yang:date-and-time
     |  |           +--ro elapsed-time?           uint32
     |  |           +--ro statistics
     |  |              +--ro packets-sent?                 yang:counter64
     |  |              +--ro packets-received?             yang:counter64
     |  |              +--ro packet-loss?                  decimal64
     |  |              +--ro round-trip-delay
     |  |              |  +--ro minimum?   uint64
     |  |              |  +--ro maximum?   uint64
     |  |              |  +--ro average?   uint64
     |  |              +--ro forward-delay
     |  |              |  +--ro minimum?   uint64
     |  |              |  +--ro maximum?   uint64
     |  |              |  +--ro average?   uint64
     |  |              +--ro reverse-delay
     |  |              |  +--ro minimum?   uint64
     |  |              |  +--ro maximum?   uint64
     |  |              |  +--ro average?   uint64
     |  |              +--ro round-trip-delay-variation
     |  |              |  +--ro minimum?   uint64
     |  |              |  +--ro maximum?   uint64
     |  |              |  +--ro average?   uint64
     |  |              +--ro forward-delay-variation
     |  |              |  +--ro minimum?   uint64
     |  |              |  +--ro maximum?   uint64
     |  |              |  +--ro average?   uint64
     |  |              +--ro reverse-delay-variation
     |  |                 +--ro minimum?   uint64
     |  |                 +--ro maximum?   uint64
     |  |                 +--ro average?   uint64
     |  +--rw session-reflector
     |     +--rw config!
     |     |  +--rw enable                  empty
     |     |  +--rw administrative-state?   cml-data-types:cml_enable_disable_t
     |     +--ro state
     |     |  +--ro enable                  empty
     |     |  +--ro administrative-state?   cml-data-types:cml_enable_disable_t
     |     +--rw sessions
     |        +--rw session* [name vrf-name]
     |           +--rw name        -> ../config/name
     |           +--rw vrf-name    -> ../config/vrf-name
     |           +--rw config
     |           |  +--rw name?                   string
     |           |  +--rw reflector-ip-address    ipi-twamp-types:twamp_hostname_t
     |           |  +--rw reflector-udp-port      ipi-twamp-types:twamp_udp_port_t
     |           |  +--rw sender-ip-address       ipi-twamp-types:twamp_hostname_t
     |           |  +--rw sender-udp-port         ipi-twamp-types:twamp_ref_src_udp_port_t
     |           |  +--rw vrf-name?               string
     |           +--ro state
     |              +--ro name?                   string
     |              +--ro reflector-ip-address    ipi-twamp-types:twamp_hostname_t
     |              +--ro reflector-udp-port      ipi-twamp-types:twamp_udp_port_t
     |              +--ro sender-ip-address       ipi-twamp-types:twamp_hostname_t
     |              +--ro sender-udp-port         ipi-twamp-types:twamp_ref_src_udp_port_t
     |              +--ro vrf-name?               string
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-twamp-types:twamp_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-twamp-types:twamp_debug_t
     |     +--ro terminal-debug-status?   ipi-twamp-types:twamp_debug_t
     +--rw server
     |  +--rw config
     |  |  +--rw port?                              ipi-twamp-types:twamp_udp_port_t
     |  |  +--rw max-connection-duration?           uint8
     |  |  +--rw max-connections?                   uint8
     |  |  +--rw max-connections-per-client?        uint8
     |  |  +--rw maximum-sessions?                  uint8
     |  |  +--rw maximum-sessions-per-connection?   uint8
     |  |  +--rw inactivity-timeout?                uint8
     |  |  +--rw vrf-name*                          -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |  +--ro state
     |  |  +--ro port?                              ipi-twamp-types:twamp_udp_port_t
     |  |  +--ro max-connection-duration?           uint8
     |  |  +--ro max-connections?                   uint8
     |  |  +--ro max-connections-per-client?        uint8
     |  |  +--ro maximum-sessions?                  uint8
     |  |  +--ro maximum-sessions-per-connection?   uint8
     |  |  +--ro inactivity-timeout?                uint8
     |  |  +--ro vrf-name*                          -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name
     |  |  +--ro nb-connections?                    yang:counter32
     |  |  +--ro nb-sessions?                       yang:counter32
     |  |  +--ro nb-running-sessions?               yang:counter32
     |  +--ro connections
     |  |  +--ro connection* [connection-id]
     |  |     +--ro connection-id    -> ../state/connection-id
     |  |     +--ro state
     |  |        +--ro connection-id?          uint32
     |  |        +--ro client-address?         inet:ip-address
     |  |        +--ro client-port?            uint16
     |  |        +--ro client-vrf?             string
     |  |        +--ro connection-state?       string
     |  |        +--ro connection-time?        yang:date-and-time
     |  |        +--ro last-activity-time?     yang:date-and-time
     |  |        +--ro nb-session-requests?    yang:counter32
     |  |        +--ro nb-accepted-sessions?   yang:counter32
     |  +--ro sessions
     |  |  +--ro session* [session-id]
     |  |     +--ro session-id    -> ../state/session-id
     |  |     +--ro state
     |  |        +--ro session-id?         string
     |  |        +--ro connection-id?      uint32
     |  |        +--ro session-state?      string
     |  |        +--ro sender-address?     inet:ip-address
     |  |        +--ro sender-port?        uint16
     |  |        +--ro receiver-address?   inet:ip-address
     |  |        +--ro receiver-port?      uint16
     |  |        +--ro receiver-vrf?       string
     |  |        +--ro start-time?         yang:date-and-time
     |  |        +--ro timeout?            uint32
     |  +--rw admin
     |     +--rw config!
     |     |  +--rw enable                  empty
     |     |  +--rw administrative-state?   cml-data-types:cml_enable_disable_t
     |     +--ro state
     |        +--ro enable                  empty
     |        +--ro administrative-state?   cml-data-types:cml_enable_disable_t
     +--rw client
        +--rw config!
        |  +--rw enable                             empty
        |  +--rw maximum-sessions?                  uint8
        |  +--rw maximum-connections?               uint8
        |  +--rw maximum-sessions-per-connection?   uint8
        +--ro state
        |  +--ro enable                             empty
        |  +--ro maximum-sessions?                  uint8
        |  +--ro maximum-connections?               uint8
        |  +--ro maximum-sessions-per-connection?   uint8
        +--rw connections
           +--rw connection* [connection-name vrf-name]
              +--rw connection-name    -> ../config/connection-name
              +--rw vrf-name           -> ../config/vrf-name
              +--rw config
              |  +--rw connection-name?   string
              |  +--rw server-address?    ipi-twamp-types:twamp_hostname_t
              |  +--rw server-port?       ipi-twamp-types:twamp_udp_port_t
              |  +--rw vrf-name?          string
              +--ro state
              |  +--ro connection-name?        string
              |  +--ro server-address?         ipi-twamp-types:twamp_hostname_t
              |  +--ro server-port?            ipi-twamp-types:twamp_udp_port_t
              |  +--ro vrf-name?               string
              |  +--ro client-port?            uint32
              |  +--ro client-address?         inet:ip-address
              |  +--ro connection-time?        yang:date-and-time
              |  +--ro last-activity-time?     yang:date-and-time
              |  +--ro connection-state?       string
              |  +--ro nb-session-requested?   yang:counter32
              |  +--ro nb-sessions-accepted?   yang:counter32
              +--rw sessions
                 +--rw session* [session-name]
                    +--rw session-name    -> ../config/session-name
                    +--rw config
                    |  +--rw session-name?       string
                    |  +--rw sender-port?        uint32
                    |  +--rw receiver-port?      uint32
                    |  +--rw sender-address?     ipi-twamp-types:twamp_hostname_t
                    |  +--rw receiver-address?   ipi-twamp-types:twamp_hostname_t
                    |  +--rw start-time?         ipi-twamp-types:twamp_date_time_t
                    |  +--rw interface-name?     string
                    +--ro state
                       +--ro session-name?              string
                       +--ro sender-port?               uint32
                       +--ro receiver-port?             uint32
                       +--ro sender-address?            ipi-twamp-types:twamp_hostname_t
                       +--ro receiver-address?          ipi-twamp-types:twamp_hostname_t
                       +--ro start-time?                ipi-twamp-types:twamp_date_time_t
                       +--ro interface-name?            string
                       +--ro requested-receiver-port?   uint32
                       +--ro session-id?                string
 
  rpcs:
    +---x twamp-client-start-connection {feature-list:HAVE_TWAMP}?
    |  +---w input
    |     +---w connection-name    string
    |     +---w vrf-name?          string
    |     +---w packet-count       uint32
    +---x twamp-client-stop-connection {feature-list:HAVE_TWAMP}?
    |  +---w input
    |     +---w connection-name    string
    |     +---w vrf-name?          string
    +---x twamp-client-reset-session {feature-list:HAVE_TWAMP}?
    |  +---w input
    |     +---w connection-name    string
    |     +---w session-name       string
    |     +---w vrf-name?          string
    +---x twamp-test-session-start {feature-list:HAVE_TWAMP}?
    |  +---w input
    |     +---w session-name       string
    |     +---w packet-count       uint16
    |     +---w packet-interval?   uint16
    |     +---w delay-threshold?   uint32
    +---x twamp-test-session-stop {feature-list:HAVE_TWAMP}?
    |  +---w input
    |     +---w session-name    string
    +---x twamp-terminal-debug-on {feature-list:HAVE_TWAMP}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-twamp-types:twamp_debug_t
    +---x twamp-terminal-debug-off {feature-list:HAVE_TWAMP}?
       +---w input
          +---w terminal-debug-options    ipi-twamp-types:twamp_debug_t
 
  notifications:
    +---n twamp-delay-threshold-breached {feature-list:HAVE_TWAMP}?
       +--ro severity?       cml-data-types:cml_notif_severity_t
       +--ro eventClass?     cml-data-types:cml_notif_class_t
       +--ro session-name?   string
       +--ro vrf-name?       string
       +--ro average?        uint64
 
 
 
module: ipi-udld
  +--rw udld
     +--rw global
     |  +--rw config
     |  |  +--rw enable?         empty
     |  |  +--rw message-time?   uint8
     |  +--ro state
     |     +--ro enable?         empty
     |     +--ro message-time?   uint8
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-udld-types:udld_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-udld-types:udld_debug_t
     |     +--ro terminal-debug-status?   ipi-udld-types:udld_debug_t
     +--rw interfaces
        +--rw interface* [name]
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?                   -> /ipi-interface:interfaces/interface/name
           |  +--rw mode?                   ipi-udld-types:udld_mode_type_t
           |  +--rw administrative-state?   cml-data-types:cml_enable_disable_t
           +--ro state
              +--ro name?                   -> /ipi-interface:interfaces/interface/name
              +--ro mode?                   ipi-udld-types:udld_mode_type_t
              +--ro administrative-state?   cml-data-types:cml_enable_disable_t
              +--ro link-state?             ipi-udld-types:udld_link_state_type_t
 
  rpcs:
    +---x udld-terminal-debug-on {feature-list:HAVE_UDLD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-udld-types:udld_debug_t
    +---x udld-terminal-debug-off {feature-list:HAVE_UDLD}?
       +---w input
          +---w terminal-debug-options    ipi-udld-types:udld_debug_t
 
 
module: ipi-unicast-rpf
  +--rw unicast-rpf {feature-list:HAVE_RPF}?
     +--rw global
     |  +--rw config
     |  |  +--rw enable-route-lookup?          empty
     |  |  +--rw enable-default-route-check?   empty {feature-list:HAVE_DUNE,feature-list:HAVE_GLOBAL_URPF_ALLOW_DEFAULT}?
     |  +--ro state
     |     +--ro enable-route-lookup?          empty
     |     +--ro enable-default-route-check?   empty {feature-list:HAVE_DUNE,feature-list:HAVE_GLOBAL_URPF_ALLOW_DEFAULT}?
     +--rw interfaces
        +--rw interface* [name]
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?                       -> /ipi-interface:interfaces/interface/name
           |  +--rw source-reachability-mode    ipi-unicast-rpf-types:urpf_src_reachability_mode_t
           +--ro state
              +--ro name?                       -> /ipi-interface:interfaces/interface/name
              +--ro source-reachability-mode    ipi-unicast-rpf-types:urpf_src_reachability_mode_t
 
 
module: ipi-user-management
  +--rw user-management
     +--rw debug
     |  +--rw config
     |  |  +--rw enable?   empty
     |  +--ro state
     |     +--ro enable?                  empty
     |     +--ro terminal-debug-status?   cml-data-types:cml_on_off_t
     +--rw global
     |  +--rw config
     |  |  +--rw disable-default-user?   empty
     |  +--ro state
     |     +--ro disable-default-user?   empty
     +--rw users
        +--rw user* [username]
           +--rw username    -> ../config/username
           +--rw config
           |  +--rw username?                string
           |  +--rw role?                    ipi-user-management-types:user_mgmt_role_types_t
           |  +--rw rbac-role?               ipi-user-management-types:user_mgmt_rbac_role_t {feature-list:HAVE_RBAC}?
           |  +--rw (password-type)?
           |     +--:(plain-text)
           |     |  +--rw password?          string
           |     +--:(hashed)
           |        +--rw password-hashed?   string
           +--ro state
              +--ro username?                string
              +--ro role?                    ipi-user-management-types:user_mgmt_role_types_t
              +--ro rbac-role?               ipi-user-management-types:user_mgmt_rbac_role_t {feature-list:HAVE_RBAC}?
              +--ro (password-type)?
                 +--:(plain-text)
                 |  +--ro password?          string
                 +--:(hashed)
                    +--ro password-hashed?   string
 
  rpcs:
    +---x user-management-terminal-debug-on {feature-list:HAVE_HOSTPD,feature-list:HAVE_USER_MGMT}?
    +---x user-management-terminal-debug-off {feature-list:HAVE_HOSTPD,feature-list:HAVE_USER_MGMT}?
 
 
module: ipi-user-session-management
  +--rw user-session
     +--rw line-console
     |  +--rw console* [console-id]
     |     +--rw console-id    -> ../config/console-id
     |     +--rw config
     |     |  +--rw privilege-level?             uint8
     |     |  +--rw command-history-max-limit?   uint32
     |     |  +--rw console-id?                  ipi-user-session-management-types:line_console_id_t
     |     +--ro state
     |     |  +--ro privilege-level?             uint8
     |     |  +--ro command-history-max-limit?   uint32
     |     |  +--ro console-id?                  ipi-user-session-management-types:line_console_id_t
     |     +--rw timeout
     |        +--rw config!
     |        |  +--rw minutes    uint32
     |        |  +--rw seconds?   uint32
     |        +--ro state
     |           +--ro minutes    uint32
     |           +--ro seconds?   uint32
     +--rw line-vty
     |  +--rw vty* [vty-id]
     |     +--rw vty-id     -> ../config/vty-id
     |     +--rw config
     |     |  +--rw privilege-level?             uint8
     |     |  +--rw command-history-max-limit?   uint32
     |     |  +--rw vty-id?                      cml-data-types:cml_range_t
     |     +--ro state
     |     |  +--ro privilege-level?             uint8
     |     |  +--ro command-history-max-limit?   uint32
     |     |  +--ro vty-id?                      cml-data-types:cml_range_t
     |     +--rw timeout
     |        +--rw config!
     |        |  +--rw minutes    uint32
     |        |  +--rw seconds?   uint32
     |        +--ro state
     |           +--ro minutes    uint32
     |           +--ro seconds?   uint32
     +--ro sessions
        +--ro session* [id]
           +--ro id       -> ../state/id
           +--ro state
              +--ro id?                   string
              +--ro line?                 string
              +--ro user-name?            string
              +--ro client-type?          ipi-user-session-types:user_session_user_type_t
              +--ro idle-time?            string
              +--ro process-identifier?   uint32
              +--ro type?                 ipi-user-session-types:user_session_type_t
              +--ro user-role?            ipi-user-session-types:user_session_user_role_type_t
              +--ro remote-ip?            string
 
  rpcs:
    +---x clear-line {feature-list:HAVE_IMI}?
       +---w input
          +---w line-name    string
 
 
 
 
 
module: ipi-vlan
  +--rw vlan-classifier {feature-list:HAVE_VLAN_CLASS}?
  |  +--rw classifier-rules
  |  |  +--rw classifier-rule* [rule-id]
  |  |     +--rw rule-id          -> ../config/rule-id
  |  |     +--rw config
  |  |     |  +--rw rule-id?   uint16
  |  |     +--ro state
  |  |     |  +--ro rule-id?   uint16
  |  |     +--rw rule-criteria
  |  |        +--rw config
  |  |        |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
  |  |        |  +--rw ipv4-address?   cml-data-types:cml_ipv4_prefix_t
  |  |        |  +--rw ether-type?     ipi-vlan-types:vlan_classifier_ethertype_t
  |  |        +--ro state
  |  |           +--ro mac-address?    cml-data-types:cml_mac_addr_t
  |  |           +--ro ipv4-address?   cml-data-types:cml_ipv4_prefix_t
  |  |           +--ro ether-type?     ipi-vlan-types:vlan_classifier_ethertype_t
  |  +--rw classifier-groups
  |  |  +--rw classifier-group* [group-id rule-id]
  |  |     +--rw group-id    -> ../config/group-id
  |  |     +--rw rule-id     -> ../config/rule-id
  |  |     +--rw config
  |  |     |  +--rw group-id?   uint8
  |  |     |  +--rw rule-id?    -> /vlan-classifier/classifier-rules/classifier-rule/rule-id
  |  |     +--ro state
  |  |        +--ro group-id?   uint8
  |  |        +--ro rule-id?    -> /vlan-classifier/classifier-rules/classifier-rule/rule-id
  |  +--rw ports
  |     +--rw port* [port-name group-id]
  |        +--rw port-name    -> ../config/port-name
  |        +--rw group-id     -> ../config/group-id
  |        +--rw config
  |        |  +--rw port-name?   -> /ipi-interface:interfaces/interface/name
  |        |  +--rw group-id?    -> /vlan-classifier/classifier-groups/classifier-group/group-id
  |        |  +--rw vlan-id      -> /ipi-network-instance:network-instances/network-instance/ipi-bridge:bridge/vlans/vlan/vlan-id
  |        +--ro state
  |           +--ro port-name?   -> /ipi-interface:interfaces/interface/name
  |           +--ro group-id?    -> /vlan-classifier/classifier-groups/classifier-group/group-id
  |           +--ro vlan-id      -> /ipi-network-instance:network-instances/network-instance/ipi-bridge:bridge/vlans/vlan/vlan-id
  +--rw layer2-global
     +--rw config
     |  +--rw disable-vlan-classifier-feature?   empty {feature-list:HAVE_VLAN_CLASS}?
     |  +--rw disable-port-security?             empty
     |  +--rw vlan-xlate-1?                      empty
     +--ro state
        +--ro disable-vlan-classifier-feature?   empty {feature-list:HAVE_VLAN_CLASS}?
        +--ro disable-port-security?             empty
        +--ro vlan-xlate-1?                      empty
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-bridge:bridge:
    +--rw vlans
       +--rw vlan* [vlan-id]
          +--rw vlan-id          -> ../config/vlan-id
          +--rw config
          |  +--rw vlan-id?                cml-data-types:cml_range_t
          |  +--rw disable-mac-learning?   empty
          +--ro state
          |  +--ro vlan-id?                cml-data-types:cml_range_t
          |  +--ro disable-mac-learning?   empty
          +--rw customer-vlan
          |  +--rw config
          |  |  +--rw type?    ipi-vlan-types:cvlan_type_t
          |  |  +--rw name?    string
          |  |  +--rw state?   ipi-vlan-types:vlan_state_t
          |  +--ro state
          |     +--ro type?                 ipi-vlan-types:cvlan_type_t
          |     +--ro name?                 string
          |     +--ro state?                ipi-vlan-types:vlan_state_t
          |     +--ro operational-status?   ipi-vlan-types:vlan_oper_status_t
          |     +--ro tagged-interface*     string
          +--rw service-vlan {feature-list:HAVE_PROVIDER_BRIDGE}?
          |  +--rw config
          |  |  +--rw type?    ipi-vlan-types:svlan_type_t
          |  |  +--rw name?    string
          |  |  +--rw state?   ipi-vlan-types:vlan_state_t
          |  +--ro state
          |     +--ro type?                 ipi-vlan-types:svlan_type_t
          |     +--ro name?                 string
          |     +--ro state?                ipi-vlan-types:vlan_state_t
          |     +--ro operational-status?   ipi-vlan-types:vlan_oper_status_t
          |     +--ro tagged-interface*     string
          +--rw private-vlan {feature-list:HAVE_PVLAN}?
             +--rw config!
             |  +--rw type    ipi-vlan-types:vlan_pvlan_type_t
             +--ro state
             |  +--ro type    ipi-vlan-types:vlan_pvlan_type_t
             +--rw association
                +--rw config
                |  +--rw secondary-vlan?   cml-data-types:cml_range_t
                +--ro state
                   +--ro secondary-vlan?   cml-data-types:cml_range_t
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-bridge:bridge:
    +--rw cvlan-registration-tables {feature-list:HAVE_VLAN,feature-list:HAVE_PROVIDER_BRIDGE}?
       +--rw cvlan-registration-table* [table-name]
          +--rw table-name        -> ../config/table-name
          +--rw config
          |  +--rw table-name?   string
          +--ro state
          |  +--ro table-name?   string
          +--rw cvlan-mappings
             +--rw cvlan-mapping* [svlan-id cvlan-id]
                +--rw svlan-id    -> ../config/svlan-id
                +--rw cvlan-id    -> ../config/cvlan-id
                +--rw config
                |  +--rw svlan-id?              uint16
                |  +--rw cvlan-id?              cml-data-types:cml_range_t
                |  +--rw untagged-ep?           ipi-vlan-types:cvlan_config_t
                |  +--rw translated-cvlan-id?   uint16
                |  +--rw cos-to-queue?          -> /ipi-qos:qos/global/map-profile/cos-to-queue-profiles/cos-to-queue-profile/name {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
                |  +--rw remark-cos?            empty {feature-list:HAVE_QOS,feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
                +--ro state
                   +--ro svlan-id?              uint16
                   +--ro cvlan-id?              cml-data-types:cml_range_t
                   +--ro untagged-ep?           ipi-vlan-types:cvlan_config_t
                   +--ro translated-cvlan-id?   uint16
                   +--ro cos-to-queue?          -> /ipi-qos:qos/global/map-profile/cos-to-queue-profiles/cos-to-queue-profile/name {feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
                   +--ro remark-cos?            empty {feature-list:HAVE_QOS,feature-list:HAVE_CUSTOM2_QOS_OR_HAVE_CUSTOM4_QOS}?
 
 
 
 
module: ipi-vrf
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance:
    +--rw vrf
       +--rw config
       |  +--rw vrf-name?                  -> /ipi-network-instance:network-instances/network-instance/instance-name
       |  +--rw description?               cml-data-types:cml_line_t
       |  +--rw tunnel-select-policy?      string {feature-list:HAVE_SERVICE_MAPPING_OR_HAVE_SRV6}?
       |  +--rw lsp-encap-dscp-preserve?   ipi-mpls-types:mpls_dscp_preserve_state_t {feature-list:HAVE_MPLS,feature-list:HAVE_DUNE}?
       |  +--rw router-id?                 inet:ipv4-address
       |  +--rw evpn-layer3-network-id?    uint32 {feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
       |  +--rw mtu?                       uint32 {feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
       +--ro state
       |  +--ro vrf-name?                  -> /ipi-network-instance:network-instances/network-instance/instance-name
       |  +--ro description?               cml-data-types:cml_line_t
       |  +--ro tunnel-select-policy?      string {feature-list:HAVE_SERVICE_MAPPING_OR_HAVE_SRV6}?
       |  +--ro lsp-encap-dscp-preserve?   ipi-mpls-types:mpls_dscp_preserve_state_t {feature-list:HAVE_MPLS,feature-list:HAVE_DUNE}?
       |  +--ro router-id?                 inet:ipv4-address
       |  +--ro evpn-layer3-network-id?    uint32 {feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
       |  +--ro mtu?                       uint32 {feature-list:HAVE_BGP_EVPN,feature-list:HAVE_NVO}?
       |  +--ro vrf-id?                    uint32
       |  +--ro fib-id?                    uint32
       +--rw snmp {feature-list:HAVE_SNMP}?
          +--rw config
          |  +--rw snmp-context-name?   string
          +--ro state
             +--ro snmp-context-name?   string
 
  rpcs:
    +---x clear-default-router-id {feature-list:HAVE_L3}?
    +---x clear-vrf-router-id {feature-list:HAVE_VRF}?
       +---w input
          +---w vrfName    string
 
 
 
 
 
 
 
module: ipi-vrrp
  +--rw vrrp
     +--rw global
     |  +--rw config
     |  |  +--rw disable-virtual-router-mac-address?   empty
     |  |  +--rw vrrp-v2-compatible?                   empty
     |  |  +--rw ipv4-exclude-pseudo-header?           empty
     |  +--ro state
     |  |  +--ro disable-virtual-router-mac-address?   empty
     |  |  +--ro vrrp-v2-compatible?                   empty
     |  |  +--ro ipv4-exclude-pseudo-header?           empty
     |  |  +--ro notification-control?                 empty
     |  +--ro session
     |  |  +--ro state
     |  |     +--ro session-table-maximum?   uint32
     |  |     +--ro session-table-size?      uint32
     |  |     +--ro ipv4-session-count?      uint32
     |  |     +--ro ipv6-session-count?      uint32
     |  +--ro new-master
     |  |  +--ro operational-master-address?   inet:ip-address
     |  |  +--ro virtual-router-id?            uint8
     |  |  +--ro new-master-reason?            ipi-vrrp-types:vrrp_new_master_reason_t
     |  |  +--ro uptime?                       string
     |  +--ro protocol-error
     |  |  +--ro operational-master-address?   inet:ip-address
     |  |  +--ro virtual-router-id?            uint8
     |  |  +--ro error-reason?                 ipi-vrrp-types:vrrp_error_reason_t
     |  |  +--ro uptime?                       string
     |  +--ro packet-error
     |  |  +--ro error-reason?   ipi-vrrp-types:vrrp_error_reason_t
     |  +--ro errors
     |     +--ro state
     |        +--ro checksum-error?              yang:counter64
     |        +--ro version-error?               yang:counter64
     |        +--ro invalid-virtual-router-id?   yang:counter64
     +--rw debug
     |  +--rw config
     |  |  +--rw options?   ipi-vrrp-types:vrrp_debug_t
     |  +--ro state
     |     +--ro options?                 ipi-vrrp-types:vrrp_debug_t
     |     +--ro terminal-debug-status?   ipi-vrrp-types:vrrp_debug_t
     +--rw ipv4-instances
     |  +--rw ipv4-instance* [virtual-router-id]
     |     +--rw virtual-router-id    -> ../config/virtual-router-id
     |     +--rw config
     |     |  +--rw virtual-router-id?   uint8
     |     +--ro state
     |     |  +--ro virtual-router-id?   uint8
     |     +--rw interfaces
     |        +--rw interface* [interface-name]
     |           +--rw interface-name         -> ../config/interface-name
     |           +--rw config
     |           |  +--rw interface-name?               -> /ipi-interface:interfaces/interface/name
     |           |  +--rw disable-preempt-mode?         empty
     |           |  +--rw priority?                     uint8
     |           |  +--rw preempt-delay?                uint32
     |           |  +--rw advertisement-interval?       uint16
     |           |  +--rw disable-accept-mode?          empty
     |           |  +--rw vrrp-v2-compatible?           empty
     |           |  +--rw ipv4-exclude-pseudo-header?   empty
     |           |  +--rw authentication-data?          string
     |           |  +--rw primary-ip-address?           inet:ipv4-address
     |           |  +--rw mlag-active-standby?          empty {feature-list:HAVE_MLAG}?
     |           +--ro state
     |           |  +--ro interface-name?               -> /ipi-interface:interfaces/interface/name
     |           |  +--ro disable-preempt-mode?         empty
     |           |  +--ro priority?                     uint8
     |           |  +--ro preempt-delay?                uint32
     |           |  +--ro advertisement-interval?       uint16
     |           |  +--ro disable-accept-mode?          empty
     |           |  +--ro vrrp-v2-compatible?           empty
     |           |  +--ro ipv4-exclude-pseudo-header?   empty
     |           |  +--ro authentication-data?          string
     |           |  +--ro primary-ip-address?           inet:ipv4-address
     |           |  +--ro mlag-active-standby?          empty {feature-list:HAVE_MLAG}?
     |           +--rw protocol-enable
     |           |  +--rw config
     |           |  |  +--rw enable?   empty
     |           |  +--ro state
     |           |     +--ro enable?   empty
     |           +--rw virtual-ip
     |           |  +--rw config!
     |           |  |  +--rw virtual-ip-address    inet:ipv4-address
     |           |  |  +--rw ip-address-owner      boolean
     |           |  +--ro state
     |           |     +--ro virtual-ip-address    inet:ipv4-address
     |           |     +--ro ip-address-owner      boolean
     |           +--rw interfaces-tracking
     |           |  +--rw interface-tracking* [interface-tracking-name]
     |           |     +--rw interface-tracking-name    -> ../config/interface-tracking-name
     |           |     +--rw config
     |           |     |  +--rw interface-tracking-name?   -> /ipi-interface:interfaces/interface/name
     |           |     |  +--rw priority-decrement         uint8
     |           |     +--ro state
     |           |        +--ro interface-tracking-name?   -> /ipi-interface:interfaces/interface/name
     |           |        +--ro priority-decrement         uint8
     |           |        +--ro interface-status?          ipi-vrrp-types:vrrp_iface_status_t
     |           |        +--ro interface-down-events?     uint32
     |           +--ro addresses
     |           |  +--ro state
     |           |     +--ro operational-primary-address?   inet:ipv4-address
     |           |     +--ro operational-master-address?    inet:ipv4-address
     |           +--ro session-info
     |           |  +--ro state
     |           |     +--ro multicast-membership?     ipi-vrrp-types:vrrp_member_state_t
     |           |     +--ro address-family?           ipi-vrrp-types:vrrp_addr_family_t
     |           |     +--ro running-priority?         uint8
     |           |     +--ro virtual-mac-mbyte-word?   cml-data-types:cml_mac_addr_t
     |           |     +--ro administrative-state?     ipi-vrrp-types:vrrp_admin_state_t
     |           |     +--ro init-message-code?        ipi-vrrp-types:vrrp_init_message_code_t
     |           +--ro reasons
     |           |  +--ro state
     |           |     +--ro new-master-reason?   ipi-vrrp-types:vrrp_new_master_reason_t
     |           +--ro session-status
     |           |  +--ro state
     |           |     +--ro vrrp-state?               ipi-vrrp-types:vrrp_session_state_t
     |           |     +--ro virtual-address-status?   ipi-vrrp-types:vrrp_ip_status_t
     |           +--ro timers
     |           |  +--ro state
     |           |     +--ro switchback-delay-timer?      uint32
     |           |     +--ro countdown-timer?             uint32
     |           |     +--ro skew-time?                   uint32
     |           |     +--ro garp-packet-delay?           uint32
     |           |     +--ro master-advertise-interval?   uint32
     |           |     +--ro refresh-rate-interval?       uint32
     |           +--ro statistics
     |           |  +--ro state
     |           |     +--ro transitions-to-master?            yang:counter64
     |           |     +--ro advertise-received?               yang:counter64
     |           |     +--ro priority-zero-received-packets?   yang:counter64
     |           |     +--ro priority-zero-sent-packets?       yang:counter64
     |           |     +--ro disconnection-time?               string
     |           |     +--ro monitored-circuit-up-events?      yang:counter64
     |           |     +--ro monitored-circuit-down-events?    yang:counter64
     |           +--ro errors
     |           |  +--ro state
     |           |     +--ro ttl-error-packets?               yang:counter64
     |           |     +--ro invalid-type-packets?            yang:counter64
     |           |     +--ro address-list-errors?             yang:counter64
     |           |     +--ro invalid-authentication-type?     yang:counter64
     |           |     +--ro authentication-type-mismatch?    yang:counter64
     |           |     +--ro wrong-authentication-password?   yang:counter64
     |           |     +--ro address-mismatch-packets?        yang:counter64
     |           |     +--ro packet-length-errors?            yang:counter64
     |           +--rw objects-tracking {feature-list:HAVE_OBJ_TRACKING}?
     |              +--rw object-tracking* [tracking-id]
     |                 +--rw tracking-id    -> ../config/tracking-id
     |                 +--rw config
     |                 |  +--rw tracking-id?   uint16
     |                 |  +--rw decrement      uint8
     |                 +--ro state
     |                    +--ro tracking-id?          uint16
     |                    +--ro decrement             uint8
     |                    +--ro object-status?        ipi-vrrp-types:vrrp_iface_status_t
     |                    +--ro object-down-events?   uint32
     +--rw ipv6-instances
        +--rw ipv6-instance* [virtual-router-id]
           +--rw virtual-router-id    -> ../config/virtual-router-id
           +--rw config
           |  +--rw virtual-router-id?   uint8
           +--ro state
           |  +--ro virtual-router-id?   uint8
           +--rw interfaces
              +--rw interface* [interface-name]
                 +--rw interface-name          -> ../config/interface-name
                 +--rw config
                 |  +--rw interface-name?           -> /ipi-interface:interfaces/interface/name
                 |  +--rw disable-preempt-mode?     empty
                 |  +--rw priority?                 uint8
                 |  +--rw preempt-delay?            uint32
                 |  +--rw advertisement-interval?   uint16
                 |  +--rw disable-accept-mode?      empty
                 |  +--rw primary-ip-address?       inet:ipv6-address
                 +--ro state
                 |  +--ro interface-name?           -> /ipi-interface:interfaces/interface/name
                 |  +--ro disable-preempt-mode?     empty
                 |  +--ro priority?                 uint8
                 |  +--ro preempt-delay?            uint32
                 |  +--ro advertisement-interval?   uint16
                 |  +--ro disable-accept-mode?      empty
                 |  +--ro primary-ip-address?       inet:ipv6-address
                 +--rw protocol-enable
                 |  +--rw config
                 |  |  +--rw enable?   empty
                 |  +--ro state
                 |     +--ro enable?   empty
                 +--rw virtual-ip-addresses {feature-list:HAVE_IPV6}?
                 |  +--rw virtual-ip-address* [virtual-ip-address]
                 |     +--rw virtual-ip-address    -> ../config/virtual-ip-address
                 |     +--rw config
                 |     |  +--rw virtual-ip-address?   inet:ipv6-address
                 |     |  +--rw ip-address-owner?     boolean
                 |     +--ro state
                 |        +--ro virtual-ip-address?   inet:ipv6-address
                 |        +--ro ip-address-owner?     boolean
                 +--rw interfaces-tracking
                 |  +--rw interface-tracking* [interface-tracking-name]
                 |     +--rw interface-tracking-name    -> ../config/interface-tracking-name
                 |     +--rw config
                 |     |  +--rw interface-tracking-name?   -> /ipi-interface:interfaces/interface/name
                 |     |  +--rw priority-decrement         uint8
                 |     +--ro state
                 |        +--ro interface-tracking-name?   -> /ipi-interface:interfaces/interface/name
                 |        +--ro priority-decrement         uint8
                 |        +--ro interface-status?          ipi-vrrp-types:vrrp_iface_status_t
                 |        +--ro interface-down-events?     uint32
                 +--ro addresses
                 |  +--ro state
                 |     +--ro operational-primary-ipv6?   inet:ipv6-address
                 |     +--ro operational-master-ipv6?    inet:ipv6-address
                 +--ro session-info
                 |  +--ro state
                 |     +--ro multicast-membership?     ipi-vrrp-types:vrrp_member_state_t
                 |     +--ro address-family?           ipi-vrrp-types:vrrp_addr_family_t
                 |     +--ro running-priority?         uint8
                 |     +--ro virtual-mac-mbyte-word?   cml-data-types:cml_mac_addr_t
                 |     +--ro administrative-state?     ipi-vrrp-types:vrrp_admin_state_t
                 |     +--ro init-message-code?        ipi-vrrp-types:vrrp_init_message_code_t
                 +--ro reasons
                 |  +--ro state
                 |     +--ro new-master-reason?   ipi-vrrp-types:vrrp_new_master_reason_t
                 +--ro session-status
                 |  +--ro state
                 |     +--ro vrrp-state?               ipi-vrrp-types:vrrp_session_state_t
                 |     +--ro virtual-address-status?   ipi-vrrp-types:vrrp_ip_status_t
                 +--ro timers
                 |  +--ro state
                 |     +--ro switchback-delay-timer?      uint32
                 |     +--ro countdown-timer?             uint32
                 |     +--ro skew-time?                   uint32
                 |     +--ro garp-packet-delay?           uint32
                 |     +--ro master-advertise-interval?   uint32
                 |     +--ro refresh-rate-interval?       uint32
                 +--ro statistics
                 |  +--ro state
                 |     +--ro transitions-to-master?            yang:counter64
                 |     +--ro advertise-received?               yang:counter64
                 |     +--ro priority-zero-received-packets?   yang:counter64
                 |     +--ro priority-zero-sent-packets?       yang:counter64
                 |     +--ro disconnection-time?               string
                 |     +--ro monitored-circuit-up-events?      yang:counter64
                 |     +--ro monitored-circuit-down-events?    yang:counter64
                 +--ro errors
                 |  +--ro state
                 |     +--ro ttl-error-packets?               yang:counter64
                 |     +--ro invalid-type-packets?            yang:counter64
                 |     +--ro address-list-errors?             yang:counter64
                 |     +--ro invalid-authentication-type?     yang:counter64
                 |     +--ro authentication-type-mismatch?    yang:counter64
                 |     +--ro wrong-authentication-password?   yang:counter64
                 |     +--ro address-mismatch-packets?        yang:counter64
                 |     +--ro packet-length-errors?            yang:counter64
                 +--rw objects-tracking {feature-list:HAVE_OBJ_TRACKING}?
                    +--rw object-tracking* [tracking-id]
                       +--rw tracking-id    -> ../config/tracking-id
                       +--rw config
                       |  +--rw tracking-id?   uint16
                       |  +--rw decrement      uint8
                       +--ro state
                          +--ro tracking-id?          uint16
                          +--ro decrement             uint8
                          +--ro object-status?        ipi-vrrp-types:vrrp_iface_status_t
                          +--ro object-down-events?   uint32
 
  rpcs:
    +---x vrrp-snmp-restart {feature-list:HAVE_SNMP}?
    +---x vrrp-clear-statistics {feature-list:HAVE_VRRPD}?
    +---x vrrp-clear-ipv4-statistics {feature-list:HAVE_VRRPD}?
    +---x vrrp-clear-ipv6-statistics {feature-list:HAVE_VRRPD}?
    +---x vrrp-clear-session-ipv4-statistics {feature-list:HAVE_VRRPD}?
    |  +---w input
    |     +---w vrrp-id           uint8
    |     +---w interface-name    string
    +---x vrrp-clear-session-ipv6-statistics {feature-list:HAVE_VRRPD}?
    |  +---w input
    |     +---w vrrp-id           uint8
    |     +---w interface-name    string
    +---x vrrp-terminal-debug-all-on {feature-list:HAVE_VRRPD}?
    +---x vrrp-terminal-debug-all-off {feature-list:HAVE_VRRPD}?
    +---x vrrp-terminal-debug-on {feature-list:HAVE_VRRPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-vrrp-types:vrrp_debug_t
    +---x vrrp-terminal-debug-off {feature-list:HAVE_VRRPD}?
       +---w input
          +---w terminal-debug-options    ipi-vrrp-types:vrrp_debug_t
 
  notifications:
    +---n vrrp-new-master
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro operational-master-address?   inet:ip-address
    |  +--ro virtual-router-id?            uint8
    |  +--ro new-master-reason?            ipi-vrrp-types:vrrp_new_master_reason_t
    |  +--ro uptime?                       string
    +---n vrrp-protocol-error
    |  +--ro severity?                     cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?                   cml-data-types:cml_notif_class_t
    |  +--ro operational-master-address?   inet:ip-address
    |  +--ro virtual-router-id?            uint8
    |  +--ro error-reason?                 ipi-vrrp-types:vrrp_error_reason_t
    |  +--ro uptime?                       string
    +---n vrrp-packet-error
       +--ro severity?       cml-data-types:cml_notif_severity_t
       +--ro eventClass?     cml-data-types:cml_notif_class_t
       +--ro error-reason?   ipi-vrrp-types:vrrp_error_reason_t
 
 
module: ipi-vxlan
  +--rw vxlan
     +--rw global
     |  +--rw config!
     |  |  +--rw enable-vxlan            empty
     |  |  +--rw vtep-ipv4?              inet:ipv4-address
     |  |  +--rw mac-ageing-timer?       uint32
     |  |  +--rw arp-nd-refresh-timer?   uint32 {feature-list:HAVE_BGP_EVPN}?
     |  |  +--rw mac-address?            cml-data-types:cml_mac_addr_t {feature-list:HAVE_BGP_EVPN}?
     |  +--ro state
     |     +--ro enable-vxlan            empty
     |     +--ro vtep-ipv4?              inet:ipv4-address
     |     +--ro mac-ageing-timer?       uint32
     |     +--ro arp-nd-refresh-timer?   uint32 {feature-list:HAVE_BGP_EVPN}?
     |     +--ro mac-address?            cml-data-types:cml_mac_addr_t {feature-list:HAVE_BGP_EVPN}?
     +--rw qos-tunnel-mappings
     |  +--rw qos-tunnel-mapping* [qos-map-mode traffic-direction] {feature-list:HAVE_QOS}?
     |     +--rw qos-map-mode         -> ../config/qos-map-mode
     |     +--rw traffic-direction    -> ../config/traffic-direction
     |     +--rw config
     |     |  +--rw traffic-direction?   ipi-vxlan-types:vxlan_qos_dir_t
     |     |  +--rw qos-map-mode?        ipi-vxlan-types:vxlan_qos_global_mode_t
     |     |  +--rw profile-name         string
     |     +--ro state
     |        +--ro traffic-direction?   ipi-vxlan-types:vxlan_qos_dir_t
     |        +--ro qos-map-mode?        ipi-vxlan-types:vxlan_qos_global_mode_t
     |        +--ro profile-name         string
     +--rw vxlan-tenants
     |  +--rw vxlan-tenant* [vxlan-identifier]
     |     +--rw vxlan-identifier         -> ../config/vxlan-identifier
     |     +--rw config
     |     |  +--rw vrf-name?               -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_BGP_EVPN}?
     |     |  +--rw map-network*            string
     |     |  +--rw mac-hold-timer?         int32 {feature-list:HAVE_BGP_EVPN}?
     |     |  +--rw tenant-description?     string
     |     |  +--rw irb-name?               -> /ipi-interface:interfaces/interface/name {feature-list:HAVE_BGP_EVPN}?
     |     |  +--rw vxlan-identifier?       uint32
     |     |  +--rw tenant-type?            ipi-vxlan-types:vxlan_tenant_type_t
     |     |  +--rw tenant-type-bridge?     ipi-vxlan-types:vxlan_tenant_type_bridge_t
     |     |  +--rw etree-leaf?             empty
     |     |  +--rw xconnect-identifier?    uint32 {feature-list:HAVE_EVPN_VPWS}?
     |     |  +--rw tenant-xconnect-type?   ipi-vxlan-types:vxlan_tenant_xconnect_type_t
     |     +--ro state
     |     |  +--ro vrf-name?               -> /ipi-network-instance:network-instances/network-instance/ipi-vrf:vrf/config/vrf-name {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro map-network*            string
     |     |  +--ro mac-hold-timer?         int32 {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro tenant-description?     string
     |     |  +--ro irb-name?               -> /ipi-interface:interfaces/interface/name {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro vxlan-identifier?       uint32
     |     |  +--ro tenant-type?            ipi-vxlan-types:vxlan_tenant_type_t
     |     |  +--ro tenant-type-bridge?     ipi-vxlan-types:vxlan_tenant_type_bridge_t
     |     |  +--ro etree-leaf?             empty
     |     |  +--ro xconnect-identifier?    uint32 {feature-list:HAVE_EVPN_VPWS}?
     |     |  +--ro tenant-xconnect-type?   ipi-vxlan-types:vxlan_tenant_xconnect_type_t
     |     +--ro route-count-info
     |     |  +--ro state
     |     |     +--ro total?      uint32
     |     |     +--ro mac-only?   uint32
     |     |     +--ro mac-ipv4?   uint32
     |     |     +--ro mac-ipv6?   uint32 {feature-list:HAVE_IPV6}?
     |     +--ro xconnect-mapping-info {feature-list:HAVE_EVPN_VPWS}?
     |     |  +--ro state
     |     |     +--ro source-tenant-description?     string
     |     |     +--ro destination-vpws-identifier?   uint32
     |     |     +--ro vlan-id?                       string
     |     |     +--ro inner-vlan-id?                 uint32
     |     |     +--ro source-interface?              string
     |     |     +--ro destination-interface?         string
     |     |     +--ro vtep-ip-address?               inet:ipv4-address
     |     |     +--ro connection-type?               ipi-vxlan-types:vxlan_tenant_xconnect_connection_type_t
     |     |     +--ro connection-status?             ipi-vxlan-types:vxlan_tenant_xconnect_connection_status_t
     |     +--rw irb
     |     |  +--rw config
     |     |  |  +--rw irb-advertise-host-route?   empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro state
     |     |     +--ro irb-advertise-host-route?   empty {feature-list:HAVE_BGP_EVPN}?
     |     +--rw static-tenants
     |     |  +--rw static-tenant* [mac-address]
     |     |     +--rw mac-address    -> ../config/mac-address
     |     |     +--rw config
     |     |     |  +--rw mac-address?        cml-data-types:cml_mac_addr_t
     |     |     |  +--rw remote-vtep-ipv4    inet:ipv4-address
     |     |     +--ro state
     |     |        +--ro mac-address?        cml-data-types:cml_mac_addr_t
     |     |        +--ro remote-vtep-ipv4    inet:ipv4-address
     |     +--ro arp-cache-info* [host-ip]
     |     |  +--ro host-ip    -> ../state/host-ip
     |     |  +--ro state
     |     |     +--ro host-ip?           inet:ipv4-address
     |     |     +--ro host-mac?          cml-data-types:cml_mac_addr_t
     |     |     +--ro host-type?         ipi-vxlan-types:vxlan_host_t
     |     |     +--ro interface-index?   uint32
     |     +--ro nd-cache-info* [host-ip]
     |     |  +--ro host-ip    -> ../state/host-ip
     |     |  +--ro state
     |     |     +--ro host-ip?           inet:ipv6-address
     |     |     +--ro host-mac?          cml-data-types:cml_mac_addr_t
     |     |     +--ro host-type?         ipi-vxlan-types:vxlan_host_t
     |     |     +--ro interface-index?   uint32
     |     +--ro mac-table-info* [mac-address]
     |     |  +--ro mac-address    -> ../state/mac-address
     |     |  +--ro state
     |     |     +--ro mac-address?               cml-data-types:cml_mac_addr_t
     |     |     +--ro interface-name?            -> /ipi-interface:interfaces/interface/name
     |     |     +--ro vlan-id?                   string
     |     |     +--ro inner-vlan-id?             uint32
     |     |     +--ro vtep-ip-esi?               string
     |     |     +--ro host-type?                 ipi-vxlan-types:vxlan_host_t
     |     |     +--ro host-status?               ipi-vxlan-types:vxlan_host_status_t
     |     |     +--ro access-port-description?   string
     |     +--ro static-host-info* [mac-address host-ipv4]
     |     |  +--ro mac-address    -> ../state/mac-address
     |     |  +--ro host-ipv4      -> ../state/host-ipv4
     |     |  +--ro state
     |     |     +--ro mac-address?         cml-data-types:cml_mac_addr_t
     |     |     +--ro static-host-state?   ipi-vxlan-types:vxlan_static_host_state_t
     |     |     +--ro host-ipv4?           inet:ipv4-address
     |     +--ro static-host-ipv6-info* [mac-address host-ipv6]
     |        +--ro mac-address    -> ../state/mac-address
     |        +--ro host-ipv6      -> ../state/host-ipv6
     |        +--ro state
     |           +--ro mac-address?         cml-data-types:cml_mac_addr_t
     |           +--ro static-host-state?   ipi-vxlan-types:vxlan_static_host_state_t
     |           +--ro host-ipv6?           inet:ipv6-address {feature-list:HAVE_IPV6}?
     +--ro tunnel* [destination-vtep-ip]
     |  +--ro destination-vtep-ip    -> ../state/destination-vtep-ip
     |  +--ro state
     |     +--ro destination-vtep-ip?   inet:ipv4-address
     |     +--ro source-vtep-ip?        inet:ipv4-address
     |     +--ro up-down-time?          yang:timeticks
     |     +--ro tunnel-status?         ipi-vxlan-types:vxlan_tunnel_status_t
     |     +--ro counters
     |        +--ro out-bytes?                           yang:counter64
     |        +--ro out-packets?                         yang:counter64
     |        +--ro in-bytes?                            yang:counter64
     |        +--ro in-packets?                          yang:counter64
     |        +--ro tx-arp-discard-packets?              yang:counter64
     |        +--ro tx-nd-discard-packets?               yang:counter64
     |        +--ro tx-arp-request-packets?              yang:counter64
     |        +--ro tx-arp-reply-packets?                yang:counter64
     |        +--ro tx-neighbor-solicitation-packets?    yang:counter64
     |        +--ro tx-neighbor-advertisement-packets?   yang:counter64
     |        +--ro tx-garp-packets?                     yang:counter64
     |        +--ro tx-gna-packets?                      yang:counter64
     +--rw untagged-access-interfaces
     |  +--rw untagged-access-interface* [untagged-interface-name] {feature-list:NOT_HAVE_DNX}?
     |     +--rw untagged-interface-name               -> ../config/untagged-interface-name
     |     +--rw config
     |     |  +--rw interface-name?             -> /ipi-interface:interfaces/interface/name
     |     |  +--rw admin-shutdown?             empty
     |     |  +--rw description?                cml-data-types:cml_line_t
     |     |  +--rw dynamic-learning-disable?   empty
     |     |  +--rw access-mac-hold-time?       int32
     |     |  +--rw arp-nd-flood-suppress?      empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--rw garp-gna-enable?            empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--rw mac-address*                cml-data-types:cml_mac_addr_t
     |     |  +--rw default-access-interface?   empty
     |     |  +--rw untagged-interface-name?    -> /ipi-interface:interfaces/interface/name
     |     +--ro state
     |     |  +--ro interface-name?             -> /ipi-interface:interfaces/interface/name
     |     |  +--ro admin-shutdown?             empty
     |     |  +--ro description?                cml-data-types:cml_line_t
     |     |  +--ro dynamic-learning-disable?   empty
     |     |  +--ro access-mac-hold-time?       int32
     |     |  +--ro arp-nd-flood-suppress?      empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro garp-gna-enable?            empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro mac-address*                cml-data-types:cml_mac_addr_t
     |     |  +--ro default-access-interface?   empty
     |     |  +--ro untagged-interface-name?    -> /ipi-interface:interfaces/interface/name
     |     +--rw cache
     |     |  +--rw config
     |     |  |  +--rw arp-cache-disable?   empty {feature-list:HAVE_BGP_EVPN}?
     |     |  |  +--rw nd-cache-disable?    empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro state
     |     |     +--ro arp-cache-disable?   empty {feature-list:HAVE_BGP_EVPN}?
     |     |     +--ro nd-cache-disable?    empty {feature-list:HAVE_BGP_EVPN}?
     |     +--rw map
     |     |  +--rw config
     |     |  |  +--rw vxlan-identifier?     -> /vxlan/vxlan-tenants/vxlan-tenant/config/vxlan-identifier
     |     |  |  +--rw tenant-description?   -> /vxlan/vxlan-tenants/vxlan-tenant/config/tenant-description
     |     |  +--ro state
     |     |     +--ro vxlan-identifier?     -> /vxlan/vxlan-tenants/vxlan-tenant/config/vxlan-identifier
     |     |     +--ro tenant-description?   -> /vxlan/vxlan-tenants/vxlan-tenant/config/tenant-description
     |     +--rw host-macs-ipv4
     |     |  +--rw host-mac-ipv4* [mac-address ipv4-address] {feature-list:NOT_HAVE_DNX}?
     |     |     +--rw mac-address     -> ../config/mac-address
     |     |     +--rw ipv4-address    -> ../config/ipv4-address
     |     |     +--rw config
     |     |     |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
     |     |     |  +--rw ipv4-address?   inet:ipv4-address
     |     |     +--ro state
     |     |        +--ro mac-address?    cml-data-types:cml_mac_addr_t
     |     |        +--ro ipv4-address?   inet:ipv4-address
     |     +--rw host-macs-ipv6
     |     |  +--rw host-mac-ipv6* [mac-address ipv6-address] {feature-list:HAVE_IPV6,feature-list:NOT_HAVE_DNX}?
     |     |     +--rw mac-address     -> ../config/mac-address
     |     |     +--rw ipv6-address    -> ../config/ipv6-address
     |     |     +--rw config
     |     |     |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
     |     |     |  +--rw ipv6-address?   inet:ipv6-address
     |     |     +--ro state
     |     |        +--ro mac-address?    cml-data-types:cml_mac_addr_t
     |     |        +--ro ipv6-address?   inet:ipv6-address
     |     +--rw access-interface-qos-type-mappings
     |        +--rw access-interface-qos-type-mapping* [profile-map-type] {feature-list:HAVE_QOS}?
     |           +--rw profile-map-type    -> ../config/profile-map-type
     |           +--rw config
     |           |  +--rw profile-map-type?   ipi-vxlan-types:vxlan_qos_map_profile_type_t
     |           |  +--rw profile-name        string
     |           +--ro state
     |              +--ro profile-map-type?   ipi-vxlan-types:vxlan_qos_map_profile_type_t
     |              +--ro profile-name        string
     +--rw tagged-access-interfaces
     |  +--rw tagged-access-interface* [interface-name vlan-identifier] {feature-list:NOT_HAVE_DNX}?
     |     +--rw interface-name                        -> ../config/interface-name
     |     +--rw vlan-identifier                       -> ../config/vlan-identifier
     |     +--rw config
     |     |  +--rw tag-protocol-identifier?    string
     |     |  +--rw interface-name?             -> /ipi-interface:interfaces/interface/name
     |     |  +--rw admin-shutdown?             empty
     |     |  +--rw description?                cml-data-types:cml_line_t
     |     |  +--rw dynamic-learning-disable?   empty
     |     |  +--rw access-mac-hold-time?       int32
     |     |  +--rw arp-nd-flood-suppress?      empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--rw garp-gna-enable?            empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--rw mac-address*                cml-data-types:cml_mac_addr_t
     |     |  +--rw vlan-identifier?            string
     |     +--ro state
     |     |  +--ro tag-protocol-identifier?    string
     |     |  +--ro interface-name?             -> /ipi-interface:interfaces/interface/name
     |     |  +--ro admin-shutdown?             empty
     |     |  +--ro description?                cml-data-types:cml_line_t
     |     |  +--ro dynamic-learning-disable?   empty
     |     |  +--ro access-mac-hold-time?       int32
     |     |  +--ro arp-nd-flood-suppress?      empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro garp-gna-enable?            empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro mac-address*                cml-data-types:cml_mac_addr_t
     |     |  +--ro vlan-identifier?            string
     |     +--rw cache
     |     |  +--rw config
     |     |  |  +--rw arp-cache-disable?   empty {feature-list:HAVE_BGP_EVPN}?
     |     |  |  +--rw nd-cache-disable?    empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro state
     |     |     +--ro arp-cache-disable?   empty {feature-list:HAVE_BGP_EVPN}?
     |     |     +--ro nd-cache-disable?    empty {feature-list:HAVE_BGP_EVPN}?
     |     +--rw map
     |     |  +--rw config
     |     |  |  +--rw vxlan-identifier?     -> /vxlan/vxlan-tenants/vxlan-tenant/config/vxlan-identifier
     |     |  |  +--rw tenant-description?   -> /vxlan/vxlan-tenants/vxlan-tenant/config/tenant-description
     |     |  +--ro state
     |     |     +--ro vxlan-identifier?     -> /vxlan/vxlan-tenants/vxlan-tenant/config/vxlan-identifier
     |     |     +--ro tenant-description?   -> /vxlan/vxlan-tenants/vxlan-tenant/config/tenant-description
     |     +--rw host-macs-ipv4
     |     |  +--rw host-mac-ipv4* [mac-address ipv4-address]
     |     |     +--rw mac-address     -> ../config/mac-address
     |     |     +--rw ipv4-address    -> ../config/ipv4-address
     |     |     +--rw config
     |     |     |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
     |     |     |  +--rw ipv4-address?   inet:ipv4-address
     |     |     +--ro state
     |     |        +--ro mac-address?    cml-data-types:cml_mac_addr_t
     |     |        +--ro ipv4-address?   inet:ipv4-address
     |     +--rw host-macs-ipv6
     |     |  +--rw host-mac-ipv6* [mac-address ipv6-address] {feature-list:HAVE_IPV6}?
     |     |     +--rw mac-address     -> ../config/mac-address
     |     |     +--rw ipv6-address    -> ../config/ipv6-address
     |     |     +--rw config
     |     |     |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
     |     |     |  +--rw ipv6-address?   inet:ipv6-address
     |     |     +--ro state
     |     |        +--ro mac-address?    cml-data-types:cml_mac_addr_t
     |     |        +--ro ipv6-address?   inet:ipv6-address
     |     +--rw access-interface-qos-type-mappings
     |        +--rw access-interface-qos-type-mapping* [profile-map-type] {feature-list:HAVE_QOS}?
     |           +--rw profile-map-type    -> ../config/profile-map-type
     |           +--rw config
     |           |  +--rw profile-map-type?   ipi-vxlan-types:vxlan_qos_map_profile_type_t
     |           |  +--rw profile-name        string
     |           +--ro state
     |              +--ro profile-map-type?   ipi-vxlan-types:vxlan_qos_map_profile_type_t
     |              +--ro profile-name        string
     +--rw double-tagged-access-interfaces
     |  +--rw double-tagged-access-interface* [interface-name vlan-identifier inner-vlan-identifier] {feature-list:NOT_HAVE_DNX}?
     |     +--rw interface-name                        -> ../config/interface-name
     |     +--rw vlan-identifier                       -> ../config/vlan-identifier
     |     +--rw inner-vlan-identifier                 -> ../config/inner-vlan-identifier
     |     +--rw config
     |     |  +--rw tag-protocol-identifier?    string
     |     |  +--rw interface-name?             -> /ipi-interface:interfaces/interface/name
     |     |  +--rw admin-shutdown?             empty
     |     |  +--rw description?                cml-data-types:cml_line_t
     |     |  +--rw dynamic-learning-disable?   empty
     |     |  +--rw access-mac-hold-time?       int32
     |     |  +--rw arp-nd-flood-suppress?      empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--rw garp-gna-enable?            empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--rw mac-address*                cml-data-types:cml_mac_addr_t
     |     |  +--rw vlan-identifier?            string
     |     |  +--rw inner-vlan-identifier?      uint32
     |     +--ro state
     |     |  +--ro tag-protocol-identifier?    string
     |     |  +--ro interface-name?             -> /ipi-interface:interfaces/interface/name
     |     |  +--ro admin-shutdown?             empty
     |     |  +--ro description?                cml-data-types:cml_line_t
     |     |  +--ro dynamic-learning-disable?   empty
     |     |  +--ro access-mac-hold-time?       int32
     |     |  +--ro arp-nd-flood-suppress?      empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro garp-gna-enable?            empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro mac-address*                cml-data-types:cml_mac_addr_t
     |     |  +--ro vlan-identifier?            string
     |     |  +--ro inner-vlan-identifier?      uint32
     |     +--rw map
     |     |  +--rw config
     |     |  |  +--rw vxlan-identifier?     -> /vxlan/vxlan-tenants/vxlan-tenant/config/vxlan-identifier
     |     |  |  +--rw tenant-description?   -> /vxlan/vxlan-tenants/vxlan-tenant/config/tenant-description
     |     |  +--ro state
     |     |     +--ro vxlan-identifier?     -> /vxlan/vxlan-tenants/vxlan-tenant/config/vxlan-identifier
     |     |     +--ro tenant-description?   -> /vxlan/vxlan-tenants/vxlan-tenant/config/tenant-description
     |     +--rw cache
     |     |  +--rw config
     |     |  |  +--rw arp-cache-disable?   empty {feature-list:HAVE_BGP_EVPN}?
     |     |  |  +--rw nd-cache-disable?    empty {feature-list:HAVE_BGP_EVPN}?
     |     |  +--ro state
     |     |     +--ro arp-cache-disable?   empty {feature-list:HAVE_BGP_EVPN}?
     |     |     +--ro nd-cache-disable?    empty {feature-list:HAVE_BGP_EVPN}?
     |     +--rw host-macs-ipv4
     |     |  +--rw host-mac-ipv4* [mac-address ipv4-address] {feature-list:NOT_HAVE_DNX}?
     |     |     +--rw mac-address     -> ../config/mac-address
     |     |     +--rw ipv4-address    -> ../config/ipv4-address
     |     |     +--rw config
     |     |     |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
     |     |     |  +--rw ipv4-address?   inet:ipv4-address
     |     |     +--ro state
     |     |        +--ro mac-address?    cml-data-types:cml_mac_addr_t
     |     |        +--ro ipv4-address?   inet:ipv4-address
     |     +--rw host-macs-ipv6
     |     |  +--rw host-mac-ipv6* [mac-address ipv6-address] {feature-list:HAVE_IPV6}?
     |     |     +--rw mac-address     -> ../config/mac-address
     |     |     +--rw ipv6-address    -> ../config/ipv6-address
     |     |     +--rw config
     |     |     |  +--rw mac-address?    cml-data-types:cml_mac_addr_t
     |     |     |  +--rw ipv6-address?   inet:ipv6-address
     |     |     +--ro state
     |     |        +--ro mac-address?    cml-data-types:cml_mac_addr_t
     |     |        +--ro ipv6-address?   inet:ipv6-address
     |     +--rw access-interface-qos-type-mappings
     |        +--rw access-interface-qos-type-mapping* [profile-map-type] {feature-list:HAVE_QOS}?
     |           +--rw profile-map-type    -> ../config/profile-map-type
     |           +--rw config
     |           |  +--rw profile-map-type?   ipi-vxlan-types:vxlan_qos_map_profile_type_t
     |           |  +--rw profile-name        string
     |           +--ro state
     |              +--ro profile-map-type?   ipi-vxlan-types:vxlan_qos_map_profile_type_t
     |              +--ro profile-name        string
     +--ro access-interfaces
     |  +--ro access-interface* [interface-index]
     |     +--ro interface-index    -> ../state/interface-index
     |     +--ro state
     |        +--ro interface-index?   uint32
     |        +--ro if-name?           cml-data-types:cml_line_t
     |        +--ro access-counters
     |           +--ro rx-arp-discard-packets?              yang:counter64
     |           +--ro tx-arp-discard-packet?               yang:counter64
     |           +--ro rx-arp-request-packets?              yang:counter64
     |           +--ro rx-arp-reply-packets?                yang:counter64
     |           +--ro tx-arp-request-packet?               yang:counter64
     |           +--ro tx-arp-reply-packet?                 yang:counter64
     |           +--ro rx-nd-discard-packets?               yang:counter64
     |           +--ro tx-nd-discard-packet?                yang:counter64
     |           +--ro rx-neighbor-solicitation-packets?    yang:counter64
     |           +--ro rx-neighbor-advertisement-packets?   yang:counter64
     |           +--ro tx-neighbor-solicitation-packet?     yang:counter64
     |           +--ro tx-neighbor-advertisement-packet?    yang:counter64
     |           +--ro rx-gratuitous-arp-packets?           yang:counter64
     |           +--ro tx-gratuitous-arp-packets?           yang:counter64
     |           +--ro rx-gratuitous-na-packets?            yang:counter64
     |           +--ro tx-gratuitous-na-packets?            yang:counter64
     |           +--ro rx-data-packets?                     yang:counter64
     |           +--ro rx-data-bytes?                       yang:counter64
     |           +--ro tx-data-packets?                     yang:counter64
     |           +--ro tx-data-bytes?                       yang:counter64
     +--rw interfaces
        +--rw interface* [name]
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?                -> /ipi-interface:interfaces/interface/name
           |  +--rw evpn-mac-holdtime?   uint32 {feature-list:HAVE_BGP_EVPN}?
           +--ro state
              +--ro name?                -> /ipi-interface:interfaces/interface/name
              +--ro evpn-mac-holdtime?   uint32 {feature-list:HAVE_BGP_EVPN}?
 
  rpcs:
    +---x clear-nvo-vxlan-dynamic-mac-address-table {feature-list:HAVE_VXLAN}?
    +---x clear-nvo-vxlan-dynamic-mac-address-table-vnid {feature-list:HAVE_VXLAN}?
    |  +---w input
    |     +---w vxlan-identifier    uint32
    |     +---w mac-address?        cml-data-types:cml_mac_addr_t
    +---x clear-nvo-vxlan-tunnels {feature-list:HAVE_VXLAN}?
    +---x clear-nvo-id-vxlan-tunnels-destip {feature-list:HAVE_VXLAN}?
    |  +---w input
    |     +---w destination-vtep-ip    inet:ipv4-address
    +---x clear-nvo-vxlan-mac-stale-entries {feature-list:HAVE_VXLAN}?
    |  +---w input
    |     +---w vxlan-identifier?   uint32
    +---x clear-vxlan-untagged-access-port-counters {feature-list:HAVE_VXLAN}?
    |  +---w input
    |     +---w interface-name    string
    +---x clear-vxlan-single-tagged-access-port-counters {feature-list:NOT_HAVE_DNX}?
    |  +---w input
    |     +---w interface-name     string
    |     +---w vlan-identifier    string
    +---x clear-vxlan-double-tagged-access-port-counters {feature-list:NOT_HAVE_DNX}?
    |  +---w input
    |     +---w interface-name           string
    |     +---w outer-vlan-identifier    uint32
    |     +---w inner-vlan-identifier    uint32
    +---x clear-vxlan-access-port-counters-all {feature-list:HAVE_VXLAN}?
    +---x clear-vxlan-network-port-counters {feature-list:HAVE_VXLAN}?
    |  +---w input
    |     +---w destination-vtep-ip    inet:ipv4-address
    +---x clear-vxlan-network-port-counters-all {feature-list:HAVE_VXLAN}?
 
  notifications:
    +---n vxlan-tunnel-status-change-notification
       +--ro severity?              cml-data-types:cml_notif_severity_t
       +--ro eventClass?            cml-data-types:cml_notif_class_t
       +--ro destination-vtep-ip?   inet:ipv4-address
       +--ro tunnel-status?         ipi-vxlan-types:vxlan_tunnel_status_t
 
 
module: ipi-watchdog
  +--rw watchdog {feature-list:HAVE_PSERVD}?
     +--rw config
     |  +--rw watchdog-disabled?    empty
     |  +--rw keepalive-interval?   uint16
     +--ro state
     |  +--ro watchdog-disabled?      empty
     |  +--ro keepalive-interval?     uint16
     |  +--ro watchdog-status?        ipi-watchdog-types:watchdog_status_t
     |  +--ro all-processes-status?   ipi-watchdog-types:watchdog_global_processes_status_t
     +--rw software-modules
        +--rw software-module* [name]
           +--rw name       -> ../config/name
           +--rw config
           |  +--rw name?                              ipi-watchdog-types:watchdog_module_name_t
           |  +--rw module-watchdog-status-disabled    empty
           +--ro state
           |  +--ro name?                              ipi-watchdog-types:watchdog_module_name_t
           |  +--ro module-watchdog-status-disabled    empty
           +--rw process
              +--ro state
                 +--ro process-name?     ipi-watchdog-types:watchdog_module_name_t
                 +--ro process-status?   ipi-watchdog-types:watchdog_process_status_t
                 +--ro start-time?       yang:date-and-time
                 +--ro down-reason?      cml-data-types:cml_line_t
 
  rpcs:
    +---x clear-core-dump {feature-list:HAVE_PSERVD,feature-list:HAVE_ZEBOS_CORE_ANALYSER}?
       +---w input
          +---w core-dump    string
 
  notifications:
    +---n protocol-module-down {feature-list:HAVE_PSERVD}?
    |  +--ro severity?       cml-data-types:cml_notif_severity_t
    |  +--ro eventClass?     cml-data-types:cml_notif_class_t
    |  +--ro name?           ipi-watchdog-types:watchdog_module_name_t
    |  +--ro process-name?   ipi-watchdog-types:watchdog_module_name_t
    |  +--ro down-reason?    cml-data-types:cml_line_t
    +---n protocol-module-restarted {feature-list:HAVE_PSERVD}?
       +--ro severity?       cml-data-types:cml_notif_severity_t
       +--ro eventClass?     cml-data-types:cml_notif_class_t
       +--ro name?           ipi-watchdog-types:watchdog_module_name_t
       +--ro process-name?   ipi-watchdog-types:watchdog_module_name_t
       +--ro start-time?     yang:date-and-time
 
 
module: ipi-xstp
  +--rw xstp
     +--rw interfaces
     |  +--rw interface* [name]
     |     +--rw name                      -> ../config/name
     |     +--rw config
     |     |  +--rw name?                              -> /ipi-interface:interfaces/interface/name
     |     |  +--rw hello-time?                        uint8
     |     |  +--rw port-configuration?                ipi-xstp-types:xstp_port_edge_t
     |     |  +--rw enable-automatic-edge-detection?   empty
     |     |  +--rw bpdu-guard?                        ipi-xstp-types:xstp_bpdu_t
     |     |  +--rw bpdu-filter?                       ipi-xstp-types:xstp_bpdu_t
     |     |  +--rw enable-root-guard?                 empty
     |     |  +--rw link-type?                         ipi-xstp-types:xstp_link_type_t
     |     |  +--rw enable-restricted-domain-role?     empty
     |     |  +--rw enable-restricted-role?            empty
     |     |  +--rw enable-restricted-tcn?             empty
     |     +--ro state
     |     |  +--ro name?                              -> /ipi-interface:interfaces/interface/name
     |     |  +--ro hello-time?                        uint8
     |     |  +--ro port-configuration?                ipi-xstp-types:xstp_port_edge_t
     |     |  +--ro enable-automatic-edge-detection?   empty
     |     |  +--ro bpdu-guard?                        ipi-xstp-types:xstp_bpdu_t
     |     |  +--ro bpdu-filter?                       ipi-xstp-types:xstp_bpdu_t
     |     |  +--ro enable-root-guard?                 empty
     |     |  +--ro link-type?                         ipi-xstp-types:xstp_link_type_t
     |     |  +--ro enable-restricted-domain-role?     empty
     |     |  +--ro enable-restricted-role?            empty
     |     |  +--ro enable-restricted-tcn?             empty
     |     +--rw mstp
     |     |  +--rw mst-instances
     |     |     +--rw mst-instance* [instance-id]
     |     |        +--rw instance-id    -> ../config/instance-id
     |     |        +--rw config
     |     |        |  +--rw instance-id?                       -> /ipi-network-instance:network-instances/network-instance/ipi-bridge:bridge/stp/mstp/mst-instances/mst-instance/instance-id
     |     |        |  +--rw enable-instance-restricted-role?   empty
     |     |        |  +--rw enable-instance-restricted-tcn?    empty
     |     |        +--ro state
     |     |           +--ro instance-id?                       -> /ipi-network-instance:network-instances/network-instance/ipi-bridge:bridge/stp/mstp/mst-instances/mst-instance/instance-id
     |     |           +--ro enable-instance-restricted-role?   empty
     |     |           +--ro enable-instance-restricted-tcn?    empty
     |     +--rw customer-spanning-tree {feature-list:HAVE_PROVIDER_BRIDGE}?
     |        +--rw config
     |        |  +--rw bridge-priority?       uint16
     |        |  +--rw max-age?               uint8
     |        |  +--rw hello-time?            uint8
     |        |  +--rw forward-delay?         uint8
     |        |  +--rw transmit-hold-count?   uint8
     |        +--ro state
     |        |  +--ro bridge-priority?       uint16
     |        |  +--ro max-age?               uint8
     |        |  +--ro hello-time?            uint8
     |        |  +--ro forward-delay?         uint8
     |        |  +--ro transmit-hold-count?   uint8
     |        +--rw customer-edge
     |        |  +--rw config
     |        |  |  +--rw port-priority?   uint8
     |        |  |  +--rw path-cost?       uint32
     |        |  +--ro state
     |        |     +--ro port-priority?   uint8
     |        |     +--ro path-cost?       uint32
     |        +--rw provider-edge
     |           +--rw vlans
     |              +--rw vlan* [svlan-id]
     |                 +--rw svlan-id    -> ../config/svlan-id
     |                 +--rw config
     |                 |  +--rw svlan-id?        uint16
     |                 |  +--rw port-priority?   uint8
     |                 |  +--rw path-cost?       uint32
     |                 +--ro state
     |                    +--ro svlan-id?        uint16
     |                    +--ro port-priority?   uint8
     |                    +--ro path-cost?       uint32
     +--rw mstp
        +--rw debug
           +--rw config
           |  +--rw options?   ipi-xstp-types:mstp_debug_t
           +--ro state
              +--ro options?                 ipi-xstp-types:mstp_debug_t
              +--ro terminal-debug-status?   ipi-xstp-types:mstp_debug_t
 
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-bridge:bridge:
    +--rw stp
       +--rw config
       |  +--rw ageing-time?                     ipi-xstp-types:xstp_ageing_time_t
       |  +--rw enable-cisco-interoperability?   empty
       |  +--rw forwarding-delay?                uint8
       |  +--rw hello-time?                      uint8
       |  +--rw max-age?                         uint8
       |  +--rw max-hops?                        uint8
       |  +--rw bridge-priority?                 uint32
       |  +--rw transmit-hold-count?             uint8
       +--ro state
       |  +--ro ageing-time?                     ipi-xstp-types:xstp_ageing_time_t
       |  +--ro enable-cisco-interoperability?   empty
       |  +--ro forwarding-delay?                uint8
       |  +--ro hello-time?                      uint8
       |  +--ro max-age?                         uint8
       |  +--ro max-hops?                        uint8
       |  +--ro bridge-priority?                 uint32
       |  +--ro transmit-hold-count?             uint8
       +--rw global
       |  +--rw config
       |  |  +--rw enable-bpdu-filter?             empty
       |  |  +--rw enable-bpdu-guard?              empty
       |  |  +--rw enable-error-disable-timeout?   empty
       |  |  +--rw force-version?                  uint8
       |  |  +--rw path-cost-method?               ipi-xstp-types:xstp_path_cost_method_t
       |  +--ro state
       |  |  +--ro enable-bpdu-filter?             empty
       |  |  +--ro enable-bpdu-guard?              empty
       |  |  +--ro enable-error-disable-timeout?   empty
       |  |  +--ro force-version?                  uint8
       |  |  +--ro path-cost-method?               ipi-xstp-types:xstp_path_cost_method_t
       |  +--rw bridge-admins
       |  |  +--rw bridge-admin* [bridge-type disable-spanning-tree]
       |  |     +--rw bridge-type              -> ../config/bridge-type
       |  |     +--rw disable-spanning-tree    -> ../config/disable-spanning-tree
       |  |     +--rw config
       |  |     |  +--rw bridge-forwarding?       ipi-xstp-types:xstp_bridge_forward_t
       |  |     |  +--rw bridge-type?             ipi-xstp-types:xstp_bridge_type_t
       |  |     |  +--rw disable-spanning-tree?   empty
       |  |     +--ro state
       |  |        +--ro bridge-forwarding?       ipi-xstp-types:xstp_bridge_forward_t
       |  |        +--ro bridge-type?             ipi-xstp-types:xstp_bridge_type_t
       |  |        +--ro disable-spanning-tree?   empty
       |  +--rw bridge-shutdowns
       |     +--rw bridge-shutdown* [enable-shutdown]
       |        +--rw enable-shutdown    -> ../config/enable-shutdown
       |        +--rw config
       |        |  +--rw bridge-forwarding?   ipi-xstp-types:xstp_bridge_forward_t
       |        |  +--rw enable-shutdown?     empty
       |        +--ro state
       |           +--ro bridge-forwarding?   ipi-xstp-types:xstp_bridge_forward_t
       |           +--ro enable-shutdown?     empty
       +--rw mstp
          +--rw config
          |  +--rw region-name?       string
          |  +--rw revision-number?   uint16
          +--ro state
          |  +--ro counters
          |  |  +--ro topology-changes-count?         uint32
          |  |  +--ro total-topology-changes-count?   uint32
          |  |  +--ro max-age-count?                  uint32
          |  +--ro region-name?                          string
          |  +--ro revision-number?                      uint16
          |  +--ro topology-change-detected?             boolean
          |  +--ro last-topology-change?                 yang:date-and-time
          |  +--ro topology-change-initiator?            uint16
          |  +--ro topology-change-last-received-from?   string
          |  +--ro cist-bridge-id?                       string
          |  +--ro cist-designated-root?                 string
          |  +--ro cist-regional-root?                   string
          |  +--ro cist-designated-bridge?               string
          |  +--ro cist-port-root-id?                    uint16
          |  +--ro external-root-path-cost?              uint32
          |  +--ro internal-root-path-cost?              uint32
          +--rw mst-instances
             +--rw mst-instance* [instance-id]
             |  +--rw instance-id    -> ../config/instance-id
             |  +--rw config
             |  |  +--rw instance-id?       ipi-xstp-types:mstp_instance_t
             |  |  +--rw bridge-priority?   uint32
             |  |  +--rw vlan-id?           cml-data-types:cml_range_t
             |  +--ro state
             |  |  +--ro instance-id?                          ipi-xstp-types:mstp_instance_t
             |  |  +--ro bridge-priority?                      uint32
             |  |  +--ro vlan-id?                              cml-data-types:cml_range_t
             |  |  +--ro bridge-id?                            string
             |  |  +--ro designated-root-priority?             uint16
             |  |  +--ro designated-root-address?              yang:mac-address
             |  |  +--ro internal-root-path-cost?              uint32
             |  |  +--ro root-port-ifindex?                    uint32
             |  |  +--ro topology-change-detected?             boolean
             |  |  +--ro topology-change-initiator?            uint16
             |  |  +--ro topology-change-last-received-from?   string
             |  |  +--ro last-topology-change?                 yang:date-and-time
             |  |  +--ro topology-changes?                     uint32
             |  +--rw interfaces
             |     +--rw interface* [name]
             |        +--rw name      -> ../config/name
             |        +--rw config
             |        |  +--rw name?            -> /ipi-interface:interfaces/interface/name
             |        |  +--rw path-cost?       uint32
             |        |  +--rw port-priority?   int16
             |        +--ro state
             |           +--ro counters
             |           |  +--ro config-bpdu-sent?       uint32
             |           |  +--ro config-bpdu-received?   uint32
             |           |  +--ro tcn-bpdu-sent?          uint32
             |           |  +--ro tcn-bpdu-received?      uint32
             |           |  +--ro similar-bpdu-count?     uint32
             |           +--ro name?                         -> /ipi-interface:interfaces/interface/name
             |           +--ro path-cost?                    uint32
             |           +--ro port-priority?                int16
             |           +--ro port-id?                      uint16
             |           +--ro internal-root-path-cost?      uint32
             |           +--ro designated-root-priority?     uint16
             |           +--ro designated-root-address?      yang:mac-address
             |           +--ro designated-bridge-priority?   uint16
             |           +--ro designated-bridge-address?    yang:mac-address
             |           +--ro designated-port-priority?     uint16
             |           +--ro designated-port-num?          uint16
             |           +--ro designated-cost?              uint16
             |           +--ro hello-time-remaining?         uint32
             |           +--ro forward-time-remaining?       uint32
             |           +--ro message-age-time-remaining?   uint32
             |           +--ro port-state?                   ipi-xstp-types:mstp_port_state_t
             |           +--ro port-role?                    ipi-xstp-types:mstp_port_role_t
             +--rw te-mst-instance
                +--rw config
                |  +--rw vlan-id*                 uint16
                |  +--rw disable-spanning-tree?   empty
                +--ro state
                |  +--ro vlan-id*                              uint16
                |  +--ro disable-spanning-tree?                empty
                |  +--ro bridge-id?                            string
                |  +--ro designated-root-priority?             uint16
                |  +--ro designated-root-address?              yang:mac-address
                |  +--ro internal-root-path-cost?              uint32
                |  +--ro root-port-ifindex?                    uint32
                |  +--ro topology-change-detected?             boolean
                |  +--ro topology-change-initiator?            uint16
                |  +--ro topology-change-last-received-from?   string
                |  +--ro last-topology-change?                 yang:date-and-time
                |  +--ro topology-changes?                     uint32
                +--rw interfaces
                   +--rw interface* [name]
                      +--rw name      -> ../config/name
                      +--rw config
                      |  +--rw name?   -> /ipi-interface:interfaces/interface/name
                      +--ro state
                         +--ro counters
                         |  +--ro config-bpdu-sent?       uint32
                         |  +--ro config-bpdu-received?   uint32
                         |  +--ro tcn-bpdu-sent?          uint32
                         |  +--ro tcn-bpdu-received?      uint32
                         |  +--ro similar-bpdu-count?     uint32
                         +--ro name?                         -> /ipi-interface:interfaces/interface/name
                         +--ro port-id?                      uint16
                         +--ro internal-root-path-cost?      uint32
                         +--ro designated-root-priority?     uint16
                         +--ro designated-root-address?      yang:mac-address
                         +--ro designated-bridge-priority?   uint16
                         +--ro designated-bridge-address?    yang:mac-address
                         +--ro designated-port-priority?     uint16
                         +--ro designated-port-num?          uint16
                         +--ro designated-cost?              uint16
                         +--ro hello-time-remaining?         uint32
                         +--ro forward-time-remaining?       uint32
                         +--ro message-age-time-remaining?   uint32
                         +--ro port-state?                   ipi-xstp-types:mstp_port_state_t
                         +--ro port-role?                    ipi-xstp-types:mstp_port_role_t
  augment /ipi-network-instance:network-instances/ipi-network-instance:network-instance/ipi-bridge:bridge/ipi-bridge:bridge-ports/ipi-bridge:interface:
    +--rw mstp-port
       +--rw port-bridge
          +--rw config
          |  +--rw path-cost?       uint32
          |  +--rw port-priority?   int16
          +--ro state
             +--ro counters
             |  +--ro config-bpdu-sent?       uint32
             |  +--ro config-bpdu-received?   uint32
             |  +--ro tcn-bpdu-sent?          uint32
             |  +--ro tcn-bpdu-received?      uint32
             |  +--ro source-mac-count?       uint32
             |  +--ro similar-bpdu-count?     uint32
             |  +--ro total-src-mac-count?    uint32
             +--ro path-cost?                                 uint32
             +--ro port-priority?                             int16
             +--ro link-type?                                 ipi-xstp-types:xstp_link_type_t
             +--ro bpdu-filter?                               ipi-xstp-types:xstp_bpdu_t
             +--ro bpdu-guard?                                ipi-xstp-types:xstp_bpdu_t
             +--ro root-guard?                                empty
             +--ro cist-path-cost?                            uint32
             +--ro cist-priority?                             uint32
             +--ro cist-port-id?                              uint16
             +--ro cist-port-number?                          uint16
             +--ro cist-root?                                 string
             +--ro cist-regional-root?                        string
             +--ro cist-designated-bridge?                    string
             +--ro cist-designated-root-path-cost?            uint32
             +--ro cist-designated-external-root-path-cost?   uint32
             +--ro cist-designated-internal-root-path-cost?   uint32
             +--ro cist-designated-port-id?                   uint32
             +--ro cist-hello-time-remaining?                 uint32
             +--ro cist-forward-time-remaining?               uint32
             +--ro cist-message-age-time-remaining?           uint32
             +--ro cist-topology-change-time-remaining?       uint32
             +--ro cist-port-state?                           string
             +--ro cist-port-role?                            ipi-xstp-types:mstp_port_role_t
             +--ro cist-forward-transitions?                  uint32
             +--ro service-vlan-id?                           uint16 {feature-list:HAVE_PROVIDER_BRIDGE}?
 
  rpcs:
    +---x mstp-terminal-debug-on {feature-list:HAVE_MSTPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-xstp-types:mstp_debug_t
    +---x mstp-terminal-debug-off {feature-list:HAVE_MSTPD}?
    |  +---w input
    |     +---w terminal-debug-options    ipi-xstp-types:mstp_debug_t
    +---x clear-spanning-tree-detected-protocols-per-bridge {feature-list:HAVE_MSTPD}?
    |  +---w input
    |     +---w bridge-id    string
    +---x clear-spanning-tree-detected-protocols-per-interface {feature-list:HAVE_MSTPD}?
    |  +---w input
    |     +---w interface-name    string
    +---x clear-spanning-tree-statistics-per-instance-and-bridge {feature-list:HAVE_MSTPD,feature-list:HAVE_PROVIDER_BRIDGE_OR_HAVE_B_BEB}?
    |  +---w input
    |     +---w bridge-id          string
    |     +---w mst-instance-id    ipi-xstp-types:mstp_instance_spbm_type_t
    +---x clear-spanning-tree-statistics-per-interface-vlan-and-bridge {feature-list:HAVE_MSTPD,feature-list:HAVE_PROVIDER_BRIDGE_OR_HAVE_B_BEB}?
    |  +---w input
    |     +---w bridge-id         string
    |     +---w interface-name    string
    |     +---w vlan-id           uint16
    +---x clear-spanning-tree-statistics-per-interface-and-bridge {feature-list:HAVE_MSTPD}?
    |  +---w input
    |     +---w bridge-id         string
    |     +---w interface-name    string
    +---x clear-spanning-tree-statistics-per-bridge {feature-list:HAVE_MSTPD}?
    |  +---w input
    |     +---w bridge-id    string
    +---x clear-spanning-tree-statistics-per-vlan-and-bridge {feature-list:HAVE_MSTPD}?
    |  +---w input
    |     +---w bridge-id    string
    |     +---w vlan-id      uint16
    +---x clear-spanning-tree-statistics-per-interface-instance-and-bridge {feature-list:HAVE_MSTPD}?
    |  +---w input
    |     +---w bridge-id          string
    |     +---w interface-name     string
    |     +---w mst-instance-id    ipi-xstp-types:mstp_instance_spbm_type_t
    +---x mstp-snmp-restart {feature-list:HAVE_SNMP}?
 
  notifications:
    +---n bridge-new-root-notification
       +--ro severity?     cml-data-types:cml_notif_severity_t
       +--ro eventClass?   cml-data-types:cml_notif_class_t
       +--ro message?      string