Cisco-IOS-XR-ipv4-ospf-oper

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

  • Version: 2021-06-01

    Cisco-IOS-XR-ipv4-ospf-oper@2021-06-01


    
      module Cisco-IOS-XR-ipv4-ospf-oper {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-ospf-oper";
    
        prefix ipv4-ospf-oper;
    
        import ietf-inet-types {
          prefix inet;
        }
        import Cisco-IOS-XR-types {
          prefix xr;
        }
        import cisco-semver {
          prefix semver;
        }
    
        include Cisco-IOS-XR-ipv4-ospf-oper-sub3 {
          revision-date "2021-06-01";
        }
        include Cisco-IOS-XR-ipv4-ospf-oper-sub1 {
          revision-date "2021-06-01";
        }
        include Cisco-IOS-XR-ipv4-ospf-oper-sub2 {
          revision-date "2021-06-01";
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
    Customer Service
    
    Postal: 170 West Tasman Drive
    San Jose, CA 95134
    
    Tel: +1 800 553-NETS
    
    E-mail: cs-yang@cisco.com";
    
        description
          "This module contains a collection of YANG definitions
    for Cisco IOS-XR ipv4-ospf package operational data.
    
    This module contains definitions
    for the following management objects:
      ospf: OSPF operational data
    
    Copyright (c) 2013-2021 by Cisco Systems, Inc.
    All rights reserved.";
    
        revision "2021-06-01" {
          description
            "Added changes to show if a FAD contains unknown parameters
    2020-09-15
      Added changes for Delay Anomaly
    2020-07-15
      Added changes for SRTE automatic path capability";
        }
    
        revision "2020-03-19" {
          description
            "Added changes for Delay Normalization
    2020-02-04
    Added changes for Conditional Advertising
    2019-09-30
    Added changes for Weighted SRLG";
        }
    
        revision "2019-07-26" {
          description
            "Added new fields in redistribution container to display more information.";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2019-01-07" {
          description
            "Modified for Programmability 2.0";
        }
    
        revision "2018-04-18" {
          description
            "Added keychain name to be displayed in show ospf interface bag";
        }
    
        revision "2017-10-26" {
          description
            "Fixed some field name and values for better interpretation";
        }
    
        revision "2017-09-07" {
          description
            "Fixed type translation error.";
        }
    
        revision "2017-05-01" {
          description
            "Fixing backward compatibility error in module.";
        }
    
        revision "2017-01-02" {
          description "IOS XR 6.2.1 revision.";
        }
    
        revision "2015-11-09" {
          description "IOS XR 6.0 revision.";
        }
    
        semver:module-version "2.1.0";
        semver:module-version "2.0.0";
        semver:module-version "1.1.0";
        semver:module-version "1.0.0";
    
        typedef Ospf-prefix-length {
          type uint32 {
            range "0..32";
          }
          description "Ospf prefix length";
        }
    
        typedef Ospf-ls {
          type enumeration {
            enum "router" {
              value 1;
              description "Router LSA";
            }
            enum "network" {
              value 2;
              description "Network LSA";
            }
            enum "summary" {
              value 3;
              description "Summary LSA";
            }
            enum "asbr-summary" {
              value 4;
              description "ASBR-Summary LSA";
            }
            enum "external" {
              value 5;
              description "External LSA";
            }
            enum "nssa-external" {
              value 7;
              description "NSSA External LSA";
            }
            enum "opaque-link" {
              value 9;
              description "Opaque LSALink Scope";
            }
            enum "opaque-area" {
              value 10;
              description
                "Opaque LSA Area Scope";
            }
            enum "opaque-as" {
              value 11;
              description "Opaque LSA AS Scope";
            }
          }
          description "Ospf ls";
        }
    
        container ospf {
          config false;
          description "OSPF operational data";
          container processes {
            description "Table for each process";
            list process {
              key "process-name";
              description
                "Operational data for a particular OSPF process";
              container vrfs {
                description "Table for each VRF";
                list vrf {
                  key "vrf-name";
                  description
                    "Operational data for a particular VRF
    (instance) in the OSPF process";
                  container interface-vrf-information {
                    description
                      "Container for OSPF Interfaces/links under a
    VRF";
                    container sham-links {
                      description
                        "Sham Link table";
                      list sham-link {
                        key "sham-link-name";
                        description
                          "Information for one Sham link";
                        leaf sham-link-name {
                          type xr:Cisco-ios-xr-string;
                          description
                            "Sham link";
                        }
    
                        container sham-link-neighbor {
                          description
                            "Neighbor information";
                          container sham-link-retransmissoin {
                            description
                              "Neighbor retransmission info";
                            leaf dbd-retransmission-count {
                              type uint32;
                              description
                                "Number of DBD retransmissions during last
    exchange";
                            }
    
                            leaf dbd-retransmission-total-count {
                              type uint32;
                              description
                                "Total number of DBD retransmissions for this
    neighbor";
                            }
    
                            leaf area-flooding-index {
                              type uint32;
                              description
                                "Area scope LSA's flood index";
                            }
    
                            leaf as-flood-index {
                              type uint32;
                              description
                                "AS scope LSA's flood index";
                            }
    
                            leaf neighbor-retransmission-count {
                              type uint32;
                              description
                                "Retransmission queue length";
                            }
    
                            leaf number-of-retransmissions {
                              type uint32;
                              description
                                "Number of retransmissions for this neighbor";
                            }
    
                            leaf area-first-flood-information {
                              type uint32;
                              description
                                "First flood item for area scope LSAs";
                            }
    
                            leaf area-first-flood-information-index {
                              type uint32;
                              description
                                "Index of the first flood item for area scope
    LSAs";
                            }
    
                            leaf as-first-flood-information {
                              type uint32;
                              description
                                "First flood item for AS scope LSAs";
                            }
    
                            leaf as-first-flood-information-index {
                              type uint32;
                              description
                                "Index for first flood item for AS scope LSAs";
                            }
    
                            leaf area-next-flood-information {
                              type uint32;
                              description
                                "Next flood item for area scope LSAs";
                            }
    
                            leaf area-next-flood-information-index {
                              type uint32;
                              description
                                "Index of next flood item for Area scope LSAs";
                            }
    
                            leaf as-next-flood-information {
                              type uint32;
                              description
                                "Next flood item for AS scope LSAs";
                            }
    
                            leaf as-next-flood-information-index {
                              type uint32;
                              description
                                "Index of next flood item for AS scope LSAs";
                            }
    
                            leaf last-retransmission-length {
                              type uint32;
                              description
                                "Number of LSAs sent in last retransmission";
                            }
    
                            leaf maximum-retransmission-length {
                              type uint32;
                              description
                                "Maximum number of LSAs sent in a retransmission";
                            }
    
                            leaf last-retransmission-time {
                              type uint32;
                              description
                                "Time taken for retransmission in the last
    attempt (ms)";
                            }
    
                            leaf maximum-retransmission-time {
                              type uint32;
                              description
                                "Maximum time taken for retransmission (ms)";
                            }
    
                            leaf lsa-retransmission-timer {
                              type uint32;
                              description
                                "Time until next LSA retransmission (ms)";
                            }
                          }  // container sham-link-retransmissoin
    
                          leaf sham-link-suppress-hello {
                            type boolean;
                            description
                              "If true Hellos suppressed";
                          }
    
                          leaf sham-link-state {
                            type Neighbor-state;
                            description
                              "Adjacency state";
                          }
                        }  // container sham-link-neighbor
    
                        leaf sham-link-name-xr {
                          type string;
                          description
                            "Name of the Sham link";
                        }
    
                        leaf sham-link-neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor on other end of this sham link";
                        }
    
                        leaf sham-link-source-address {
                          type inet:ipv4-address;
                          description
                            "Sham-link source";
                        }
    
                        leaf sham-link-dest-address {
                          type inet:ipv4-address;
                          description
                            "Sham-link dest";
                        }
    
                        leaf sham-link-state {
                          type Ospf-interface-state;
                          description
                            "OSPF interface state for the sham link";
                        }
    
                        leaf sham-link-demand-circuit {
                          type boolean;
                          description
                            "If true, the link runs as demand circuit";
                        }
    
                        leaf sham-link-dc-bitless-lsa {
                          type uint32;
                          description
                            "Number of LSA's with demand circuit bit not set";
                        }
    
                        leaf sham-link-ifindex {
                          type uint32;
                          description
                            "Sham-link Interface index";
                        }
    
                        leaf sham-link-area {
                          type string;
                          description "Area id";
                        }
    
                        leaf sham-link-cost {
                          type uint16;
                          description
                            "Cost of the sham link";
                        }
    
                        leaf sham-link-transmission-delay {
                          type uint16;
                          units "second";
                          description
                            "Transmission delay in seconds";
                        }
    
                        leaf sham-link-hello-interval {
                          type uint32;
                          description
                            "Hello interval (s)";
                        }
    
                        leaf sham-link-hello-interval-ms {
                          type uint32;
                          description
                            "Hello interval (ms)";
                        }
    
                        leaf sham-link-dead-interval {
                          type uint32;
                          description
                            "Dead interval (s)";
                        }
    
                        leaf sham-link-wait-interval {
                          type uint32;
                          description
                            "Wait interval (s)";
                        }
    
                        leaf sham-link-retransmission-interval {
                          type uint32;
                          description
                            "Retransmission interval (s)";
                        }
    
                        leaf sham-link-next-hello {
                          type uint32;
                          description
                            "Time until next hello (s)";
                        }
    
                        leaf sham-link-next-hello-ms {
                          type uint32;
                          description
                            "Time until next hello (ms)";
                        }
    
                        leaf sham-link-passive {
                          type boolean;
                          description
                            "If true, interface is passive";
                        }
    
                        leaf sham-link-authentication-type {
                          type Authentication;
                          description
                            "Authentication type";
                        }
    
                        leaf sham-link-youngest-md-key {
                          type boolean;
                          description
                            "If true, MD key configured";
                        }
    
                        leaf sham-link-youngest-md-key-id {
                          type uint16;
                          description
                            "Youngest MD key ID";
                        }
    
                        leaf sham-link-old-md-key-count {
                          type uint32;
                          description
                            "Number of neighbors still using the old key
    (rollover in progress)";
                        }
    
                        leaf keychain-name {
                          type string {
                            length "0..255";
                          }
                          description
                            "Sham Link Keychain Name";
                        }
    
                        leaf sham-link-keychain-key-conf {
                          type boolean;
                          description
                            "If true, Keychain key is configured";
                        }
    
                        leaf sham-link-keychain-id {
                          type uint64;
                          description
                            "Sham Link Keychain ID";
                        }
    
                        leaf sham-link-keychain-alg {
                          type Ospf-crytographic-algo;
                          description
                            "Sham Link Keychain cryptographic-algorithm";
                        }
    
                        leaf sham-link-nsf-enabled {
                          type boolean;
                          description
                            "If true, NSF enabled";
                        }
    
                        leaf sham-link-nsf {
                          type boolean;
                          description
                            "If true, NSF restart in progress on the sham
    link";
                        }
    
                        leaf sham-link-last-nsf {
                          type uint32;
                          units "second";
                          description
                            "Time in seconds since last NSF";
                        }
    
                        list sham-link-md-key {
                          description
                            "List of old MD keys (if any)";
                          leaf entry {
                            type uint16;
                            description
                              "List of old MD keys (if any)";
                          }
                        }  // list sham-link-md-key
                      }  // list sham-link
                    }  // container sham-links
                  }  // container interface-vrf-information
    
                  leaf vrf-name {
                    type xr:Cisco-ios-xr-string;
                    description "VRF Name";
                  }
    
                  container flood-list-table {
                    description
                      "List of LSAs being flooded";
                    list flood {
                      key "interface-name";
                      description
                        "Flooding information for a specific interface";
                      leaf interface-name {
                        type xr:Interface-name;
                        description
                          "Name of the Interface";
                      }
    
                      leaf flood-interface-name {
                        type xr:Interface-name;
                        description
                          "Name of the Interface for which flood list is
    retrieved";
                      }
    
                      leaf flood-pacing-timer {
                        type uint32;
                        description
                          "Time until next LS update due (ms)";
                      }
    
                      leaf flood-lsa-count {
                        type uint32;
                        description
                          "Number of LSAs currently being flooded";
                      }
    
                      list area-flood {
                        description
                          "Area scope floodlist";
                        leaf header-lsa-type {
                          type Lsa;
                          description "LSA Type";
                        }
    
                        leaf header-lsa-age {
                          type uint16;
                          description
                            "Age of the LSA (s)";
                        }
    
                        leaf header-ls-id {
                          type inet:ipv4-address;
                          description "LSA ID";
                        }
    
                        leaf header-advertising-router {
                          type inet:ipv4-address;
                          description
                            "Router ID of the Advertising Router";
                        }
    
                        leaf header-sequence-number {
                          type uint32;
                          description
                            "Current LSA sequence number";
                        }
    
                        leaf header-lsa-checksum {
                          type uint16;
                          description
                            "Checksum of the LSA";
                        }
                      }  // list area-flood
    
                      list as-flood {
                        description
                          "AS scope floodlist";
                        leaf header-lsa-type {
                          type Lsa;
                          description "LSA Type";
                        }
    
                        leaf header-lsa-age {
                          type uint16;
                          description
                            "Age of the LSA (s)";
                        }
    
                        leaf header-ls-id {
                          type inet:ipv4-address;
                          description "LSA ID";
                        }
    
                        leaf header-advertising-router {
                          type inet:ipv4-address;
                          description
                            "Router ID of the Advertising Router";
                        }
    
                        leaf header-sequence-number {
                          type uint32;
                          description
                            "Current LSA sequence number";
                        }
    
                        leaf header-lsa-checksum {
                          type uint16;
                          description
                            "Checksum of the LSA";
                        }
                      }  // list as-flood
                    }  // list flood
                  }  // container flood-list-table
    
                  container segment-routing {
                    description
                      "Container for Segment Routing";
                    container adjacency-sids {
                      description
                        "Container for SR Adjacency SIDs";
                      list adjacency-sid {
                        key "adj-sid";
                        description
                          "SR Adj SID Bag";
                        leaf adj-sid {
                          type uint32 {
                            range "0..1048575";
                          }
                          description
                            "Adjacency SID";
                        }
    
                        leaf sr-adjacency-sid {
                          type uint32;
                          description
                            "SR Adjacency SID";
                        }
    
                        leaf sr-adj-sid-is-configured {
                          type boolean;
                          description
                            "SR Adj SID is configured";
                        }
    
                        leaf is-deleted-adjacency-protected {
                          type boolean;
                          description
                            "Is this adj-sid being protected after adjacency
    deleted";
                        }
    
                        leaf deleted-adjacency-protection-timer {
                          type uint32;
                          description
                            "Remaining time for deleted adjacency protection
    (sec)";
                        }
    
                        list sr-adj-sid-neighbor {
                          description
                            "SR Adj SID Neighbor List";
                          container primary-path-info {
                            description
                              "SR Adj SID Primary path info";
                            leaf interface-handle {
                              type xr:Interface-name;
                              description
                                "SR Adj SID Interface Handle";
                            }
    
                            leaf nexthop-ip-address {
                              type inet:ipv4-address;
                              description
                                "SR Adj SID Nexthop Neighbor IP Address";
                            }
    
                            leaf load-metric {
                              type uint32;
                              description
                                "SR Adj SID Path metric";
                            }
    
                            list label-stack {
                              description
                                "SR Adj SID Label Stack";
                              leaf entry {
                                type uint32;
                                description
                                  "SR Adj SID Label Stack";
                              }
                            }  // list label-stack
                          }  // container primary-path-info
    
                          container backup-path-info {
                            description
                              "SR Adj SID Backup path info";
                            leaf interface-handle {
                              type xr:Interface-name;
                              description
                                "SR Adj SID Interface Handle";
                            }
    
                            leaf nexthop-ip-address {
                              type inet:ipv4-address;
                              description
                                "SR Adj SID Nexthop Neighbor IP Address";
                            }
    
                            leaf load-metric {
                              type uint32;
                              description
                                "SR Adj SID Path metric";
                            }
    
                            list label-stack {
                              description
                                "SR Adj SID Label Stack";
                              leaf entry {
                                type uint32;
                                description
                                  "SR Adj SID Label Stack";
                              }
                            }  // list label-stack
                          }  // container backup-path-info
    
                          leaf neighbor-id {
                            type inet:ipv4-address;
                            description
                              "SR Adj SID Neighbor ID";
                          }
    
                          leaf sr-adj-sid-is-protected {
                            type boolean;
                            description
                              "SR Adj SID is protected";
                          }
    
                          leaf sr-adj-sid-has-backup {
                            type boolean;
                            description
                              "SR Adj SID has backup path";
                          }
                        }  // list sr-adj-sid-neighbor
                      }  // list adjacency-sid
                    }  // container adjacency-sids
    
                    container sr-endpoint-policies {
                      description
                        "Container for SR Policies";
                      list sr-endpoint-policy {
                        key "endpoint-ip";
                        description
                          "SR Endpoint Policy Bag";
                        leaf endpoint-ip {
                          type inet:ip-address-no-zone;
                          description
                            "Endpoint IP Address";
                        }
    
                        leaf sr-endpoint {
                          type inet:ipv4-address;
                          description
                            "SR Endpoint Address";
                        }
    
                        leaf sr-router-id {
                          type uint32;
                          description
                            "SR Endpoint Router ID";
                        }
    
                        leaf sr-area-id-string {
                          type string;
                          description
                            "SR Endpoint Area ID";
                        }
    
                        leaf sr-policy-count {
                          type uint32;
                          description
                            "Count of SR Policies";
                        }
    
                        leaf sr-valid-policy-count {
                          type uint32;
                          description
                            "Count of Valid SR Policies";
                        }
    
                        leaf sr-endp-state-is-valid {
                          type boolean;
                          description
                            "Whether SR Endpoint state is valid";
                        }
    
                        leaf sr-endp-state-is-stale {
                          type boolean;
                          description
                            "Whether SR Endpoint state is stale";
                        }
    
                        leaf sr-endp-state-is-unres {
                          type boolean;
                          description
                            "Whether SR Endpoint state is unresolved";
                        }
    
                        leaf sr-endp-resolution-fail-reason {
                          type Ospf-sr-endp-res-fail-reason;
                          description
                            "Reason for SR Endpoint resolution failure";
                        }
    
                        list sr-policy {
                          description
                            "List of SR Policies";
                          leaf policy-name {
                            type string;
                            description
                              "Name of the SR Policy";
                          }
    
                          leaf policy-if-handle {
                            type xr:Interface-name;
                            description
                              "Interface handle of the SR Policy";
                          }
    
                          leaf policy-metric {
                            type int32;
                            description
                              "Metric of the SR Policy";
                          }
    
                          leaf policy-bsid {
                            type uint32;
                            description
                              "Bsid of the SR Policy";
                          }
    
                          leaf policy-metric-mode {
                            type Ospf-sr-pol-metric-mode;
                            description
                              "Metric mode of the SR Policy";
                          }
    
                          leaf policy-is-sspf {
                            type boolean;
                            description
                              "Whether SR Policy is Strict SPF";
                          }
    
                          leaf policy-is-autoroute-include {
                            type boolean;
                            description
                              "Whether SR Policy is autoroute Include";
                          }
    
                          leaf policy-state-is-valid {
                            type boolean;
                            description
                              "Whether SR Policy State is valid";
                          }
    
                          leaf policy-state-is-stale {
                            type boolean;
                            description
                              "Whether SR Policy State is stale";
                          }
    
                          leaf policy-state-is-ifh-error {
                            type boolean;
                            description
                              "Whether SR Policy State is IF Handle error";
                          }
    
                          leaf policy-state-is-idb-pending {
                            type boolean;
                            description
                              "Whether SR Policy State is IDB pending";
                          }
    
                          leaf policy-update-timestamp {
                            type uint32;
                            description
                              "Timestamp when SR Policy was updated";
                          }
                        }  // list sr-policy
                      }  // list sr-endpoint-policy
                    }  // container sr-endpoint-policies
                  }  // container segment-routing
    
                  container mpls-te {
                    description
                      "Container for MPLS TE";
                    container mpls-te-links {
                      description
                        "MPLS TE link information table";
                      list mpls-te-link {
                        key "area-id";
                        description
                          "MPLS TE link information";
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description "Area ID";
                        }
    
                        leaf mpls-te-router-id {
                          type inet:ipv4-address;
                          description
                            "OSPF MPLS-TE router ID";
                        }
    
                        leaf mpls-te-enabled {
                          type boolean;
                          description
                            "If true, MPLS-TE enabled in area";
                        }
    
                        leaf mpls-te-initialized {
                          type boolean;
                          description
                            "If true, MPLS-TE initialized in the area";
                        }
    
                        leaf mpls-te-area-id {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted decimal
    format";
                        }
    
                        leaf mpls-te-area-instance {
                          type uint32;
                          description
                            "Area information instance";
                        }
    
                        leaf mpls-te-router-address {
                          type inet:ipv4-address;
                          description
                            "MPLS-TE router address";
                        }
    
                        leaf mpls-te-next-fragment-id {
                          type uint32;
                          description
                            "Next MPLS-TE fragment ID";
                        }
    
                        leaf spacious-fragment {
                          type boolean;
                          description
                            "If true, fragment has space for next link";
                        }
    
                        list mpls-te-link {
                          description
                            "MPLS-TE links in the area";
                          container global-unreserve-bw-per-priority {
                            description
                              "Global pool unreserved bandwidth for each
    priority (bytes/s)";
                            list bw-per-priority {
                              max-elements 8;
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                              }
                            }  // list bw-per-priority
                          }  // container global-unreserve-bw-per-priority
    
                          container sub-pool-unreserve-bw-per-priority {
                            description
                              "Sub pool unreserved bandwidth for each priority
    (bytes/s)";
                            list bw-per-priority {
                              max-elements 8;
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                              }
                            }  // list bw-per-priority
                          }  // container sub-pool-unreserve-bw-per-priority
    
                          container link-protocol-priority-capability {
                            description
                              "Link protocol and protocol priority capability
    details";
                            leaf link-protocol-capability {
                              type uint8;
                              description
                                "Protocol capability value of the link";
                            }
    
                            leaf link-protocol-priority {
                              type uint8;
                              description
                                "Protocol priority value of the link";
                            }
                          }  // container link-protocol-priority-capability
    
                          container link-sw-capability {
                            description
                              "Link switching capability";
                            leaf link-switching-capability {
                              type uint8;
                              description
                                "Link Switching Capability value";
                            }
    
                            leaf link-encoding {
                              type uint8;
                              description
                                "Link Encoding value";
                            }
    
                            leaf minimum-lsp-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Minimum LSP bandwidth (bytes/s)";
                            }
    
                            leaf link-mtu {
                              type uint16;
                              units "byte";
                              description
                                "Link MTU size (bytes)";
                            }
    
                            list maximum-lsp-bw-per-priority {
                              max-elements 8;
                              description
                                "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                              }
                            }  // list maximum-lsp-bw-per-priority
                          }  // container link-sw-capability
    
                          container extended-admin-group-list {
                            description
                              "Extended Admin Group";
                            leaf extended-admin-size {
                              type uint32;
                              description
                                "Size of the extended admin group";
                            }
    
                            list ext-admin-data {
                              description
                                "Value of Extended Admin Group";
                              leaf entry {
                                type uint32;
                                description
                                  "Value of Extended Admin Group";
                              }
                            }  // list ext-admin-data
                          }  // container extended-admin-group-list
    
                          leaf new-link {
                            type boolean;
                            description
                              "If true, Link is new";
                          }
    
                          leaf fragment-id {
                            type uint32;
                            description
                              "Fragment ID for this link";
                          }
    
                          leaf mpls-link-instance {
                            type uint32;
                            description
                              "Link instance";
                          }
    
                          leaf mpls-link-type {
                            type Link-subnet;
                            description
                              "Type of link";
                          }
    
                          leaf neighbor-link-id {
                            type inet:ipv4-address;
                            description
                              "Link ID of the neighbor";
                          }
    
                          leaf link-address {
                            type inet:ipv4-address;
                            description
                              "The local interface address";
                          }
    
                          leaf neighbor-ip-address {
                            type inet:ipv4-address;
                            description
                              "IP address of the neighbor";
                          }
    
                          leaf igp-metric {
                            type uint32;
                            description
                              "Link IGP metric";
                          }
    
                          leaf te-metric {
                            type uint32;
                            description
                              "Link TE metric";
                          }
    
                          leaf maximum-link-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link bandwidth (bytes/s)";
                          }
    
                          leaf maximum-link-reservable-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link global pool reservable bandwidth
    (bytes/s)";
                          }
    
                          leaf maximum-link-sub-reservable-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link subpool reservable bandwidth
    (bytes/s)";
                          }
    
                          leaf priority-count {
                            type int32;
                            description
                              "Number of priorities.";
                          }
    
                          leaf affinity {
                            type uint32;
                            description
                              "Affinity bits";
                          }
    
                          leaf output-interface-id {
                            type uint32;
                            description
                              "Outgoing interface ID";
                          }
    
                          leaf input-interface-id {
                            type uint32;
                            description
                              "Incoming interface ID";
                          }
    
                          leaf dste-in-use {
                            type boolean;
                            description
                              "A DS-TE Allocation Model in use";
                          }
    
                          leaf dste-allocation-model-id {
                            type Igpte-lib-bw-model;
                            description
                              "DS-TE Allocation Model ID";
                          }
    
                          leaf number-of-optional-tl-vs {
                            type uint8;
                            description
                              "Number of Optional TLVs";
                          }
    
                          list mplste-link-opt-tlv {
                            description
                              "List of Optional TLVs";
                            leaf mplste-link-opt-tlv-type {
                              type Mpls-te-opt-tlv;
                              description
                                "Type of Opt TLV";
                            }
    
                            leaf mplste-link-opt-tlv-len {
                              type uint16;
                              description
                                "Length of Opt TLV";
                            }
    
                            list mplste-link-opt-tlv-value {
                              description
                                "Value of Opt TLV";
                              container bctlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-bc'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_BC'";
                                }
                                description
                                  "Value of Bandwidth Constraints TLV";
                                leaf model-id {
                                  type uint8;
                                  description
                                    "Allocation Model ID";
                                }
    
                                leaf num-b-cs {
                                  type uint32;
                                  description
                                    "Number of BC TLVs";
                                }
    
                                list mplste-link-bc-bandwidth {
                                  description
                                    "Value of BC TLV";
                                  leaf entry {
                                    type uint64;
                                    description
                                      "Value of BC TLV";
                                  }
                                }  // list mplste-link-bc-bandwidth
                              }  // container bctlv-value
    
                              container srlgtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-srlg'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_SRLG'";
                                }
                                description
                                  "Value of SRLG TLV";
                                leaf srlg-len {
                                  type uint32;
                                  description
                                    "Length of SRLG TLV";
                                }
    
                                leaf num-srl-gs {
                                  type uint32;
                                  description
                                    "Number of SRLG TLVs";
                                }
    
                                list mplste-link-srlg-data {
                                  description
                                    "Value of SRLG TLV";
                                  leaf entry {
                                    type uint32;
                                    description
                                      "Value of SRLG TLV";
                                  }
                                }  // list mplste-link-srlg-data
                              }  // container srlgtlv-value
    
                              container ixcdtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-ixcd'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_IXCD'";
                                }
                                description
                                  "Value of IXCD TLV";
                                container ixcd-switching-cap-type {
                                  description
                                    "Switching Cap type";
                                  container ixcdpsc-info {
                                    when
                                      "../switching-cap-type = 'rrr-proto-l-switch-cap-psc4'" {
                                      description
                                        "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_PSC4'";
                                    }
                                    description
                                      "IXCD PSC information";
                                    leaf min-lsp-bandwidth {
                                      type uint64;
                                      description
                                        "Min LSP bandwidth";
                                    }
    
                                    leaf psc-interface-mtu {
                                      type uint16;
                                      description
                                        " Interface MTU";
                                    }
                                  }  // container ixcdpsc-info
    
                                  container ixcdbw-sub-tlv {
                                    when
                                      "../switching-cap-type = 'rrr-proto-l-switch-cap-otn-tdm'" {
                                      description
                                        "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_OTN_TDM'";
                                    }
                                    description
                                      "Sub TLVs";
                                    list arr-bw-sub-tlv {
                                      description
                                        "Array of sub tlvs";
                                      container bw-sub-tlv-value {
                                        description
                                          "Value of BW Sub TLV";
                                        container fixed-bw-sub-tlv-value {
                                          when
                                            "../ixcdbw-sub-tlv-type = '1'" {
                                            description
                                              "../IXCDBWSubTLVType = '1'";
                                          }
                                          description
                                            "Value of Fixed Sub TLV";
                                          container fixed-sub-tlv-value {
                                            description
                                              "Value of Fixed Sub TLV";
                                            leaf signal-type {
                                              type uint8;
                                              description
                                                "Signal Type value";
                                            }
    
                                            leaf num-stages {
                                              type uint8;
                                              description
                                                "Number of stages";
                                            }
    
                                            leaf tbit {
                                              type uint8;
                                              description
                                                "T Bit";
                                            }
    
                                            leaf sbit {
                                              type uint8;
                                              description
                                                "S Bit";
                                            }
    
                                            leaf tsg {
                                              type uint8;
                                              description
                                                "TSG";
                                            }
    
                                            leaf res {
                                              type uint8;
                                              description
                                                "Res";
                                            }
    
                                            leaf priority-bit0 {
                                              type uint8;
                                              description
                                                "Priority 0";
                                            }
    
                                            leaf priority-bit1 {
                                              type uint8;
                                              description
                                                "Priority 1";
                                            }
    
                                            leaf priority-bit2 {
                                              type uint8;
                                              description
                                                "Priority 2";
                                            }
    
                                            leaf priority-bit3 {
                                              type uint8;
                                              description
                                                "Priority 3";
                                            }
    
                                            leaf priority-bit4 {
                                              type uint8;
                                              description
                                                "Priority 4";
                                            }
    
                                            leaf priority-bit5 {
                                              type uint8;
                                              description
                                                "Priority 5";
                                            }
    
                                            leaf priority-bit6 {
                                              type uint8;
                                              description
                                                "Priority 6";
                                            }
    
                                            leaf priority-bit7 {
                                              type uint8;
                                              description
                                                "Priority 7";
                                            }
    
                                            leaf stage {
                                              type yang:hex-string;
                                              description
                                                "Array of Stages";
                                            }
                                          }  // container fixed-sub-tlv-value
    
                                          list unres-oduj-prio {
                                            max-elements
                                              8;
                                            description
                                              "Array of Unres Oduj Prio";
                                            leaf entry {
                                              type uint32;
                                              description
                                                "Array of Unres Oduj Prio";
                                            }
                                          }  // list unres-oduj-prio
                                        }  // container fixed-bw-sub-tlv-value
    
                                        container flex-bw-sub-tlv-value {
                                          when
                                            "../ixcdbw-sub-tlv-type = '2'" {
                                            description
                                              "../IXCDBWSubTLVType = '2'";
                                          }
                                          description
                                            "Value of Flex Sub TLV";
                                          container flex-sub-tlv-value-common {
                                            description
                                              "Flex Sub TLV Value";
                                            leaf signal-type {
                                              type uint8;
                                              description
                                                "Signal Type value";
                                            }
    
                                            leaf num-stages {
                                              type uint8;
                                              description
                                                "Number of stages";
                                            }
    
                                            leaf tbit {
                                              type uint8;
                                              description
                                                "T Bit";
                                            }
    
                                            leaf sbit {
                                              type uint8;
                                              description
                                                "S Bit";
                                            }
    
                                            leaf tsg {
                                              type uint8;
                                              description
                                                "TSG";
                                            }
    
                                            leaf res {
                                              type uint8;
                                              description
                                                "Res";
                                            }
    
                                            leaf priority-bit0 {
                                              type uint8;
                                              description
                                                "Priority 0";
                                            }
    
                                            leaf priority-bit1 {
                                              type uint8;
                                              description
                                                "Priority 1";
                                            }
    
                                            leaf priority-bit2 {
                                              type uint8;
                                              description
                                                "Priority 2";
                                            }
    
                                            leaf priority-bit3 {
                                              type uint8;
                                              description
                                                "Priority 3";
                                            }
    
                                            leaf priority-bit4 {
                                              type uint8;
                                              description
                                                "Priority 4";
                                            }
    
                                            leaf priority-bit5 {
                                              type uint8;
                                              description
                                                "Priority 5";
                                            }
    
                                            leaf priority-bit6 {
                                              type uint8;
                                              description
                                                "Priority 6";
                                            }
    
                                            leaf priority-bit7 {
                                              type uint8;
                                              description
                                                "Priority 7";
                                            }
    
                                            leaf stage {
                                              type yang:hex-string;
                                              description
                                                "Array of Stages";
                                            }
                                          }  // container flex-sub-tlv-value-common
    
                                          list unres-lspbw {
                                            max-elements
                                              8;
                                            description
                                              "Array of Unres LSP BW";
                                            leaf entry {
                                              type uint64;
                                              description
                                                "Array of Unres LSP BW";
                                            }
                                          }  // list unres-lspbw
    
                                          list max-lspbw {
                                            max-elements
                                              8;
                                            description
                                              "Max LSP BW Array";
                                            leaf entry {
                                              type uint64;
                                              description
                                                "Max LSP BW Array";
                                            }
                                          }  // list max-lspbw
                                        }  // container flex-bw-sub-tlv-value
    
                                        leaf ixcdbw-sub-tlv-type {
                                          type uint16;
                                          description
                                            "IXCDBWSubTLVType";
                                        }
                                      }  // container bw-sub-tlv-value
    
                                      leaf bw-sub-tlv-type {
                                        type uint16;
                                        description
                                          "Type of Sub TLV";
                                      }
    
                                      leaf bw-sub-tlv-length {
                                        type uint16;
                                        description
                                          "Length of BW Sub TLV";
                                      }
                                    }  // list arr-bw-sub-tlv
                                  }  // container ixcdbw-sub-tlv
    
                                  leaf switching-cap-type {
                                    type uint8;
                                    description
                                      "SwitchingCapType";
                                  }
                                }  // container ixcd-switching-cap-type
    
                                leaf switching-cap {
                                  type uint8;
                                  description
                                    "SCap";
                                }
    
                                leaf rile-len-code {
                                  type uint8;
                                  description
                                    "Rile LenCode";
                                }
    
                                leaf fixed-scsi-count {
                                  type uint32;
                                  description
                                    "Fixed SCSI count";
                                }
    
                                leaf flex-scsi-count {
                                  type uint32;
                                  description
                                    "Flexible SCSI count";
                                }
    
                                list max-lspbw {
                                  max-elements
                                    8;
                                  description
                                    "Max LSP bandwidth array";
                                  leaf entry {
                                    type int64;
                                    description
                                      "Max LSP bandwidth array";
                                  }
                                }  // list max-lspbw
                              }  // container ixcdtlv-value
    
                              container unidtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-uni-delay'" {
                                  description
                                    "../OpaqueTLVType =
    'MPLS_TE_OPT_TLV_TYPE_UNI_DELAY'";
                                }
                                description
                                  "Value of Uni Delay TLV";
                                leaf uni-dir-delay {
                                  type uint32;
                                  description
                                    "Uni Dir Delay";
                                }
                              }  // container unidtlv-value
    
                              leaf opaque-tlv-type {
                                type Mpls-te-opt-tlv;
                                description
                                  "OpaqueTLVType";
                              }
                            }  // list mplste-link-opt-tlv-value
                          }  // list mplste-link-opt-tlv
                        }  // list mpls-te-link
    
                        list mpls-te-fragment {
                          description
                            "MPLS TE fragments in the area";
                          leaf fragment-instance {
                            type uint32;
                            description
                              "Fragment instance number";
                          }
    
                          leaf fragment-id {
                            type uint32;
                            description
                              "Fragment ID value";
                          }
    
                          leaf dste-model-id {
                            type uint8;
                            description
                              "DS-TE Allocation Model ID";
                          }
    
                          leaf same-fragment-count {
                            type uint8;
                            description
                              "Number of fragment links which haven't changed
    since the last update";
                          }
    
                          list mpls-te-link {
                            description
                              "List of fragment links";
                            container global-unreserve-bw-per-priority {
                              description
                                "Global pool unreserved bandwidth for each
    priority (bytes/s)";
                              list bw-per-priority {
                                max-elements 8;
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                                leaf entry {
                                  type uint64;
                                  units "byte/s";
                                  description
                                    "Unreserved bandwidth for each priority (bytes/s)";
                                }
                              }  // list bw-per-priority
                            }  // container global-unreserve-bw-per-priority
    
                            container sub-pool-unreserve-bw-per-priority {
                              description
                                "Sub pool unreserved bandwidth for each priority
    (bytes/s)";
                              list bw-per-priority {
                                max-elements 8;
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                                leaf entry {
                                  type uint64;
                                  units "byte/s";
                                  description
                                    "Unreserved bandwidth for each priority (bytes/s)";
                                }
                              }  // list bw-per-priority
                            }  // container sub-pool-unreserve-bw-per-priority
    
                            container link-protocol-priority-capability {
                              description
                                "Link protocol and protocol priority capability
    details";
                              leaf link-protocol-capability {
                                type uint8;
                                description
                                  "Protocol capability value of the link";
                              }
    
                              leaf link-protocol-priority {
                                type uint8;
                                description
                                  "Protocol priority value of the link";
                              }
                            }  // container link-protocol-priority-capability
    
                            container link-sw-capability {
                              description
                                "Link switching capability";
                              leaf link-switching-capability {
                                type uint8;
                                description
                                  "Link Switching Capability value";
                              }
    
                              leaf link-encoding {
                                type uint8;
                                description
                                  "Link Encoding value";
                              }
    
                              leaf minimum-lsp-bw {
                                type uint64;
                                units "byte/s";
                                description
                                  "Minimum LSP bandwidth (bytes/s)";
                              }
    
                              leaf link-mtu {
                                type uint16;
                                units "byte";
                                description
                                  "Link MTU size (bytes)";
                              }
    
                              list maximum-lsp-bw-per-priority {
                                max-elements 8;
                                description
                                  "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                                leaf entry {
                                  type uint64;
                                  units "byte/s";
                                  description
                                    "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                                }
                              }  // list maximum-lsp-bw-per-priority
                            }  // container link-sw-capability
    
                            container extended-admin-group-list {
                              description
                                "Extended Admin Group";
                              leaf extended-admin-size {
                                type uint32;
                                description
                                  "Size of the extended admin group";
                              }
    
                              list ext-admin-data {
                                description
                                  "Value of Extended Admin Group";
                                leaf entry {
                                  type uint32;
                                  description
                                    "Value of Extended Admin Group";
                                }
                              }  // list ext-admin-data
                            }  // container extended-admin-group-list
    
                            leaf new-link {
                              type boolean;
                              description
                                "If true, Link is new";
                            }
    
                            leaf fragment-id {
                              type uint32;
                              description
                                "Fragment ID for this link";
                            }
    
                            leaf mpls-link-instance {
                              type uint32;
                              description
                                "Link instance";
                            }
    
                            leaf mpls-link-type {
                              type Link-subnet;
                              description
                                "Type of link";
                            }
    
                            leaf neighbor-link-id {
                              type inet:ipv4-address;
                              description
                                "Link ID of the neighbor";
                            }
    
                            leaf link-address {
                              type inet:ipv4-address;
                              description
                                "The local interface address";
                            }
    
                            leaf neighbor-ip-address {
                              type inet:ipv4-address;
                              description
                                "IP address of the neighbor";
                            }
    
                            leaf igp-metric {
                              type uint32;
                              description
                                "Link IGP metric";
                            }
    
                            leaf te-metric {
                              type uint32;
                              description
                                "Link TE metric";
                            }
    
                            leaf maximum-link-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Maximum link bandwidth (bytes/s)";
                            }
    
                            leaf maximum-link-reservable-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Maximum link global pool reservable bandwidth
    (bytes/s)";
                            }
    
                            leaf maximum-link-sub-reservable-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Maximum link subpool reservable bandwidth
    (bytes/s)";
                            }
    
                            leaf priority-count {
                              type int32;
                              description
                                "Number of priorities.";
                            }
    
                            leaf affinity {
                              type uint32;
                              description
                                "Affinity bits";
                            }
    
                            leaf output-interface-id {
                              type uint32;
                              description
                                "Outgoing interface ID";
                            }
    
                            leaf input-interface-id {
                              type uint32;
                              description
                                "Incoming interface ID";
                            }
    
                            leaf dste-in-use {
                              type boolean;
                              description
                                "A DS-TE Allocation Model in use";
                            }
    
                            leaf dste-allocation-model-id {
                              type Igpte-lib-bw-model;
                              description
                                "DS-TE Allocation Model ID";
                            }
    
                            leaf number-of-optional-tl-vs {
                              type uint8;
                              description
                                "Number of Optional TLVs";
                            }
    
                            list mplste-link-opt-tlv {
                              description
                                "List of Optional TLVs";
                              leaf mplste-link-opt-tlv-type {
                                type Mpls-te-opt-tlv;
                                description
                                  "Type of Opt TLV";
                              }
    
                              leaf mplste-link-opt-tlv-len {
                                type uint16;
                                description
                                  "Length of Opt TLV";
                              }
    
                              list mplste-link-opt-tlv-value {
                                description
                                  "Value of Opt TLV";
                                container bctlv-value {
                                  when
                                    "../opaque-tlv-type = 'mpls-te-opt-tlv-type-bc'" {
                                    description
                                      "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_BC'";
                                  }
                                  description
                                    "Value of Bandwidth Constraints TLV";
                                  leaf model-id {
                                    type uint8;
                                    description
                                      "Allocation Model ID";
                                  }
    
                                  leaf num-b-cs {
                                    type uint32;
                                    description
                                      "Number of BC TLVs";
                                  }
    
                                  list mplste-link-bc-bandwidth {
                                    description
                                      "Value of BC TLV";
                                    leaf entry {
                                      type uint64;
                                      description
                                        "Value of BC TLV";
                                    }
                                  }  // list mplste-link-bc-bandwidth
                                }  // container bctlv-value
    
                                container srlgtlv-value {
                                  when
                                    "../opaque-tlv-type = 'mpls-te-opt-tlv-type-srlg'" {
                                    description
                                      "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_SRLG'";
                                  }
                                  description
                                    "Value of SRLG TLV";
                                  leaf srlg-len {
                                    type uint32;
                                    description
                                      "Length of SRLG TLV";
                                  }
    
                                  leaf num-srl-gs {
                                    type uint32;
                                    description
                                      "Number of SRLG TLVs";
                                  }
    
                                  list mplste-link-srlg-data {
                                    description
                                      "Value of SRLG TLV";
                                    leaf entry {
                                      type uint32;
                                      description
                                        "Value of SRLG TLV";
                                    }
                                  }  // list mplste-link-srlg-data
                                }  // container srlgtlv-value
    
                                container ixcdtlv-value {
                                  when
                                    "../opaque-tlv-type = 'mpls-te-opt-tlv-type-ixcd'" {
                                    description
                                      "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_IXCD'";
                                  }
                                  description
                                    "Value of IXCD TLV";
                                  container ixcd-switching-cap-type {
                                    description
                                      "Switching Cap type";
                                    container ixcdpsc-info {
                                      when
                                        "../switching-cap-type = 'rrr-proto-l-switch-cap-psc4'" {
                                        description
                                          "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_PSC4'";
                                      }
                                      description
                                        "IXCD PSC information";
                                      leaf min-lsp-bandwidth {
                                        type uint64;
                                        description
                                          "Min LSP bandwidth";
                                      }
    
                                      leaf psc-interface-mtu {
                                        type uint16;
                                        description
                                          " Interface MTU";
                                      }
                                    }  // container ixcdpsc-info
    
                                    container ixcdbw-sub-tlv {
                                      when
                                        "../switching-cap-type = 'rrr-proto-l-switch-cap-otn-tdm'" {
                                        description
                                          "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_OTN_TDM'";
                                      }
                                      description
                                        "Sub TLVs";
                                      list arr-bw-sub-tlv {
                                        description
                                          "Array of sub tlvs";
                                        container bw-sub-tlv-value {
                                          description
                                            "Value of BW Sub TLV";
                                          container fixed-bw-sub-tlv-value {
                                            when
                                              "../ixcdbw-sub-tlv-type = '1'" {
                                              description
                                                "../IXCDBWSubTLVType = '1'";
                                            }
                                            description
                                              "Value of Fixed Sub TLV";
                                            container fixed-sub-tlv-value {
                                              description
                                                "Value of Fixed Sub TLV";
                                              leaf signal-type {
                                                type uint8;
                                                description
                                                  "Signal Type value";
                                              }
    
                                              leaf num-stages {
                                                type uint8;
                                                description
                                                  "Number of stages";
                                              }
    
                                              leaf tbit {
                                                type uint8;
                                                description
                                                  "T Bit";
                                              }
    
                                              leaf sbit {
                                                type uint8;
                                                description
                                                  "S Bit";
                                              }
    
                                              leaf tsg {
                                                type uint8;
                                                description
                                                  "TSG";
                                              }
    
                                              leaf res {
                                                type uint8;
                                                description
                                                  "Res";
                                              }
    
                                              leaf priority-bit0 {
                                                type uint8;
                                                description
                                                  "Priority 0";
                                              }
    
                                              leaf priority-bit1 {
                                                type uint8;
                                                description
                                                  "Priority 1";
                                              }
    
                                              leaf priority-bit2 {
                                                type uint8;
                                                description
                                                  "Priority 2";
                                              }
    
                                              leaf priority-bit3 {
                                                type uint8;
                                                description
                                                  "Priority 3";
                                              }
    
                                              leaf priority-bit4 {
                                                type uint8;
                                                description
                                                  "Priority 4";
                                              }
    
                                              leaf priority-bit5 {
                                                type uint8;
                                                description
                                                  "Priority 5";
                                              }
    
                                              leaf priority-bit6 {
                                                type uint8;
                                                description
                                                  "Priority 6";
                                              }
    
                                              leaf priority-bit7 {
                                                type uint8;
                                                description
                                                  "Priority 7";
                                              }
    
                                              leaf stage {
                                                type yang:hex-string;
                                                description
                                                  "Array of Stages";
                                              }
                                            }  // container fixed-sub-tlv-value
    
                                            list unres-oduj-prio {
                                              max-elements
                                                8;
                                              description
                                                "Array of Unres Oduj Prio";
                                              leaf entry {
                                                type uint32;
                                                description
                                                  "Array of Unres Oduj Prio";
                                              }
                                            }  // list unres-oduj-prio
                                          }  // container fixed-bw-sub-tlv-value
    
                                          container flex-bw-sub-tlv-value {
                                            when
                                              "../ixcdbw-sub-tlv-type = '2'" {
                                              description
                                                "../IXCDBWSubTLVType = '2'";
                                            }
                                            description
                                              "Value of Flex Sub TLV";
                                            container flex-sub-tlv-value-common {
                                              description
                                                "Flex Sub TLV Value";
                                              leaf signal-type {
                                                type uint8;
                                                description
                                                  "Signal Type value";
                                              }
    
                                              leaf num-stages {
                                                type uint8;
                                                description
                                                  "Number of stages";
                                              }
    
                                              leaf tbit {
                                                type uint8;
                                                description
                                                  "T Bit";
                                              }
    
                                              leaf sbit {
                                                type uint8;
                                                description
                                                  "S Bit";
                                              }
    
                                              leaf tsg {
                                                type uint8;
                                                description
                                                  "TSG";
                                              }
    
                                              leaf res {
                                                type uint8;
                                                description
                                                  "Res";
                                              }
    
                                              leaf priority-bit0 {
                                                type uint8;
                                                description
                                                  "Priority 0";
                                              }
    
                                              leaf priority-bit1 {
                                                type uint8;
                                                description
                                                  "Priority 1";
                                              }
    
                                              leaf priority-bit2 {
                                                type uint8;
                                                description
                                                  "Priority 2";
                                              }
    
                                              leaf priority-bit3 {
                                                type uint8;
                                                description
                                                  "Priority 3";
                                              }
    
                                              leaf priority-bit4 {
                                                type uint8;
                                                description
                                                  "Priority 4";
                                              }
    
                                              leaf priority-bit5 {
                                                type uint8;
                                                description
                                                  "Priority 5";
                                              }
    
                                              leaf priority-bit6 {
                                                type uint8;
                                                description
                                                  "Priority 6";
                                              }
    
                                              leaf priority-bit7 {
                                                type uint8;
                                                description
                                                  "Priority 7";
                                              }
    
                                              leaf stage {
                                                type yang:hex-string;
                                                description
                                                  "Array of Stages";
                                              }
                                            }  // container flex-sub-tlv-value-common
    
                                            list unres-lspbw {
                                              max-elements
                                                8;
                                              description
                                                "Array of Unres LSP BW";
                                              leaf entry {
                                                type uint64;
                                                description
                                                  "Array of Unres LSP BW";
                                              }
                                            }  // list unres-lspbw
    
                                            list max-lspbw {
                                              max-elements
                                                8;
                                              description
                                                "Max LSP BW Array";
                                              leaf entry {
                                                type uint64;
                                                description
                                                  "Max LSP BW Array";
                                              }
                                            }  // list max-lspbw
                                          }  // container flex-bw-sub-tlv-value
    
                                          leaf ixcdbw-sub-tlv-type {
                                            type uint16;
                                            description
                                              "IXCDBWSubTLVType";
                                          }
                                        }  // container bw-sub-tlv-value
    
                                        leaf bw-sub-tlv-type {
                                          type uint16;
                                          description
                                            "Type of Sub TLV";
                                        }
    
                                        leaf bw-sub-tlv-length {
                                          type uint16;
                                          description
                                            "Length of BW Sub TLV";
                                        }
                                      }  // list arr-bw-sub-tlv
                                    }  // container ixcdbw-sub-tlv
    
                                    leaf switching-cap-type {
                                      type uint8;
                                      description
                                        "SwitchingCapType";
                                    }
                                  }  // container ixcd-switching-cap-type
    
                                  leaf switching-cap {
                                    type uint8;
                                    description
                                      "SCap";
                                  }
    
                                  leaf rile-len-code {
                                    type uint8;
                                    description
                                      "Rile LenCode";
                                  }
    
                                  leaf fixed-scsi-count {
                                    type uint32;
                                    description
                                      "Fixed SCSI count";
                                  }
    
                                  leaf flex-scsi-count {
                                    type uint32;
                                    description
                                      "Flexible SCSI count";
                                  }
    
                                  list max-lspbw {
                                    max-elements
                                      8;
                                    description
                                      "Max LSP bandwidth array";
                                    leaf entry {
                                      type int64;
                                      description
                                        "Max LSP bandwidth array";
                                    }
                                  }  // list max-lspbw
                                }  // container ixcdtlv-value
    
                                container unidtlv-value {
                                  when
                                    "../opaque-tlv-type = 'mpls-te-opt-tlv-type-uni-delay'" {
                                    description
                                      "../OpaqueTLVType =
    'MPLS_TE_OPT_TLV_TYPE_UNI_DELAY'";
                                  }
                                  description
                                    "Value of Uni Delay TLV";
                                  leaf uni-dir-delay {
                                    type uint32;
                                    description
                                      "Uni Dir Delay";
                                  }
                                }  // container unidtlv-value
    
                                leaf opaque-tlv-type {
                                  type Mpls-te-opt-tlv;
                                  description
                                    "OpaqueTLVType";
                                }
                              }  // list mplste-link-opt-tlv-value
                            }  // list mplste-link-opt-tlv
                          }  // list mpls-te-link
                        }  // list mpls-te-fragment
                      }  // list mpls-te-link
                    }  // container mpls-te-links
    
                    container mpls-te-fragments {
                      description
                        "MPLS TE Fragment information table";
                      list mpls-te-fragment {
                        key "area-id";
                        description
                          "MPLS TE Fragment";
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description "Area ID";
                        }
    
                        leaf mpls-te-router-id {
                          type inet:ipv4-address;
                          description
                            "OSPF MPLS-TE router ID";
                        }
    
                        leaf mpls-te-enabled {
                          type boolean;
                          description
                            "If true, MPLS-TE enabled in area";
                        }
    
                        leaf mpls-te-initialized {
                          type boolean;
                          description
                            "If true, MPLS-TE initialized in the area";
                        }
    
                        leaf mpls-te-area-id {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted decimal
    format";
                        }
    
                        leaf mpls-te-area-instance {
                          type uint32;
                          description
                            "Area information instance";
                        }
    
                        leaf mpls-te-router-address {
                          type inet:ipv4-address;
                          description
                            "MPLS-TE router address";
                        }
    
                        leaf mpls-te-next-fragment-id {
                          type uint32;
                          description
                            "Next MPLS-TE fragment ID";
                        }
    
                        leaf spacious-fragment {
                          type boolean;
                          description
                            "If true, fragment has space for next link";
                        }
    
                        list mpls-te-link {
                          description
                            "MPLS-TE links in the area";
                          container global-unreserve-bw-per-priority {
                            description
                              "Global pool unreserved bandwidth for each
    priority (bytes/s)";
                            list bw-per-priority {
                              max-elements 8;
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                              }
                            }  // list bw-per-priority
                          }  // container global-unreserve-bw-per-priority
    
                          container sub-pool-unreserve-bw-per-priority {
                            description
                              "Sub pool unreserved bandwidth for each priority
    (bytes/s)";
                            list bw-per-priority {
                              max-elements 8;
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                              }
                            }  // list bw-per-priority
                          }  // container sub-pool-unreserve-bw-per-priority
    
                          container link-protocol-priority-capability {
                            description
                              "Link protocol and protocol priority capability
    details";
                            leaf link-protocol-capability {
                              type uint8;
                              description
                                "Protocol capability value of the link";
                            }
    
                            leaf link-protocol-priority {
                              type uint8;
                              description
                                "Protocol priority value of the link";
                            }
                          }  // container link-protocol-priority-capability
    
                          container link-sw-capability {
                            description
                              "Link switching capability";
                            leaf link-switching-capability {
                              type uint8;
                              description
                                "Link Switching Capability value";
                            }
    
                            leaf link-encoding {
                              type uint8;
                              description
                                "Link Encoding value";
                            }
    
                            leaf minimum-lsp-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Minimum LSP bandwidth (bytes/s)";
                            }
    
                            leaf link-mtu {
                              type uint16;
                              units "byte";
                              description
                                "Link MTU size (bytes)";
                            }
    
                            list maximum-lsp-bw-per-priority {
                              max-elements 8;
                              description
                                "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                              }
                            }  // list maximum-lsp-bw-per-priority
                          }  // container link-sw-capability
    
                          container extended-admin-group-list {
                            description
                              "Extended Admin Group";
                            leaf extended-admin-size {
                              type uint32;
                              description
                                "Size of the extended admin group";
                            }
    
                            list ext-admin-data {
                              description
                                "Value of Extended Admin Group";
                              leaf entry {
                                type uint32;
                                description
                                  "Value of Extended Admin Group";
                              }
                            }  // list ext-admin-data
                          }  // container extended-admin-group-list
    
                          leaf new-link {
                            type boolean;
                            description
                              "If true, Link is new";
                          }
    
                          leaf fragment-id {
                            type uint32;
                            description
                              "Fragment ID for this link";
                          }
    
                          leaf mpls-link-instance {
                            type uint32;
                            description
                              "Link instance";
                          }
    
                          leaf mpls-link-type {
                            type Link-subnet;
                            description
                              "Type of link";
                          }
    
                          leaf neighbor-link-id {
                            type inet:ipv4-address;
                            description
                              "Link ID of the neighbor";
                          }
    
                          leaf link-address {
                            type inet:ipv4-address;
                            description
                              "The local interface address";
                          }
    
                          leaf neighbor-ip-address {
                            type inet:ipv4-address;
                            description
                              "IP address of the neighbor";
                          }
    
                          leaf igp-metric {
                            type uint32;
                            description
                              "Link IGP metric";
                          }
    
                          leaf te-metric {
                            type uint32;
                            description
                              "Link TE metric";
                          }
    
                          leaf maximum-link-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link bandwidth (bytes/s)";
                          }
    
                          leaf maximum-link-reservable-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link global pool reservable bandwidth
    (bytes/s)";
                          }
    
                          leaf maximum-link-sub-reservable-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link subpool reservable bandwidth
    (bytes/s)";
                          }
    
                          leaf priority-count {
                            type int32;
                            description
                              "Number of priorities.";
                          }
    
                          leaf affinity {
                            type uint32;
                            description
                              "Affinity bits";
                          }
    
                          leaf output-interface-id {
                            type uint32;
                            description
                              "Outgoing interface ID";
                          }
    
                          leaf input-interface-id {
                            type uint32;
                            description
                              "Incoming interface ID";
                          }
    
                          leaf dste-in-use {
                            type boolean;
                            description
                              "A DS-TE Allocation Model in use";
                          }
    
                          leaf dste-allocation-model-id {
                            type Igpte-lib-bw-model;
                            description
                              "DS-TE Allocation Model ID";
                          }
    
                          leaf number-of-optional-tl-vs {
                            type uint8;
                            description
                              "Number of Optional TLVs";
                          }
    
                          list mplste-link-opt-tlv {
                            description
                              "List of Optional TLVs";
                            leaf mplste-link-opt-tlv-type {
                              type Mpls-te-opt-tlv;
                              description
                                "Type of Opt TLV";
                            }
    
                            leaf mplste-link-opt-tlv-len {
                              type uint16;
                              description
                                "Length of Opt TLV";
                            }
    
                            list mplste-link-opt-tlv-value {
                              description
                                "Value of Opt TLV";
                              container bctlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-bc'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_BC'";
                                }
                                description
                                  "Value of Bandwidth Constraints TLV";
                                leaf model-id {
                                  type uint8;
                                  description
                                    "Allocation Model ID";
                                }
    
                                leaf num-b-cs {
                                  type uint32;
                                  description
                                    "Number of BC TLVs";
                                }
    
                                list mplste-link-bc-bandwidth {
                                  description
                                    "Value of BC TLV";
                                  leaf entry {
                                    type uint64;
                                    description
                                      "Value of BC TLV";
                                  }
                                }  // list mplste-link-bc-bandwidth
                              }  // container bctlv-value
    
                              container srlgtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-srlg'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_SRLG'";
                                }
                                description
                                  "Value of SRLG TLV";
                                leaf srlg-len {
                                  type uint32;
                                  description
                                    "Length of SRLG TLV";
                                }
    
                                leaf num-srl-gs {
                                  type uint32;
                                  description
                                    "Number of SRLG TLVs";
                                }
    
                                list mplste-link-srlg-data {
                                  description
                                    "Value of SRLG TLV";
                                  leaf entry {
                                    type uint32;
                                    description
                                      "Value of SRLG TLV";
                                  }
                                }  // list mplste-link-srlg-data
                              }  // container srlgtlv-value
    
                              container ixcdtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-ixcd'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_IXCD'";
                                }
                                description
                                  "Value of IXCD TLV";
                                container ixcd-switching-cap-type {
                                  description
                                    "Switching Cap type";
                                  container ixcdpsc-info {
                                    when
                                      "../switching-cap-type = 'rrr-proto-l-switch-cap-psc4'" {
                                      description
                                        "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_PSC4'";
                                    }
                                    description
                                      "IXCD PSC information";
                                    leaf min-lsp-bandwidth {
                                      type uint64;
                                      description
                                        "Min LSP bandwidth";
                                    }
    
                                    leaf psc-interface-mtu {
                                      type uint16;
                                      description
                                        " Interface MTU";
                                    }
                                  }  // container ixcdpsc-info
    
                                  container ixcdbw-sub-tlv {
                                    when
                                      "../switching-cap-type = 'rrr-proto-l-switch-cap-otn-tdm'" {
                                      description
                                        "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_OTN_TDM'";
                                    }
                                    description
                                      "Sub TLVs";
                                    list arr-bw-sub-tlv {
                                      description
                                        "Array of sub tlvs";
                                      container bw-sub-tlv-value {
                                        description
                                          "Value of BW Sub TLV";
                                        container fixed-bw-sub-tlv-value {
                                          when
                                            "../ixcdbw-sub-tlv-type = '1'" {
                                            description
                                              "../IXCDBWSubTLVType = '1'";
                                          }
                                          description
                                            "Value of Fixed Sub TLV";
                                          container fixed-sub-tlv-value {
                                            description
                                              "Value of Fixed Sub TLV";
                                            leaf signal-type {
                                              type uint8;
                                              description
                                                "Signal Type value";
                                            }
    
                                            leaf num-stages {
                                              type uint8;
                                              description
                                                "Number of stages";
                                            }
    
                                            leaf tbit {
                                              type uint8;
                                              description
                                                "T Bit";
                                            }
    
                                            leaf sbit {
                                              type uint8;
                                              description
                                                "S Bit";
                                            }
    
                                            leaf tsg {
                                              type uint8;
                                              description
                                                "TSG";
                                            }
    
                                            leaf res {
                                              type uint8;
                                              description
                                                "Res";
                                            }
    
                                            leaf priority-bit0 {
                                              type uint8;
                                              description
                                                "Priority 0";
                                            }
    
                                            leaf priority-bit1 {
                                              type uint8;
                                              description
                                                "Priority 1";
                                            }
    
                                            leaf priority-bit2 {
                                              type uint8;
                                              description
                                                "Priority 2";
                                            }
    
                                            leaf priority-bit3 {
                                              type uint8;
                                              description
                                                "Priority 3";
                                            }
    
                                            leaf priority-bit4 {
                                              type uint8;
                                              description
                                                "Priority 4";
                                            }
    
                                            leaf priority-bit5 {
                                              type uint8;
                                              description
                                                "Priority 5";
                                            }
    
                                            leaf priority-bit6 {
                                              type uint8;
                                              description
                                                "Priority 6";
                                            }
    
                                            leaf priority-bit7 {
                                              type uint8;
                                              description
                                                "Priority 7";
                                            }
    
                                            leaf stage {
                                              type yang:hex-string;
                                              description
                                                "Array of Stages";
                                            }
                                          }  // container fixed-sub-tlv-value
    
                                          list unres-oduj-prio {
                                            max-elements
                                              8;
                                            description
                                              "Array of Unres Oduj Prio";
                                            leaf entry {
                                              type uint32;
                                              description
                                                "Array of Unres Oduj Prio";
                                            }
                                          }  // list unres-oduj-prio
                                        }  // container fixed-bw-sub-tlv-value
    
                                        container flex-bw-sub-tlv-value {
                                          when
                                            "../ixcdbw-sub-tlv-type = '2'" {
                                            description
                                              "../IXCDBWSubTLVType = '2'";
                                          }
                                          description
                                            "Value of Flex Sub TLV";
                                          container flex-sub-tlv-value-common {
                                            description
                                              "Flex Sub TLV Value";
                                            leaf signal-type {
                                              type uint8;
                                              description
                                                "Signal Type value";
                                            }
    
                                            leaf num-stages {
                                              type uint8;
                                              description
                                                "Number of stages";
                                            }
    
                                            leaf tbit {
                                              type uint8;
                                              description
                                                "T Bit";
                                            }
    
                                            leaf sbit {
                                              type uint8;
                                              description
                                                "S Bit";
                                            }
    
                                            leaf tsg {
                                              type uint8;
                                              description
                                                "TSG";
                                            }
    
                                            leaf res {
                                              type uint8;
                                              description
                                                "Res";
                                            }
    
                                            leaf priority-bit0 {
                                              type uint8;
                                              description
                                                "Priority 0";
                                            }
    
                                            leaf priority-bit1 {
                                              type uint8;
                                              description
                                                "Priority 1";
                                            }
    
                                            leaf priority-bit2 {
                                              type uint8;
                                              description
                                                "Priority 2";
                                            }
    
                                            leaf priority-bit3 {
                                              type uint8;
                                              description
                                                "Priority 3";
                                            }
    
                                            leaf priority-bit4 {
                                              type uint8;
                                              description
                                                "Priority 4";
                                            }
    
                                            leaf priority-bit5 {
                                              type uint8;
                                              description
                                                "Priority 5";
                                            }
    
                                            leaf priority-bit6 {
                                              type uint8;
                                              description
                                                "Priority 6";
                                            }
    
                                            leaf priority-bit7 {
                                              type uint8;
                                              description
                                                "Priority 7";
                                            }
    
                                            leaf stage {
                                              type yang:hex-string;
                                              description
                                                "Array of Stages";
                                            }
                                          }  // container flex-sub-tlv-value-common
    
                                          list unres-lspbw {
                                            max-elements
                                              8;
                                            description
                                              "Array of Unres LSP BW";
                                            leaf entry {
                                              type uint64;
                                              description
                                                "Array of Unres LSP BW";
                                            }
                                          }  // list unres-lspbw
    
                                          list max-lspbw {
                                            max-elements
                                              8;
                                            description
                                              "Max LSP BW Array";
                                            leaf entry {
                                              type uint64;
                                              description
                                                "Max LSP BW Array";
                                            }
                                          }  // list max-lspbw
                                        }  // container flex-bw-sub-tlv-value
    
                                        leaf ixcdbw-sub-tlv-type {
                                          type uint16;
                                          description
                                            "IXCDBWSubTLVType";
                                        }
                                      }  // container bw-sub-tlv-value
    
                                      leaf bw-sub-tlv-type {
                                        type uint16;
                                        description
                                          "Type of Sub TLV";
                                      }
    
                                      leaf bw-sub-tlv-length {
                                        type uint16;
                                        description
                                          "Length of BW Sub TLV";
                                      }
                                    }  // list arr-bw-sub-tlv
                                  }  // container ixcdbw-sub-tlv
    
                                  leaf switching-cap-type {
                                    type uint8;
                                    description
                                      "SwitchingCapType";
                                  }
                                }  // container ixcd-switching-cap-type
    
                                leaf switching-cap {
                                  type uint8;
                                  description
                                    "SCap";
                                }
    
                                leaf rile-len-code {
                                  type uint8;
                                  description
                                    "Rile LenCode";
                                }
    
                                leaf fixed-scsi-count {
                                  type uint32;
                                  description
                                    "Fixed SCSI count";
                                }
    
                                leaf flex-scsi-count {
                                  type uint32;
                                  description
                                    "Flexible SCSI count";
                                }
    
                                list max-lspbw {
                                  max-elements
                                    8;
                                  description
                                    "Max LSP bandwidth array";
                                  leaf entry {
                                    type int64;
                                    description
                                      "Max LSP bandwidth array";
                                  }
                                }  // list max-lspbw
                              }  // container ixcdtlv-value
    
                              container unidtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-uni-delay'" {
                                  description
                                    "../OpaqueTLVType =
    'MPLS_TE_OPT_TLV_TYPE_UNI_DELAY'";
                                }
                                description
                                  "Value of Uni Delay TLV";
                                leaf uni-dir-delay {
                                  type uint32;
                                  description
                                    "Uni Dir Delay";
                                }
                              }  // container unidtlv-value
    
                              leaf opaque-tlv-type {
                                type Mpls-te-opt-tlv;
                                description
                                  "OpaqueTLVType";
                              }
                            }  // list mplste-link-opt-tlv-value
                          }  // list mplste-link-opt-tlv
                        }  // list mpls-te-link
    
                        list mpls-te-fragment {
                          description
                            "MPLS TE fragments in the area";
                          leaf fragment-instance {
                            type uint32;
                            description
                              "Fragment instance number";
                          }
    
                          leaf fragment-id {
                            type uint32;
                            description
                              "Fragment ID value";
                          }
    
                          leaf dste-model-id {
                            type uint8;
                            description
                              "DS-TE Allocation Model ID";
                          }
    
                          leaf same-fragment-count {
                            type uint8;
                            description
                              "Number of fragment links which haven't changed
    since the last update";
                          }
    
                          list mpls-te-link {
                            description
                              "List of fragment links";
                            container global-unreserve-bw-per-priority {
                              description
                                "Global pool unreserved bandwidth for each
    priority (bytes/s)";
                              list bw-per-priority {
                                max-elements 8;
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                                leaf entry {
                                  type uint64;
                                  units "byte/s";
                                  description
                                    "Unreserved bandwidth for each priority (bytes/s)";
                                }
                              }  // list bw-per-priority
                            }  // container global-unreserve-bw-per-priority
    
                            container sub-pool-unreserve-bw-per-priority {
                              description
                                "Sub pool unreserved bandwidth for each priority
    (bytes/s)";
                              list bw-per-priority {
                                max-elements 8;
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                                leaf entry {
                                  type uint64;
                                  units "byte/s";
                                  description
                                    "Unreserved bandwidth for each priority (bytes/s)";
                                }
                              }  // list bw-per-priority
                            }  // container sub-pool-unreserve-bw-per-priority
    
                            container link-protocol-priority-capability {
                              description
                                "Link protocol and protocol priority capability
    details";
                              leaf link-protocol-capability {
                                type uint8;
                                description
                                  "Protocol capability value of the link";
                              }
    
                              leaf link-protocol-priority {
                                type uint8;
                                description
                                  "Protocol priority value of the link";
                              }
                            }  // container link-protocol-priority-capability
    
                            container link-sw-capability {
                              description
                                "Link switching capability";
                              leaf link-switching-capability {
                                type uint8;
                                description
                                  "Link Switching Capability value";
                              }
    
                              leaf link-encoding {
                                type uint8;
                                description
                                  "Link Encoding value";
                              }
    
                              leaf minimum-lsp-bw {
                                type uint64;
                                units "byte/s";
                                description
                                  "Minimum LSP bandwidth (bytes/s)";
                              }
    
                              leaf link-mtu {
                                type uint16;
                                units "byte";
                                description
                                  "Link MTU size (bytes)";
                              }
    
                              list maximum-lsp-bw-per-priority {
                                max-elements 8;
                                description
                                  "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                                leaf entry {
                                  type uint64;
                                  units "byte/s";
                                  description
                                    "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                                }
                              }  // list maximum-lsp-bw-per-priority
                            }  // container link-sw-capability
    
                            container extended-admin-group-list {
                              description
                                "Extended Admin Group";
                              leaf extended-admin-size {
                                type uint32;
                                description
                                  "Size of the extended admin group";
                              }
    
                              list ext-admin-data {
                                description
                                  "Value of Extended Admin Group";
                                leaf entry {
                                  type uint32;
                                  description
                                    "Value of Extended Admin Group";
                                }
                              }  // list ext-admin-data
                            }  // container extended-admin-group-list
    
                            leaf new-link {
                              type boolean;
                              description
                                "If true, Link is new";
                            }
    
                            leaf fragment-id {
                              type uint32;
                              description
                                "Fragment ID for this link";
                            }
    
                            leaf mpls-link-instance {
                              type uint32;
                              description
                                "Link instance";
                            }
    
                            leaf mpls-link-type {
                              type Link-subnet;
                              description
                                "Type of link";
                            }
    
                            leaf neighbor-link-id {
                              type inet:ipv4-address;
                              description
                                "Link ID of the neighbor";
                            }
    
                            leaf link-address {
                              type inet:ipv4-address;
                              description
                                "The local interface address";
                            }
    
                            leaf neighbor-ip-address {
                              type inet:ipv4-address;
                              description
                                "IP address of the neighbor";
                            }
    
                            leaf igp-metric {
                              type uint32;
                              description
                                "Link IGP metric";
                            }
    
                            leaf te-metric {
                              type uint32;
                              description
                                "Link TE metric";
                            }
    
                            leaf maximum-link-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Maximum link bandwidth (bytes/s)";
                            }
    
                            leaf maximum-link-reservable-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Maximum link global pool reservable bandwidth
    (bytes/s)";
                            }
    
                            leaf maximum-link-sub-reservable-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Maximum link subpool reservable bandwidth
    (bytes/s)";
                            }
    
                            leaf priority-count {
                              type int32;
                              description
                                "Number of priorities.";
                            }
    
                            leaf affinity {
                              type uint32;
                              description
                                "Affinity bits";
                            }
    
                            leaf output-interface-id {
                              type uint32;
                              description
                                "Outgoing interface ID";
                            }
    
                            leaf input-interface-id {
                              type uint32;
                              description
                                "Incoming interface ID";
                            }
    
                            leaf dste-in-use {
                              type boolean;
                              description
                                "A DS-TE Allocation Model in use";
                            }
    
                            leaf dste-allocation-model-id {
                              type Igpte-lib-bw-model;
                              description
                                "DS-TE Allocation Model ID";
                            }
    
                            leaf number-of-optional-tl-vs {
                              type uint8;
                              description
                                "Number of Optional TLVs";
                            }
    
                            list mplste-link-opt-tlv {
                              description
                                "List of Optional TLVs";
                              leaf mplste-link-opt-tlv-type {
                                type Mpls-te-opt-tlv;
                                description
                                  "Type of Opt TLV";
                              }
    
                              leaf mplste-link-opt-tlv-len {
                                type uint16;
                                description
                                  "Length of Opt TLV";
                              }
    
                              list mplste-link-opt-tlv-value {
                                description
                                  "Value of Opt TLV";
                                container bctlv-value {
                                  when
                                    "../opaque-tlv-type = 'mpls-te-opt-tlv-type-bc'" {
                                    description
                                      "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_BC'";
                                  }
                                  description
                                    "Value of Bandwidth Constraints TLV";
                                  leaf model-id {
                                    type uint8;
                                    description
                                      "Allocation Model ID";
                                  }
    
                                  leaf num-b-cs {
                                    type uint32;
                                    description
                                      "Number of BC TLVs";
                                  }
    
                                  list mplste-link-bc-bandwidth {
                                    description
                                      "Value of BC TLV";
                                    leaf entry {
                                      type uint64;
                                      description
                                        "Value of BC TLV";
                                    }
                                  }  // list mplste-link-bc-bandwidth
                                }  // container bctlv-value
    
                                container srlgtlv-value {
                                  when
                                    "../opaque-tlv-type = 'mpls-te-opt-tlv-type-srlg'" {
                                    description
                                      "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_SRLG'";
                                  }
                                  description
                                    "Value of SRLG TLV";
                                  leaf srlg-len {
                                    type uint32;
                                    description
                                      "Length of SRLG TLV";
                                  }
    
                                  leaf num-srl-gs {
                                    type uint32;
                                    description
                                      "Number of SRLG TLVs";
                                  }
    
                                  list mplste-link-srlg-data {
                                    description
                                      "Value of SRLG TLV";
                                    leaf entry {
                                      type uint32;
                                      description
                                        "Value of SRLG TLV";
                                    }
                                  }  // list mplste-link-srlg-data
                                }  // container srlgtlv-value
    
                                container ixcdtlv-value {
                                  when
                                    "../opaque-tlv-type = 'mpls-te-opt-tlv-type-ixcd'" {
                                    description
                                      "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_IXCD'";
                                  }
                                  description
                                    "Value of IXCD TLV";
                                  container ixcd-switching-cap-type {
                                    description
                                      "Switching Cap type";
                                    container ixcdpsc-info {
                                      when
                                        "../switching-cap-type = 'rrr-proto-l-switch-cap-psc4'" {
                                        description
                                          "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_PSC4'";
                                      }
                                      description
                                        "IXCD PSC information";
                                      leaf min-lsp-bandwidth {
                                        type uint64;
                                        description
                                          "Min LSP bandwidth";
                                      }
    
                                      leaf psc-interface-mtu {
                                        type uint16;
                                        description
                                          " Interface MTU";
                                      }
                                    }  // container ixcdpsc-info
    
                                    container ixcdbw-sub-tlv {
                                      when
                                        "../switching-cap-type = 'rrr-proto-l-switch-cap-otn-tdm'" {
                                        description
                                          "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_OTN_TDM'";
                                      }
                                      description
                                        "Sub TLVs";
                                      list arr-bw-sub-tlv {
                                        description
                                          "Array of sub tlvs";
                                        container bw-sub-tlv-value {
                                          description
                                            "Value of BW Sub TLV";
                                          container fixed-bw-sub-tlv-value {
                                            when
                                              "../ixcdbw-sub-tlv-type = '1'" {
                                              description
                                                "../IXCDBWSubTLVType = '1'";
                                            }
                                            description
                                              "Value of Fixed Sub TLV";
                                            container fixed-sub-tlv-value {
                                              description
                                                "Value of Fixed Sub TLV";
                                              leaf signal-type {
                                                type uint8;
                                                description
                                                  "Signal Type value";
                                              }
    
                                              leaf num-stages {
                                                type uint8;
                                                description
                                                  "Number of stages";
                                              }
    
                                              leaf tbit {
                                                type uint8;
                                                description
                                                  "T Bit";
                                              }
    
                                              leaf sbit {
                                                type uint8;
                                                description
                                                  "S Bit";
                                              }
    
                                              leaf tsg {
                                                type uint8;
                                                description
                                                  "TSG";
                                              }
    
                                              leaf res {
                                                type uint8;
                                                description
                                                  "Res";
                                              }
    
                                              leaf priority-bit0 {
                                                type uint8;
                                                description
                                                  "Priority 0";
                                              }
    
                                              leaf priority-bit1 {
                                                type uint8;
                                                description
                                                  "Priority 1";
                                              }
    
                                              leaf priority-bit2 {
                                                type uint8;
                                                description
                                                  "Priority 2";
                                              }
    
                                              leaf priority-bit3 {
                                                type uint8;
                                                description
                                                  "Priority 3";
                                              }
    
                                              leaf priority-bit4 {
                                                type uint8;
                                                description
                                                  "Priority 4";
                                              }
    
                                              leaf priority-bit5 {
                                                type uint8;
                                                description
                                                  "Priority 5";
                                              }
    
                                              leaf priority-bit6 {
                                                type uint8;
                                                description
                                                  "Priority 6";
                                              }
    
                                              leaf priority-bit7 {
                                                type uint8;
                                                description
                                                  "Priority 7";
                                              }
    
                                              leaf stage {
                                                type yang:hex-string;
                                                description
                                                  "Array of Stages";
                                              }
                                            }  // container fixed-sub-tlv-value
    
                                            list unres-oduj-prio {
                                              max-elements
                                                8;
                                              description
                                                "Array of Unres Oduj Prio";
                                              leaf entry {
                                                type uint32;
                                                description
                                                  "Array of Unres Oduj Prio";
                                              }
                                            }  // list unres-oduj-prio
                                          }  // container fixed-bw-sub-tlv-value
    
                                          container flex-bw-sub-tlv-value {
                                            when
                                              "../ixcdbw-sub-tlv-type = '2'" {
                                              description
                                                "../IXCDBWSubTLVType = '2'";
                                            }
                                            description
                                              "Value of Flex Sub TLV";
                                            container flex-sub-tlv-value-common {
                                              description
                                                "Flex Sub TLV Value";
                                              leaf signal-type {
                                                type uint8;
                                                description
                                                  "Signal Type value";
                                              }
    
                                              leaf num-stages {
                                                type uint8;
                                                description
                                                  "Number of stages";
                                              }
    
                                              leaf tbit {
                                                type uint8;
                                                description
                                                  "T Bit";
                                              }
    
                                              leaf sbit {
                                                type uint8;
                                                description
                                                  "S Bit";
                                              }
    
                                              leaf tsg {
                                                type uint8;
                                                description
                                                  "TSG";
                                              }
    
                                              leaf res {
                                                type uint8;
                                                description
                                                  "Res";
                                              }
    
                                              leaf priority-bit0 {
                                                type uint8;
                                                description
                                                  "Priority 0";
                                              }
    
                                              leaf priority-bit1 {
                                                type uint8;
                                                description
                                                  "Priority 1";
                                              }
    
                                              leaf priority-bit2 {
                                                type uint8;
                                                description
                                                  "Priority 2";
                                              }
    
                                              leaf priority-bit3 {
                                                type uint8;
                                                description
                                                  "Priority 3";
                                              }
    
                                              leaf priority-bit4 {
                                                type uint8;
                                                description
                                                  "Priority 4";
                                              }
    
                                              leaf priority-bit5 {
                                                type uint8;
                                                description
                                                  "Priority 5";
                                              }
    
                                              leaf priority-bit6 {
                                                type uint8;
                                                description
                                                  "Priority 6";
                                              }
    
                                              leaf priority-bit7 {
                                                type uint8;
                                                description
                                                  "Priority 7";
                                              }
    
                                              leaf stage {
                                                type yang:hex-string;
                                                description
                                                  "Array of Stages";
                                              }
                                            }  // container flex-sub-tlv-value-common
    
                                            list unres-lspbw {
                                              max-elements
                                                8;
                                              description
                                                "Array of Unres LSP BW";
                                              leaf entry {
                                                type uint64;
                                                description
                                                  "Array of Unres LSP BW";
                                              }
                                            }  // list unres-lspbw
    
                                            list max-lspbw {
                                              max-elements
                                                8;
                                              description
                                                "Max LSP BW Array";
                                              leaf entry {
                                                type uint64;
                                                description
                                                  "Max LSP BW Array";
                                              }
                                            }  // list max-lspbw
                                          }  // container flex-bw-sub-tlv-value
    
                                          leaf ixcdbw-sub-tlv-type {
                                            type uint16;
                                            description
                                              "IXCDBWSubTLVType";
                                          }
                                        }  // container bw-sub-tlv-value
    
                                        leaf bw-sub-tlv-type {
                                          type uint16;
                                          description
                                            "Type of Sub TLV";
                                        }
    
                                        leaf bw-sub-tlv-length {
                                          type uint16;
                                          description
                                            "Length of BW Sub TLV";
                                        }
                                      }  // list arr-bw-sub-tlv
                                    }  // container ixcdbw-sub-tlv
    
                                    leaf switching-cap-type {
                                      type uint8;
                                      description
                                        "SwitchingCapType";
                                    }
                                  }  // container ixcd-switching-cap-type
    
                                  leaf switching-cap {
                                    type uint8;
                                    description
                                      "SCap";
                                  }
    
                                  leaf rile-len-code {
                                    type uint8;
                                    description
                                      "Rile LenCode";
                                  }
    
                                  leaf fixed-scsi-count {
                                    type uint32;
                                    description
                                      "Fixed SCSI count";
                                  }
    
                                  leaf flex-scsi-count {
                                    type uint32;
                                    description
                                      "Flexible SCSI count";
                                  }
    
                                  list max-lspbw {
                                    max-elements
                                      8;
                                    description
                                      "Max LSP bandwidth array";
                                    leaf entry {
                                      type int64;
                                      description
                                        "Max LSP bandwidth array";
                                    }
                                  }  // list max-lspbw
                                }  // container ixcdtlv-value
    
                                container unidtlv-value {
                                  when
                                    "../opaque-tlv-type = 'mpls-te-opt-tlv-type-uni-delay'" {
                                    description
                                      "../OpaqueTLVType =
    'MPLS_TE_OPT_TLV_TYPE_UNI_DELAY'";
                                  }
                                  description
                                    "Value of Uni Delay TLV";
                                  leaf uni-dir-delay {
                                    type uint32;
                                    description
                                      "Uni Dir Delay";
                                  }
                                }  // container unidtlv-value
    
                                leaf opaque-tlv-type {
                                  type Mpls-te-opt-tlv;
                                  description
                                    "OpaqueTLVType";
                                }
                              }  // list mplste-link-opt-tlv-value
                            }  // list mplste-link-opt-tlv
                          }  // list mpls-te-link
                        }  // list mpls-te-fragment
                      }  // list mpls-te-fragment
                    }  // container mpls-te-fragments
                  }  // container mpls-te
    
                  container statistics {
                    description
                      "Container for Statistics";
                    container spf-stats {
                      description
                        "OSPF SPF statistics";
                      container spf-header {
                        description
                          "SPF Header information";
                        leaf router-id {
                          type inet:ipv4-address;
                          description
                            "OSPF router identifier";
                        }
    
                        leaf spf-count {
                          type uint32;
                          description
                            "Count of SPFs in this area";
                        }
    
                        list area-summ {
                          description
                            "SPF details of the area";
                          leaf area-id {
                            type uint32;
                            description
                              "Area ID in OSPF";
                          }
    
                          leaf spf-count {
                            type uint32;
                            description
                              "Count of SPFs in this area";
                          }
                        }  // list area-summ
                      }  // container spf-header
    
                      list runtime {
                        description
                          "Time taken for the Intra-area SPF run";
                        container start-time {
                          description
                            "Time elapsed since last Intra SPF run";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container start-time
    
                        container duration {
                          description
                            "Time taken for the this Intra SPF calculation";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container duration
    
                        leaf area-id {
                          type string;
                          description
                            "Area ID in OSPF";
                        }
    
                        leaf change-flags {
                          type uint16;
                          description
                            "Flags indicating changes that triggered this SPF";
                        }
                      }  // list runtime
    
                      list summary-runtime {
                        description
                          "Time taken for the summary calculation";
                        container start-time {
                          description
                            "Time elapsed since last Partial SPF run";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container start-time
    
                        container duration {
                          description
                            "Time taken for the this Partial SPF calculation";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container duration
    
                        leaf advertising-router-id {
                          type uint32;
                          description
                            "Advertising Router ID of the changed LSA that
    triggered this partial SPF";
                        }
    
                        leaf destination-count {
                          type uint32;
                          description
                            "Number of LSAs changed by this advertising
    router that is being handled in this partial SPF";
                        }
    
                        leaf destination-address {
                          type uint32;
                          description
                            "Route prefix changed in this partial SPF";
                        }
                      }  // list summary-runtime
    
                      list external-runtime {
                        description
                          "Time taken for the external calculation";
                        container start-time {
                          description
                            "Time elapsed since last Partial SPF run";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container start-time
    
                        container duration {
                          description
                            "Time taken for the this Partial SPF calculation";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container duration
    
                        leaf advertising-router-id {
                          type uint32;
                          description
                            "Advertising Router ID of the changed LSA that
    triggered this partial SPF";
                        }
    
                        leaf destination-count {
                          type uint32;
                          description
                            "Number of LSAs changed by this advertising
    router that is being handled in this partial SPF";
                        }
    
                        leaf destination-address {
                          type uint32;
                          description
                            "Route prefix changed in this partial SPF";
                        }
                      }  // list external-runtime
    
                      list total-runtime {
                        description
                          "Time taken for entire route calculation";
                        container gbl-spf-time {
                          description
                            "Time taken for SPF";
                          leaf time-taken-dijkstra {
                            type uint32;
                            description
                              "Time taken for executing  Dijkstra Algorithm";
                          }
    
                          leaf time-taken-intra-prefix {
                            type uint32;
                            description
                              "Time taken for Intra Area Prefix calculations";
                          }
    
                          leaf time-taken-intra-prefix-deletion {
                            type uint32;
                            description
                              "Time taken for Intra Area Prefix deletions";
                          }
    
                          leaf time-taken-inter-prefix {
                            type uint32;
                            description
                              "Time taken for Inter Area Prefix calculations";
                          }
    
                          leaf time-taken-inter-prefix-deletion {
                            type uint32;
                            description
                              "Time taken for Inter Area Prefix deletions";
                          }
    
                          leaf time-taken-external-prefix {
                            type uint32;
                            description
                              "Time taken for Type 5/7 Prefix calculations";
                          }
    
                          leaf time-taken-external-prefix-deletion {
                            type uint32;
                            description
                              "Time taken for Type 5/7 Prefix deletions";
                          }
                        }  // container gbl-spf-time
    
                        leaf spf-start-time {
                          type uint32;
                          description
                            "Time when SPF started";
                        }
    
                        leaf lsa-change-count {
                          type int16;
                          description
                            "Count of changed LSAs";
                        }
    
                        leaf spf-number {
                          type uint8;
                          description "SPF ID";
                        }
    
                        list lsa-info {
                          max-elements 5;
                          description
                            "Details of changed LSAs";
                          leaf area-id {
                            type uint32;
                            description
                              "Area where LSA got changed";
                          }
    
                          leaf advertising-router {
                            type inet:ipv4-address;
                            description
                              "Advertising Router of the changed LSA";
                          }
    
                          leaf ls-id {
                            type inet:ipv4-address;
                            description
                              "LS ID of the changed LSA";
                          }
    
                          leaf ls-type {
                            type uint8;
                            description
                              "Type of the changed LSA";
                          }
    
                          leaf is-flush {
                            type boolean;
                            description
                              "Whether it is a flushed LSA";
                          }
                        }  // list lsa-info
    
                        list area-stat {
                          description
                            "SPF Statistics of this area";
                          container spf-time {
                            description
                              "Time taken for various stages of SPF";
                            leaf time-taken-dijkstra {
                              type uint32;
                              description
                                "Time taken for executing  Dijkstra Algorithm";
                            }
    
                            leaf time-taken-intra-prefix {
                              type uint32;
                              description
                                "Time taken for Intra Area Prefix calculations";
                            }
    
                            leaf time-taken-intra-prefix-deletion {
                              type uint32;
                              description
                                "Time taken for Intra Area Prefix deletions";
                            }
    
                            leaf time-taken-inter-prefix {
                              type uint32;
                              description
                                "Time taken for Inter Area Prefix calculations";
                            }
    
                            leaf time-taken-inter-prefix-deletion {
                              type uint32;
                              description
                                "Time taken for Inter Area Prefix deletions";
                            }
    
                            leaf time-taken-external-prefix {
                              type uint32;
                              description
                                "Time taken for Type 5/7 Prefix calculations";
                            }
    
                            leaf time-taken-external-prefix-deletion {
                              type uint32;
                              description
                                "Time taken for Type 5/7 Prefix deletions";
                            }
                          }  // container spf-time
    
                          leaf area-id {
                            type uint32;
                            description
                              "OSPF area id";
                          }
    
                          list lsa-type-count {
                            max-elements 7;
                            description
                              "Array of Count of LSA changes indexed by LSA
    
    Type";
                            leaf entry {
                              type uint32;
                              description
                                "Array of Count of LSA changes indexed by LSA
    
    Type";
                            }
                          }  // list lsa-type-count
                        }  // list area-stat
                      }  // list total-runtime
                    }  // container spf-stats
    
                    container rib-batch-stats {
                      description
                        "Stats concerning RIB route updates using the
    Batching API";
                      list priority-batch {
                        max-elements 8;
                        description
                          "RIB interaction statistics for various priority
    levels";
                        leaf batches-sent {
                          type uint32;
                          description
                            "Number of batches sent to RIB ";
                        }
    
                        leaf routes-sent {
                          type uint32;
                          description
                            "Number of routes updates sent to RIB ";
                        }
    
                        leaf routes-pending {
                          type uint32;
                          description
                            "Number of routes waiting to be sent to RIB";
                        }
    
                        leaf max-routes {
                          type uint32;
                          description
                            "Max number of routes in a batch";
                        }
    
                        leaf paths-sent {
                          type uint32;
                          description
                            "Number of paths (add+delete) sent to RIB";
                        }
    
                        leaf paths-pending {
                          type uint32;
                          description
                            "Number of paths waiting to be sent to RIB";
                        }
    
                        leaf paths-added {
                          type uint32;
                          description
                            "Number of paths added (pending+sent) to RIB ";
                        }
    
                        leaf path-add-errors {
                          type uint32;
                          description
                            "Number of paths add errors";
                        }
    
                        leaf path-deletions {
                          type uint32;
                          description
                            "Number of paths deletions (pending+sent) to RIB";
                        }
    
                        leaf path-deletion-errors {
                          type uint32;
                          description
                            "Number of paths deletion errors";
                        }
    
                        leaf lfas-pending {
                          type uint32;
                          description
                            "Number of LFAs waiting to be sent to RIB";
                        }
    
                        leaf lfas-added {
                          type uint32;
                          description
                            "Number of LFAs added to the RIB";
                        }
    
                        leaf lfa-deletions {
                          type uint32;
                          description
                            "Number of LFAs deleted from RIB";
                        }
    
                        leaf lfas-sent {
                          type uint32;
                          description
                            "Number of LFAs sent to the RIB";
                        }
    
                        leaf priority-level {
                          type string {
                            length "0..40";
                          }
                          description
                            "Priority Level Name string";
                        }
                      }  // list priority-batch
                    }  // container rib-batch-stats
    
                    container issu-stats {
                      description
                        "OSPF ISSU statistics";
                      container nsr-thread-scheduler-stats {
                        description
                          "NSR thread scheduler statistics information";
                        leaf nsr-pulse-quantum {
                          type int32;
                          description
                            "Number of events processed per pulse";
                        }
    
                        leaf nsr-events-pending {
                          type uint32;
                          description
                            "Total events pending processing across all
    priority buckets";
                        }
    
                        leaf nsr-events-tx {
                          type uint64;
                          description
                            "Number of events queued to the thread";
                        }
    
                        leaf nsr-events-rx {
                          type uint64;
                          description
                            "Number of events processed in the thread";
                        }
    
                        leaf nsr-bad-pulses-rx {
                          type uint64;
                          description
                            "Spurious pulses received in the the thread";
                        }
    
                        leaf nsr-good-pulses-rx {
                          type uint64;
                          description
                            "Good pulses received in the the thread";
                        }
    
                        leaf nsr-pulses-tx {
                          type uint64;
                          description
                            "Number of pulses sent to the thread";
                        }
    
                        leaf nsr-pulses-tx-fails {
                          type uint64;
                          description
                            "Number of pulse send fails";
                        }
    
                        list nsr-priority {
                          max-elements 3;
                          description
                            "Statistics for each priority queue";
                          leaf nsr-priority {
                            type uint32;
                            description
                              "Priority value";
                          }
    
                          leaf nsr-quantum {
                            type uint8;
                            description
                              "Number of events processed per pulse for this
    priority";
                          }
    
                          leaf nsr-remaining-quantum {
                            type uint8;
                            description
                              "Number of events remaining to be processed";
                          }
    
                          leaf nsr-events-in-queue {
                            type uint16;
                            description
                              "Number of events queued to the thread for this
    priority";
                          }
    
                          leaf nsr-max-events {
                            type uint16;
                            description
                              "Max cap on the number of pending events";
                          }
    
                          leaf nsr-peak-queue-length {
                            type uint16;
                            description
                              "Queue length of pending events peak value so far
    for this priority";
                          }
    
                          leaf nsr-events-queued {
                            type uint64;
                            description
                              "Number of events queued on this priority since
    start/clear";
                          }
    
                          leaf nsr-enqueue-fails {
                            type uint64;
                            description
                              "Number of enqueue failures since start/clear";
                          }
    
                          leaf nsr-events-dequeued {
                            type uint64;
                            description
                              "Number of events dequeued on this pri since
    start/clear";
                          }
                        }  // list nsr-priority
                      }  // container nsr-thread-scheduler-stats
    
                      container nsr-router-thread-scheduler-stats {
                        description
                          "NSR Router thread scheduler statistics
    information";
                        leaf nsr-pulse-quantum {
                          type int32;
                          description
                            "Number of events processed per pulse";
                        }
    
                        leaf nsr-events-pending {
                          type uint32;
                          description
                            "Total events pending processing across all
    priority buckets";
                        }
    
                        leaf nsr-events-tx {
                          type uint64;
                          description
                            "Number of events queued to the thread";
                        }
    
                        leaf nsr-events-rx {
                          type uint64;
                          description
                            "Number of events processed in the thread";
                        }
    
                        leaf nsr-bad-pulses-rx {
                          type uint64;
                          description
                            "Spurious pulses received in the the thread";
                        }
    
                        leaf nsr-good-pulses-rx {
                          type uint64;
                          description
                            "Good pulses received in the the thread";
                        }
    
                        leaf nsr-pulses-tx {
                          type uint64;
                          description
                            "Number of pulses sent to the thread";
                        }
    
                        leaf nsr-pulses-tx-fails {
                          type uint64;
                          description
                            "Number of pulse send fails";
                        }
    
                        list nsr-priority {
                          max-elements 3;
                          description
                            "Statistics for each priority queue";
                          leaf nsr-priority {
                            type uint32;
                            description
                              "Priority value";
                          }
    
                          leaf nsr-quantum {
                            type uint8;
                            description
                              "Number of events processed per pulse for this
    priority";
                          }
    
                          leaf nsr-remaining-quantum {
                            type uint8;
                            description
                              "Number of events remaining to be processed";
                          }
    
                          leaf nsr-events-in-queue {
                            type uint16;
                            description
                              "Number of events queued to the thread for this
    priority";
                          }
    
                          leaf nsr-max-events {
                            type uint16;
                            description
                              "Max cap on the number of pending events";
                          }
    
                          leaf nsr-peak-queue-length {
                            type uint16;
                            description
                              "Queue length of pending events peak value so far
    for this priority";
                          }
    
                          leaf nsr-events-queued {
                            type uint64;
                            description
                              "Number of events queued on this priority since
    start/clear";
                          }
    
                          leaf nsr-enqueue-fails {
                            type uint64;
                            description
                              "Number of enqueue failures since start/clear";
                          }
    
                          leaf nsr-events-dequeued {
                            type uint64;
                            description
                              "Number of events dequeued on this pri since
    start/clear";
                          }
                        }  // list nsr-priority
                      }  // container nsr-router-thread-scheduler-stats
    
                      leaf nsr-revision {
                        type int32;
                        description
                          "NSR Revision number";
                      }
    
                      leaf nsr-fsm-state {
                        type int32;
                        description
                          "Current state of NSR";
                      }
    
                      leaf nsr-version {
                        type uint32;
                        description
                          "Version Number of NSR";
                      }
    
                      leaf nsr-node-id {
                        type uint32;
                        description "Node ID";
                      }
    
                      leaf nsr-peer-version {
                        type uint32;
                        description
                          "Peer version of NSR";
                      }
    
                      leaf nsr-peer-node-id {
                        type uint32;
                        description
                          "Node ID of the peer";
                      }
    
                      leaf nsr-peer-end-point-length {
                        type uint32;
                        description
                          "Length of the endpoint retrieved from peer";
                      }
    
                      leaf nsr-peer-end-point-version {
                        type uint32;
                        description
                          "Version of the endpoint retrieved from peer";
                      }
    
                      leaf nsr-local-end-point-length {
                        type uint32;
                        description
                          "Length of local endpoint";
                      }
    
                      leaf nsr-local-end-point-version {
                        type uint32;
                        description
                          "Version of local endpoint";
                      }
    
                      leaf nsr-fabric-mtu {
                        type uint32;
                        description
                          "MTU of Fabric";
                      }
    
                      leaf nsr-neighbor-qad-queue-id {
                        type uint32;
                        description
                          "QAD Queue ID for Neighbor information";
                      }
    
                      leaf nsr-lsa-qad-queue-id {
                        type uint32;
                        description
                          "QAD Queue ID for LSA information";
                      }
    
                      leaf nsr-neighbor-qad-meta-data-count {
                        type uint32;
                        description
                          "QAD metadata Information for Neighbor";
                      }
    
                      leaf nsr-lsa-qad-meta-data-count {
                        type uint32;
                        description
                          "QAD metadata Information for LSA";
                      }
    
                      leaf nsr-neighbor-init-sync-pend-count {
                        type int32;
                        description
                          "Pending message count for Initial neighbor
    synchronization";
                      }
    
                      leaf nsr-lsa-init-sync-pend-count {
                        type int32;
                        description
                          "Pending message count for Initial lsa
    synchronization";
                      }
    
                      leaf nsr-neighbor-seq-no {
                        type uint32;
                        description
                          "Sequence number used for neighbor
    synchronization";
                      }
    
                      leaf nsr-interface-seq-no {
                        type uint32;
                        description
                          "Sequence number used for interface
    synchronization";
                      }
    
                      leaf nsr-timerquantum {
                        type int32;
                        description
                          "Number of expired timers to process per event
    manager call";
                      }
    
                      leaf nsr-peer-end-point-handle {
                        type uint64;
                        description
                          "Remote endpoint handle";
                      }
    
                      leaf nsr-local-endpoint-handle {
                        type uint64;
                        description
                          "Handle/id of local endpoint";
                      }
    
                      leaf nsr-connect-attempts {
                        type uint64;
                        description
                          "Count of LWN connection attempts";
                      }
    
                      leaf nsr-connect-failures {
                        type uint64;
                        description
                          "Count of LWN connection failures";
                      }
    
                      leaf nsr-open-event-count {
                        type uint64;
                        description
                          "Count of LWN connection open events";
                      }
    
                      leaf nsr-close-event-count {
                        type uint64;
                        description
                          "Count of LWN connection close events";
                      }
    
                      leaf nsr-error-event-count {
                        type uint64;
                        description
                          "Count of LWN connection error events";
                      }
    
                      leaf nsr-peer-end-points {
                        type yang:hex-string;
                        description
                          "Array of remote endpoints";
                      }
    
                      leaf nsr-local-end-points {
                        type yang:hex-string;
                        description
                          "Array of local endpoints";
                      }
    
                      list nsr-fsm-flag {
                        description
                          "Nsr Fsm Flags information";
                        leaf entry {
                          type Ospf-string-array;
                          description
                            "Nsr Fsm Flags information";
                        }
                      }  // list nsr-fsm-flag
    
                      list nsr-fsm-running-timer {
                        description
                          "Nsr Fsm Running Timers";
                        leaf entry {
                          type Ospf-string-array;
                          description
                            "Nsr Fsm Running Timers";
                        }
                      }  // list nsr-fsm-running-timer
    
                      list nsr-issu-milestone {
                        description
                          "Nsr Issu Milestones information";
                        leaf milestone-name {
                          type string;
                          description
                            "Name of the milestone achieved";
                        }
    
                        leaf milestone-status {
                          type string;
                          description
                            "Status of the milestone achieved";
                        }
                      }  // list nsr-issu-milestone
    
                      list nsr-err-history {
                        description
                          "Nsr Error History List information";
                        leaf nsr-revisionversion {
                          type uint32;
                          description
                            "Current Revision version of NSR";
                        }
    
                        leaf total-errors {
                          type int32;
                          description
                            "Total errors for this nsr revision version";
                        }
    
                        list nsr-error-info {
                          description
                            "List of erros";
                          container last-err-time {
                            description
                              "Time this error was last hit";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container last-err-time
    
                          leaf err-count {
                            type int32;
                            description
                              "Count this error hit during the Nsr Revision";
                          }
    
                          leaf err-info-string {
                            type string;
                            description
                              "Error Information";
                          }
                        }  // list nsr-error-info
                      }  // list nsr-err-history
                    }  // container issu-stats
    
                    container rib-lc-stats {
                      description
                        "OSPF RIB Linecard node information";
                      leaf node-count {
                        type uint8;
                        description
                          "Number of nodes";
                      }
    
                      list nodes {
                        max-elements 64;
                        description
                          "Array of RIB Node info";
                        leaf node-id {
                          type uint32;
                          description
                            "node ID of the Line Card";
                        }
    
                        leaf intf-count {
                          type uint16;
                          description
                            "Number of OSPF Interfaces";
                        }
    
                        leaf notif-count {
                          type uint8;
                          description
                            "RIB notification count";
                        }
    
                        leaf ugmerge {
                          type boolean;
                          description
                            "RIB UG merge state of the LC";
                        }
    
                        leaf node-death {
                          type boolean;
                          description
                            "RIB node death state of LC";
                        }
    
                        leaf rib-event {
                          type boolean;
                          description
                            "RIB event received for LC";
                        }
                      }  // list nodes
                    }  // container rib-lc-stats
    
                    container rib-thread-stats {
                      description
                        "OSPF RIB thread statistics";
                      container internal-work-queue {
                        description
                          "Router to RIB thread queue";
                        container rib-base-time {
                          description
                            "Base time stamp needed to calculate the current
    time ";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container rib-base-time
    
                        container spf-suspend-time-start {
                          description
                            "Last time SPF suspended start time";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container spf-suspend-time-start
    
                        container spf-suspend-time-stop {
                          description
                            "Last time SPF suspended Stop time";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container spf-suspend-time-stop
    
                        leaf is-thread-active {
                          type boolean;
                          description
                            "RIB thread active indicator";
                        }
    
                        leaf last-dequeue-time {
                          type uint64;
                          description
                            "Timestamp of last dequeue of RIB work queue";
                        }
    
                        leaf first-enqueue-time {
                          type uint64;
                          description
                            "Timestamp of first enqueue of RIB work queue";
                        }
    
                        leaf current-queue-length {
                          type int32;
                          description
                            "Work queue length at this instance";
                        }
    
                        leaf peak-queue-length {
                          type int32;
                          description
                            "Largest work queue length so far";
                        }
    
                        leaf total-queued-msg {
                          type uint32;
                          description
                            "Total number of queued messages";
                        }
    
                        leaf total-dqueued-msg {
                          type uint32;
                          description
                            "Total number of dequeued messages";
                        }
    
                        leaf rib-version {
                          type uint32;
                          description
                            "Rib version, indicating the number of times OSPF
    has connected with RIB. The value will be
    greater than 1 if any disconnect and reconnect
    happened.";
                        }
    
                        leaf rib-packets-sent {
                          type uint32;
                          description
                            "Total number of batches sent to RIB";
                        }
    
                        leaf rib-signals {
                          type uint32;
                          description
                            "Number of signals for RIB thread";
                        }
    
                        leaf rib-send-errors {
                          type uint32;
                          description
                            "Number of RIB batch send errors";
                        }
    
                        leaf rib-queue-errors {
                          type uint32;
                          description
                            "Number of RIB batch queueing errors";
                        }
    
                        leaf rib-prefix-limit-errors {
                          type uint32;
                          description
                            "Number of RIB batch prefix limit errors";
                        }
    
                        leaf rib-dequeue-errors {
                          type uint32;
                          description
                            "Number of RIB batch dequeueing errors";
                        }
    
                        leaf rib-empty-batches {
                          type uint32;
                          description
                            "Number of RIB of empty batches";
                        }
    
                        leaf rib-drops-before-sending {
                          type uint32;
                          description
                            "Number of RIB batches dropped before sending";
                        }
    
                        leaf rib-drops-after-sending {
                          type uint32;
                          description
                            "Number of RIB batches dropped after sending";
                        }
    
                        leaf rib-connection-drops {
                          type uint32;
                          description
                            "Number of RIB batches dropped";
                        }
    
                        leaf rib-forward-references {
                          type uint32;
                          description
                            "Number of forward tbl. references";
                        }
    
                        leaf priority-level {
                          type string {
                            length "0..40";
                          }
                          description
                            "Priority of these batches";
                        }
    
                        leaf rib-base-clock {
                          type uint64;
                          description
                            "Base clock stamp needed to calculate the current
    time";
                        }
    
                        leaf spf-suspend-count {
                          type uint32;
                          description
                            "Number of times SPF suspended";
                        }
                      }  // container internal-work-queue
    
                      list rib-queue {
                        max-elements 8;
                        description
                          "Primary work queues";
                        container rib-base-time {
                          description
                            "Base time stamp needed to calculate the current
    time ";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container rib-base-time
    
                        container spf-suspend-time-start {
                          description
                            "Last time SPF suspended start time";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container spf-suspend-time-start
    
                        container spf-suspend-time-stop {
                          description
                            "Last time SPF suspended Stop time";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container spf-suspend-time-stop
    
                        leaf is-thread-active {
                          type boolean;
                          description
                            "RIB thread active indicator";
                        }
    
                        leaf last-dequeue-time {
                          type uint64;
                          description
                            "Timestamp of last dequeue of RIB work queue";
                        }
    
                        leaf first-enqueue-time {
                          type uint64;
                          description
                            "Timestamp of first enqueue of RIB work queue";
                        }
    
                        leaf current-queue-length {
                          type int32;
                          description
                            "Work queue length at this instance";
                        }
    
                        leaf peak-queue-length {
                          type int32;
                          description
                            "Largest work queue length so far";
                        }
    
                        leaf total-queued-msg {
                          type uint32;
                          description
                            "Total number of queued messages";
                        }
    
                        leaf total-dqueued-msg {
                          type uint32;
                          description
                            "Total number of dequeued messages";
                        }
    
                        leaf rib-version {
                          type uint32;
                          description
                            "Rib version, indicating the number of times OSPF
    has connected with RIB. The value will be
    greater than 1 if any disconnect and reconnect
    happened.";
                        }
    
                        leaf rib-packets-sent {
                          type uint32;
                          description
                            "Total number of batches sent to RIB";
                        }
    
                        leaf rib-signals {
                          type uint32;
                          description
                            "Number of signals for RIB thread";
                        }
    
                        leaf rib-send-errors {
                          type uint32;
                          description
                            "Number of RIB batch send errors";
                        }
    
                        leaf rib-queue-errors {
                          type uint32;
                          description
                            "Number of RIB batch queueing errors";
                        }
    
                        leaf rib-prefix-limit-errors {
                          type uint32;
                          description
                            "Number of RIB batch prefix limit errors";
                        }
    
                        leaf rib-dequeue-errors {
                          type uint32;
                          description
                            "Number of RIB batch dequeueing errors";
                        }
    
                        leaf rib-empty-batches {
                          type uint32;
                          description
                            "Number of RIB of empty batches";
                        }
    
                        leaf rib-drops-before-sending {
                          type uint32;
                          description
                            "Number of RIB batches dropped before sending";
                        }
    
                        leaf rib-drops-after-sending {
                          type uint32;
                          description
                            "Number of RIB batches dropped after sending";
                        }
    
                        leaf rib-connection-drops {
                          type uint32;
                          description
                            "Number of RIB batches dropped";
                        }
    
                        leaf rib-forward-references {
                          type uint32;
                          description
                            "Number of forward tbl. references";
                        }
    
                        leaf priority-level {
                          type string {
                            length "0..40";
                          }
                          description
                            "Priority of these batches";
                        }
    
                        leaf rib-base-clock {
                          type uint64;
                          description
                            "Base clock stamp needed to calculate the current
    time";
                        }
    
                        leaf spf-suspend-count {
                          type uint32;
                          description
                            "Number of times SPF suspended";
                        }
                      }  // list rib-queue
                    }  // container rib-thread-stats
    
                    container nsr-pl-stats {
                      description
                        "OSPF NSR packet library statistics";
                      list npl-priority {
                        max-elements 2;
                        description
                          "NPL Library statistics for each priority level";
                        leaf prio-queue-level {
                          type string {
                            length "0..32";
                          }
                          description
                            "npl priority queue level";
                        }
    
                        list num-sent {
                          max-elements 5;
                          description
                            "Total sent";
                          leaf entry {
                            type uint64;
                            description
                              "Total sent";
                          }
                        }  // list num-sent
    
                        list num-recv {
                          max-elements 6;
                          description
                            "Total recvd";
                          leaf entry {
                            type uint64;
                            description
                              "Total recvd";
                          }
                        }  // list num-recv
    
                        list num-sent-drop {
                          max-elements 5;
                          description
                            "Sent Error/drops";
                          list nsr-pl-send-drop-array {
                            max-elements 7;
                            description
                              "nsr pl send drop array";
                            leaf entry {
                              type uint32;
                              description
                                "entry";
                            }
                          }  // list nsr-pl-send-drop-array
                        }  // list num-sent-drop
    
                        list num-recv-drop {
                          max-elements 6;
                          description
                            "Recv Errors/drops";
                          list nsr-pl-recv-drop-array {
                            max-elements 16;
                            description
                              "nsr pl recv drop array";
                            leaf entry {
                              type uint32;
                              description
                                "entry";
                            }
                          }  // list nsr-pl-recv-drop-array
                        }  // list num-recv-drop
                      }  // list npl-priority
                    }  // container nsr-pl-stats
    
                    container nsr-stats {
                      description
                        "OSPF NSR thread statistics";
                      container nsr-thread-scheduler-stats {
                        description
                          "NSR thread scheduler statistics information";
                        leaf nsr-pulse-quantum {
                          type int32;
                          description
                            "Number of events processed per pulse";
                        }
    
                        leaf nsr-events-pending {
                          type uint32;
                          description
                            "Total events pending processing across all
    priority buckets";
                        }
    
                        leaf nsr-events-tx {
                          type uint64;
                          description
                            "Number of events queued to the thread";
                        }
    
                        leaf nsr-events-rx {
                          type uint64;
                          description
                            "Number of events processed in the thread";
                        }
    
                        leaf nsr-bad-pulses-rx {
                          type uint64;
                          description
                            "Spurious pulses received in the the thread";
                        }
    
                        leaf nsr-good-pulses-rx {
                          type uint64;
                          description
                            "Good pulses received in the the thread";
                        }
    
                        leaf nsr-pulses-tx {
                          type uint64;
                          description
                            "Number of pulses sent to the thread";
                        }
    
                        leaf nsr-pulses-tx-fails {
                          type uint64;
                          description
                            "Number of pulse send fails";
                        }
    
                        list nsr-priority {
                          max-elements 3;
                          description
                            "Statistics for each priority queue";
                          leaf nsr-priority {
                            type uint32;
                            description
                              "Priority value";
                          }
    
                          leaf nsr-quantum {
                            type uint8;
                            description
                              "Number of events processed per pulse for this
    priority";
                          }
    
                          leaf nsr-remaining-quantum {
                            type uint8;
                            description
                              "Number of events remaining to be processed";
                          }
    
                          leaf nsr-events-in-queue {
                            type uint16;
                            description
                              "Number of events queued to the thread for this
    priority";
                          }
    
                          leaf nsr-max-events {
                            type uint16;
                            description
                              "Max cap on the number of pending events";
                          }
    
                          leaf nsr-peak-queue-length {
                            type uint16;
                            description
                              "Queue length of pending events peak value so far
    for this priority";
                          }
    
                          leaf nsr-events-queued {
                            type uint64;
                            description
                              "Number of events queued on this priority since
    start/clear";
                          }
    
                          leaf nsr-enqueue-fails {
                            type uint64;
                            description
                              "Number of enqueue failures since start/clear";
                          }
    
                          leaf nsr-events-dequeued {
                            type uint64;
                            description
                              "Number of events dequeued on this pri since
    start/clear";
                          }
                        }  // list nsr-priority
                      }  // container nsr-thread-scheduler-stats
    
                      container nsr-router-thread-scheduler-stats {
                        description
                          "NSR Router thread scheduler statistics
    information";
                        leaf nsr-pulse-quantum {
                          type int32;
                          description
                            "Number of events processed per pulse";
                        }
    
                        leaf nsr-events-pending {
                          type uint32;
                          description
                            "Total events pending processing across all
    priority buckets";
                        }
    
                        leaf nsr-events-tx {
                          type uint64;
                          description
                            "Number of events queued to the thread";
                        }
    
                        leaf nsr-events-rx {
                          type uint64;
                          description
                            "Number of events processed in the thread";
                        }
    
                        leaf nsr-bad-pulses-rx {
                          type uint64;
                          description
                            "Spurious pulses received in the the thread";
                        }
    
                        leaf nsr-good-pulses-rx {
                          type uint64;
                          description
                            "Good pulses received in the the thread";
                        }
    
                        leaf nsr-pulses-tx {
                          type uint64;
                          description
                            "Number of pulses sent to the thread";
                        }
    
                        leaf nsr-pulses-tx-fails {
                          type uint64;
                          description
                            "Number of pulse send fails";
                        }
    
                        list nsr-priority {
                          max-elements 3;
                          description
                            "Statistics for each priority queue";
                          leaf nsr-priority {
                            type uint32;
                            description
                              "Priority value";
                          }
    
                          leaf nsr-quantum {
                            type uint8;
                            description
                              "Number of events processed per pulse for this
    priority";
                          }
    
                          leaf nsr-remaining-quantum {
                            type uint8;
                            description
                              "Number of events remaining to be processed";
                          }
    
                          leaf nsr-events-in-queue {
                            type uint16;
                            description
                              "Number of events queued to the thread for this
    priority";
                          }
    
                          leaf nsr-max-events {
                            type uint16;
                            description
                              "Max cap on the number of pending events";
                          }
    
                          leaf nsr-peak-queue-length {
                            type uint16;
                            description
                              "Queue length of pending events peak value so far
    for this priority";
                          }
    
                          leaf nsr-events-queued {
                            type uint64;
                            description
                              "Number of events queued on this priority since
    start/clear";
                          }
    
                          leaf nsr-enqueue-fails {
                            type uint64;
                            description
                              "Number of enqueue failures since start/clear";
                          }
    
                          leaf nsr-events-dequeued {
                            type uint64;
                            description
                              "Number of events dequeued on this pri since
    start/clear";
                          }
                        }  // list nsr-priority
                      }  // container nsr-router-thread-scheduler-stats
    
                      leaf nsr-revision {
                        type int32;
                        description
                          "NSR Revision number";
                      }
    
                      leaf nsr-fsm-state {
                        type int32;
                        description
                          "Current state of NSR";
                      }
    
                      leaf nsr-version {
                        type uint32;
                        description
                          "Version Number of NSR";
                      }
    
                      leaf nsr-node-id {
                        type uint32;
                        description "Node ID";
                      }
    
                      leaf nsr-peer-version {
                        type uint32;
                        description
                          "Peer version of NSR";
                      }
    
                      leaf nsr-peer-node-id {
                        type uint32;
                        description
                          "Node ID of the peer";
                      }
    
                      leaf nsr-peer-end-point-length {
                        type uint32;
                        description
                          "Length of the endpoint retrieved from peer";
                      }
    
                      leaf nsr-peer-end-point-version {
                        type uint32;
                        description
                          "Version of the endpoint retrieved from peer";
                      }
    
                      leaf nsr-local-end-point-length {
                        type uint32;
                        description
                          "Length of local endpoint";
                      }
    
                      leaf nsr-local-end-point-version {
                        type uint32;
                        description
                          "Version of local endpoint";
                      }
    
                      leaf nsr-fabric-mtu {
                        type uint32;
                        description
                          "MTU of Fabric";
                      }
    
                      leaf nsr-neighbor-qad-queue-id {
                        type uint32;
                        description
                          "QAD Queue ID for Neighbor information";
                      }
    
                      leaf nsr-lsa-qad-queue-id {
                        type uint32;
                        description
                          "QAD Queue ID for LSA information";
                      }
    
                      leaf nsr-neighbor-qad-meta-data-count {
                        type uint32;
                        description
                          "QAD metadata Information for Neighbor";
                      }
    
                      leaf nsr-lsa-qad-meta-data-count {
                        type uint32;
                        description
                          "QAD metadata Information for LSA";
                      }
    
                      leaf nsr-neighbor-init-sync-pend-count {
                        type int32;
                        description
                          "Pending message count for Initial neighbor
    synchronization";
                      }
    
                      leaf nsr-lsa-init-sync-pend-count {
                        type int32;
                        description
                          "Pending message count for Initial lsa
    synchronization";
                      }
    
                      leaf nsr-neighbor-seq-no {
                        type uint32;
                        description
                          "Sequence number used for neighbor
    synchronization";
                      }
    
                      leaf nsr-interface-seq-no {
                        type uint32;
                        description
                          "Sequence number used for interface
    synchronization";
                      }
    
                      leaf nsr-timerquantum {
                        type int32;
                        description
                          "Number of expired timers to process per event
    manager call";
                      }
    
                      leaf nsr-peer-end-point-handle {
                        type uint64;
                        description
                          "Remote endpoint handle";
                      }
    
                      leaf nsr-local-endpoint-handle {
                        type uint64;
                        description
                          "Handle/id of local endpoint";
                      }
    
                      leaf nsr-connect-attempts {
                        type uint64;
                        description
                          "Count of LWN connection attempts";
                      }
    
                      leaf nsr-connect-failures {
                        type uint64;
                        description
                          "Count of LWN connection failures";
                      }
    
                      leaf nsr-open-event-count {
                        type uint64;
                        description
                          "Count of LWN connection open events";
                      }
    
                      leaf nsr-close-event-count {
                        type uint64;
                        description
                          "Count of LWN connection close events";
                      }
    
                      leaf nsr-error-event-count {
                        type uint64;
                        description
                          "Count of LWN connection error events";
                      }
    
                      leaf nsr-peer-end-points {
                        type yang:hex-string;
                        description
                          "Array of remote endpoints";
                      }
    
                      leaf nsr-local-end-points {
                        type yang:hex-string;
                        description
                          "Array of local endpoints";
                      }
    
                      list nsr-fsm-flag {
                        description
                          "Nsr Fsm Flags information";
                        leaf entry {
                          type Ospf-string-array;
                          description
                            "Nsr Fsm Flags information";
                        }
                      }  // list nsr-fsm-flag
    
                      list nsr-fsm-running-timer {
                        description
                          "Nsr Fsm Running Timers";
                        leaf entry {
                          type Ospf-string-array;
                          description
                            "Nsr Fsm Running Timers";
                        }
                      }  // list nsr-fsm-running-timer
    
                      list nsr-issu-milestone {
                        description
                          "Nsr Issu Milestones information";
                        leaf milestone-name {
                          type string;
                          description
                            "Name of the milestone achieved";
                        }
    
                        leaf milestone-status {
                          type string;
                          description
                            "Status of the milestone achieved";
                        }
                      }  // list nsr-issu-milestone
    
                      list nsr-err-history {
                        description
                          "Nsr Error History List information";
                        leaf nsr-revisionversion {
                          type uint32;
                          description
                            "Current Revision version of NSR";
                        }
    
                        leaf total-errors {
                          type int32;
                          description
                            "Total errors for this nsr revision version";
                        }
    
                        list nsr-error-info {
                          description
                            "List of erros";
                          container last-err-time {
                            description
                              "Time this error was last hit";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container last-err-time
    
                          leaf err-count {
                            type int32;
                            description
                              "Count this error hit during the Nsr Revision";
                          }
    
                          leaf err-info-string {
                            type string;
                            description
                              "Error Information";
                          }
                        }  // list nsr-error-info
                      }  // list nsr-err-history
                    }  // container nsr-stats
    
                    container frr-stats {
                      description
                        "OSPF fast-reroute statistics";
                      leaf fs-paths {
                        type uint32;
                        description
                          "Number of IPFRR paths";
                      }
    
                      leaf fs-paths-eligible {
                        type uint32;
                        description
                          "Number of paths enabled for protection";
                      }
    
                      leaf fs-paths-protected {
                        type uint32;
                        description
                          "Number of paths protected";
                      }
                    }  // container frr-stats
    
                    container te-stats {
                      description
                        "OSPF TE IO statistics";
                      leaf te-connected {
                        type boolean;
                        description
                          "Whether connection to TE is up or not";
                      }
    
                      leaf control-disconnects {
                        type uint32;
                        description
                          "Count of Control disconnects";
                      }
    
                      leaf te-disconnects {
                        type uint32;
                        description
                          "Count of Control disconnects";
                      }
    
                      leaf adj-gets {
                        type uint32;
                        description
                          "Count of Adjacencies received";
                      }
    
                      leaf link-floods {
                        type uint32;
                        description
                          "Count of Link floods received";
                      }
    
                      leaf link-fragment-floods {
                        type uint32;
                        description
                          "Count of Link fragments received";
                      }
    
                      leaf lsp-gets {
                        type uint32;
                        description
                          "Count of LSP Gets received";
                      }
    
                      leaf tunnel-announces {
                        type uint32;
                        description
                          "Count of tunnels announced";
                      }
    
                      leaf total-tunnels {
                        type uint32;
                        description
                          "Total count of tunnels";
                      }
    
                      leaf control-batch-reads {
                        type uint32;
                        description
                          "Count of reads of control batch";
                      }
    
                      leaf control-batch-writes {
                        type uint32;
                        description
                          "Count of writes of control batch";
                      }
    
                      leaf link-batch-reads {
                        type uint32;
                        description
                          "Count of reads of link batch";
                      }
    
                      leaf link-batch-writes {
                        type uint32;
                        description
                          "Count of writes of link batch";
                      }
    
                      leaf adj-changes {
                        type uint32;
                        description
                          "Count of adjacency changes";
                      }
    
                      leaf fragment-deletes {
                        type uint32;
                        description
                          "Count of deleted fragments";
                      }
    
                      leaf fragment-announces {
                        type uint32;
                        description
                          "Count of fragments announced";
                      }
    
                      leaf data-transfer-completes {
                        type uint32;
                        description
                          "Count of data transfer complete event";
                      }
    
                      leaf pce-listen {
                        type uint32;
                        description
                          "Count of PCE listen TRUE events ";
                      }
    
                      leaf pce-stoplisten {
                        type uint32;
                        description
                          "Count of PCE listen FALSE events ";
                      }
    
                      leaf pce-flood {
                        type uint32;
                        description
                          "Count of PCE flood events";
                      }
    
                      leaf pce-get {
                        type uint32;
                        description
                          "Count of PCE get events";
                      }
    
                      leaf pce-border-router-lookup {
                        type uint32;
                        description
                          "Count of PCE Border Router Lookup requests";
                      }
    
                      leaf pce-border-router-lookup-destinations {
                        type uint32;
                        description
                          "Count of destinations looked up by PCE Border
    Router Lookup requests";
                      }
    
                      leaf pce-failure-responses {
                        type uint32;
                        description
                          "Count of PCE failures encountered";
                      }
    
                      leaf pce-node-announce-batches {
                        type uint32;
                        description
                          "Count of PCE Node Announce batches";
                      }
    
                      leaf pce-node-delete-batches {
                        type uint32;
                        description
                          "Count of PCE Node Announce batches";
                      }
    
                      leaf pce-node-announce {
                        type uint32;
                        description
                          "Count of total PCE Node Announces";
                      }
    
                      leaf pce-node-delete {
                        type uint32;
                        description
                          "Count of total PCE Node Deletions";
                      }
    
                      leaf pce-node-send-fails {
                        type uint32;
                        description
                          "Count of PCE send failures";
                      }
    
                      leaf te-sr-path-reg-idt-received {
                        type boolean;
                        description
                          "Whether IDT registrations received for SR TE
    paths";
                      }
    
                      leaf te-sr-idt-sent {
                        type boolean;
                        description
                          "Whether IDT message is sent for SR TE";
                      }
    
                      leaf sr-area-enabled {
                        type uint32;
                        description
                          "Count of SR enabled areas";
                      }
                    }  // container te-stats
    
                    container protocol-stats {
                      description
                        "OSPF Protocol statistics";
                      leaf inputs {
                        type uint32;
                        description
                          "Total count of incoming packets";
                      }
    
                      leaf input-hello {
                        type uint32;
                        description
                          "Total count of incoming hello packets";
                      }
    
                      leaf input-db-descriptions {
                        type uint32;
                        description
                          "Total count of incoming Database description
    packets";
                      }
    
                      leaf input-db-descriptions-lsa {
                        type uint32;
                        description
                          "Total count of incoming Database description
    packets with LSA headers";
                      }
    
                      leaf input-requests {
                        type uint32;
                        description
                          "Total count of incoming Request packets";
                      }
    
                      leaf input-requests-lsa {
                        type uint32;
                        description
                          "Total count of incoming Request packets with LSA
    headers";
                      }
    
                      leaf input-ls-updates {
                        type uint32;
                        description
                          "Total count of incoming LS Update packets";
                      }
    
                      leaf input-ls-updates-lsa {
                        type uint32;
                        description
                          "Total count of incoming LS Update packets with
    LSA headers";
                      }
    
                      leaf input-ls-acks {
                        type uint32;
                        description
                          "Total count of incoming LS Acknowledgement
    packets";
                      }
    
                      leaf input-ls-acks-lsa {
                        type uint32;
                        description
                          "Total count of incoming LS Acknowledgement
    packets with LSA headers";
                      }
    
                      leaf checksum-errors {
                        type uint32;
                        description
                          "Total count of incoming packets with checksum
    errors";
                      }
    
                      leaf input-auth-error {
                        type uint32;
                        description
                          "Total count of incoming packets with
    authentication errors";
                      }
    
                      leaf outputs {
                        type uint32;
                        description
                          "Total count of outgoing packets";
                      }
    
                      leaf output-hellos {
                        type uint32;
                        description
                          "Total count of outgoing hello packets";
                      }
    
                      leaf output-db-descriptions {
                        type uint32;
                        description
                          "Total count of outgoing Database description
    packets";
                      }
    
                      leaf output-db-descriptions-lsa {
                        type uint32;
                        description
                          "Total count of outgoing Database description
    packets with LSA headers";
                      }
    
                      leaf output-requests {
                        type uint32;
                        description
                          "Total count of outgoing Request packets";
                      }
    
                      leaf output-requests-lsa {
                        type uint32;
                        description
                          "Total count of outgoing Request packets with LSA
    headers";
                      }
    
                      leaf output-ls-updates {
                        type uint32;
                        description
                          "Total count of outgoing LS Update packets";
                      }
    
                      leaf output-ls-updates-lsa {
                        type uint32;
                        description
                          "Total count of outgoing LS Update packets with
    LSA headers";
                      }
    
                      leaf output-ls-acks {
                        type uint32;
                        description
                          "Total count of outgoing LS Acknowledgement
    packets";
                      }
    
                      leaf output-ls-acks-lsa {
                        type uint32;
                        description
                          "Total count of outgoing LS Acknowledgement
    packets with LSA headers";
                      }
    
                      leaf outputs-auth-error {
                        type uint32;
                        description
                          "Total count of outgoing packets with
    authentication errors";
                      }
    
                      leaf input-hello-db-descriptions {
                        type uint32;
                        description
                          "Total count of incoming Database description
    packets received on hello thread";
                      }
    
                      leaf input-hello-ls-requests {
                        type uint32;
                        description
                          "Total count of incoming Request packets received
    on hello thread";
                      }
    
                      leaf input-hello-ls-updates {
                        type uint32;
                        description
                          "Total count of incoming LS Update packets
    received on hello thread";
                      }
    
                      leaf input-hello-ls-acks {
                        type uint32;
                        description
                          "Total count of incoming LS Acknowledgement
    packets received on hello thread";
                      }
                    }  // container protocol-stats
    
                    container raw-io-stats {
                      description
                        "OSPF RAW IO statistics";
                      leaf out-sent {
                        type uint32;
                        description
                          "Count of packets sent out on raw socket";
                      }
    
                      leaf bytes-sent {
                        type uint32;
                        units "byte";
                        description
                          "Count of bytes sent out on raw socket";
                      }
    
                      leaf out-discarded-no-connection {
                        type uint32;
                        description
                          "Count of outgoing packets discarded due to
    connection issues";
                      }
    
                      leaf out-null-src-discarded {
                        type uint32;
                        description
                          "Count of outgoing packets discarded due to
    source address or packet length issues";
                      }
    
                      leaf out-no-pakbuf-discarded {
                        type uint32;
                        description
                          "Count of outgoing packets discarded due to
    packet buffer issues";
                      }
    
                      leaf out-ipv4-hdr-error-discarded {
                        type uint32;
                        description
                          "Count of outgoing packets discarded due to ipv4
    deader construction failure";
                      }
    
                      leaf out-send-pak-error-discarded {
                        type uint32;
                        description
                          "Count of outgoing packets discarded due to send
    failure";
                      }
    
                      leaf in-received {
                        type uint32;
                        description
                          "Count of packets received on raw socket";
                      }
    
                      leaf bytes-received {
                        type uint32;
                        units "byte";
                        description
                          "Count of bytes received on raw socket";
                      }
    
                      leaf short-msg-received {
                        type uint32;
                        description
                          "Count of received packets discarded due to
    packet size too small";
                      }
    
                      leaf in-no-memory-discarded {
                        type uint32;
                        description
                          "Count of received packets discarded due to
    malloc failure";
                      }
    
                      leaf in-raw-events {
                        type uint32;
                        description
                          "Count of incoming raw events";
                      }
    
                      leaf disconnects {
                        type uint32;
                        description
                          "Count of raw sockets disconnected";
                      }
    
                      leaf in-standby-discarded {
                        type uint32;
                        description
                          "Count of received packets discarded since
    received on standby";
                      }
    
                      leaf nsr-not-ready-discarded {
                        type uint32;
                        description
                          "Count of received packets discarded since NSR
    not ready";
                      }
    
                      leaf raw-connected {
                        type boolean;
                        description
                          "Whether raw socket connection is up";
                      }
    
                      leaf shamlink-raw-connected {
                        type boolean;
                        description
                          "Whether shamlink raw socket connection is up";
                      }
                    }  // container raw-io-stats
    
                    container interface-stats-entries {
                      description
                        "Statistics innformation Interface table";
                      list interface-stats-entry {
                        key "interface-name";
                        description
                          "Statistics information for a specific interface";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        leaf handle {
                          type xr:Interface-name;
                          description
                            "interface handle type";
                        }
    
                        leaf if-name-str {
                          type string;
                          description
                            "interface name";
                        }
    
                        list if-entry {
                          description
                            "interface entry";
                          leaf madj-intf {
                            type boolean;
                            description
                              "OSPF madj interface";
                          }
    
                          leaf area-id {
                            type uint32;
                            description
                              "OSPF area id";
                          }
    
                          leaf area-id-str {
                            type string;
                            description
                              "OSPF aread id string";
                          }
    
                          list if-stat {
                            description
                              "OSPF interface statistics";
                            leaf entry {
                              type uint32;
                              description
                                "OSPF interface statistics";
                            }
                          }  // list if-stat
                        }  // list if-entry
                      }  // list interface-stats-entry
                    }  // container interface-stats-entries
                  }  // container statistics
    
                  container adjacency-information {
                    description
                      "Container for OSPF Interfaces";
                    container neighbors {
                      description
                        "Neighbor table";
                      list neighbor {
                        description
                          "Neighbor information";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        leaf neighbor-address {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 address of the neighbor";
                        }
    
                        container neighbor-bfd-information {
                          description
                            "BFD related information of the neighbor";
                          leaf bfd-intf-enable-mode {
                            type uint32;
                            description
                              "BFD enable mode - Default/Strict";
                          }
    
                          leaf bfd-status-flag {
                            type uint8;
                            description
                              "Status of the BFD Session";
                          }
                        }  // container neighbor-bfd-information
    
                        leaf neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor ID";
                        }
    
                        leaf neighbor-ip-address {
                          type inet:ipv4-address;
                          description
                            "Neighbor IP Address";
                        }
    
                        leaf neighbor-interface-name {
                          type xr:Interface-name;
                          description
                            "Interface via which the neighbor is seen";
                        }
    
                        leaf neighbor-dr-priority {
                          type uint8;
                          description
                            "DR priority of the neighbor";
                        }
    
                        leaf neighbor-state {
                          type Neighbor-state;
                          description
                            "NFSM state of the neighbor";
                        }
    
                        leaf dr-bdr-state {
                          type Dr-bdr-state;
                          description
                            "IFSM state of the neighbor";
                        }
    
                        leaf neighbor-dead-timer {
                          type uint32;
                          description
                            "Time until neighbor's dead timer expires (s)";
                        }
    
                        leaf neighbor-up-time {
                          type uint32;
                          description
                            "Amount of time since the adjacency is up (s)";
                        }
    
                        leaf neighbor-madj-interface {
                          type boolean;
                          description
                            "Interface is MADJ";
                        }
                      }  // list neighbor
                    }  // container neighbors
    
                    container requests {
                      description
                        "Request List table";
                      list request {
                        description
                          "Request list for a particular adjacency";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Interface";
                        }
    
                        leaf neighbor-address {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 address of the neighbor";
                        }
    
                        leaf request-neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor ID";
                        }
    
                        leaf request-neighbor-address {
                          type inet:ipv4-address;
                          description
                            "Neighbor IP address";
                        }
    
                        leaf request-interface-name {
                          type xr:Interface-name;
                          description
                            "Request list interface";
                        }
    
                        list request {
                          description
                            "List of request list entries";
                          leaf header-lsa-type {
                            type Lsa;
                            description
                              "LSA Type";
                          }
    
                          leaf header-lsa-age {
                            type uint16;
                            description
                              "Age of the LSA (s)";
                          }
    
                          leaf header-ls-id {
                            type inet:ipv4-address;
                            description "LSA ID";
                          }
    
                          leaf header-advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf header-sequence-number {
                            type uint32;
                            description
                              "Current LSA sequence number";
                          }
    
                          leaf header-lsa-checksum {
                            type uint16;
                            description
                              "Checksum of the LSA";
                          }
                        }  // list request
                      }  // list request
                    }  // container requests
    
                    container retransmissions {
                      description
                        "Retransmission list table";
                      list retransmission {
                        description
                          "Retransmission list for a particular adjacency";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        leaf neighbor-address {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 address of the neighbor";
                        }
    
                        leaf retransmission-neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor ID";
                        }
    
                        leaf retransmission-neighbor-ip-address {
                          type inet:ipv4-address;
                          description
                            "Neighbor IP Address";
                        }
    
                        leaf retransmission-interface-name {
                          type xr:Interface-name;
                          description
                            "Retransmission list interface";
                        }
    
                        leaf retransmission-timer {
                          type uint32;
                          description
                            "Amount of time remaining on retransmission timer
    (ms)";
                        }
    
                        leaf retransmission-count {
                          type uint32;
                          description
                            "Retransmission queue length";
                        }
    
                        list retransmission-area-db {
                          description
                            "List of Area scope entries";
                          leaf header-lsa-type {
                            type Lsa;
                            description
                              "LSA Type";
                          }
    
                          leaf header-lsa-age {
                            type uint16;
                            description
                              "Age of the LSA (s)";
                          }
    
                          leaf header-ls-id {
                            type inet:ipv4-address;
                            description "LSA ID";
                          }
    
                          leaf header-advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf header-sequence-number {
                            type uint32;
                            description
                              "Current LSA sequence number";
                          }
    
                          leaf header-lsa-checksum {
                            type uint16;
                            description
                              "Checksum of the LSA";
                          }
                        }  // list retransmission-area-db
    
                        list retransmission-asdb {
                          description
                            "List of AS Scope entries";
                          leaf header-lsa-type {
                            type Lsa;
                            description
                              "LSA Type";
                          }
    
                          leaf header-lsa-age {
                            type uint16;
                            description
                              "Age of the LSA (s)";
                          }
    
                          leaf header-ls-id {
                            type inet:ipv4-address;
                            description "LSA ID";
                          }
    
                          leaf header-advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf header-sequence-number {
                            type uint32;
                            description
                              "Current LSA sequence number";
                          }
    
                          leaf header-lsa-checksum {
                            type uint16;
                            description
                              "Checksum of the LSA";
                          }
                        }  // list retransmission-asdb
                      }  // list retransmission
                    }  // container retransmissions
    
                    container neighbor-details {
                      description
                        "Neighbor detail table";
                      list neighbor-detail {
                        description
                          "A single neighbor's detail information";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        leaf neighbor-address {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 address of the neighbor";
                        }
    
                        container neighbor-summary {
                          description
                            "Neighbor summary information";
                          container neighbor-bfd-information {
                            description
                              "BFD related information of the neighbor";
                            leaf bfd-intf-enable-mode {
                              type uint32;
                              description
                                "BFD enable mode - Default/Strict";
                            }
    
                            leaf bfd-status-flag {
                              type uint8;
                              description
                                "Status of the BFD Session";
                            }
                          }  // container neighbor-bfd-information
    
                          leaf neighbor-id {
                            type inet:ipv4-address;
                            description
                              "Neighbor ID";
                          }
    
                          leaf neighbor-ip-address {
                            type inet:ipv4-address;
                            description
                              "Neighbor IP Address";
                          }
    
                          leaf neighbor-interface-name {
                            type xr:Interface-name;
                            description
                              "Interface via which the neighbor is seen";
                          }
    
                          leaf neighbor-dr-priority {
                            type uint8;
                            description
                              "DR priority of the neighbor";
                          }
    
                          leaf neighbor-state {
                            type Neighbor-state;
                            description
                              "NFSM state of the neighbor";
                          }
    
                          leaf dr-bdr-state {
                            type Dr-bdr-state;
                            description
                              "IFSM state of the neighbor";
                          }
    
                          leaf neighbor-dead-timer {
                            type uint32;
                            description
                              "Time until neighbor's dead timer expires (s)";
                          }
    
                          leaf neighbor-up-time {
                            type uint32;
                            description
                              "Amount of time since the adjacency is up (s)";
                          }
    
                          leaf neighbor-madj-interface {
                            type boolean;
                            description
                              "Interface is MADJ";
                          }
                        }  // container neighbor-summary
    
                        container neighbor-bfd-information {
                          description
                            "BFD related information of the neighbor";
                          leaf bfd-intf-enable-mode {
                            type uint32;
                            description
                              "BFD enable mode - Default/Strict";
                          }
    
                          leaf bfd-status-flag {
                            type uint8;
                            description
                              "Status of the BFD Session";
                          }
                        }  // container neighbor-bfd-information
    
                        container neighbor-retransmission-information {
                          description
                            "Retransmission information with this neighbor";
                          leaf dbd-retransmission-count {
                            type uint32;
                            description
                              "Number of DBD retransmissions during last
    exchange";
                          }
    
                          leaf dbd-retransmission-total-count {
                            type uint32;
                            description
                              "Total number of DBD retransmissions for this
    neighbor";
                          }
    
                          leaf area-flooding-index {
                            type uint32;
                            description
                              "Area scope LSA's flood index";
                          }
    
                          leaf as-flood-index {
                            type uint32;
                            description
                              "AS scope LSA's flood index";
                          }
    
                          leaf neighbor-retransmission-count {
                            type uint32;
                            description
                              "Retransmission queue length";
                          }
    
                          leaf number-of-retransmissions {
                            type uint32;
                            description
                              "Number of retransmissions for this neighbor";
                          }
    
                          leaf area-first-flood-information {
                            type uint32;
                            description
                              "First flood item for area scope LSAs";
                          }
    
                          leaf area-first-flood-information-index {
                            type uint32;
                            description
                              "Index of the first flood item for area scope
    LSAs";
                          }
    
                          leaf as-first-flood-information {
                            type uint32;
                            description
                              "First flood item for AS scope LSAs";
                          }
    
                          leaf as-first-flood-information-index {
                            type uint32;
                            description
                              "Index for first flood item for AS scope LSAs";
                          }
    
                          leaf area-next-flood-information {
                            type uint32;
                            description
                              "Next flood item for area scope LSAs";
                          }
    
                          leaf area-next-flood-information-index {
                            type uint32;
                            description
                              "Index of next flood item for Area scope LSAs";
                          }
    
                          leaf as-next-flood-information {
                            type uint32;
                            description
                              "Next flood item for AS scope LSAs";
                          }
    
                          leaf as-next-flood-information-index {
                            type uint32;
                            description
                              "Index of next flood item for AS scope LSAs";
                          }
    
                          leaf last-retransmission-length {
                            type uint32;
                            description
                              "Number of LSAs sent in last retransmission";
                          }
    
                          leaf maximum-retransmission-length {
                            type uint32;
                            description
                              "Maximum number of LSAs sent in a retransmission";
                          }
    
                          leaf last-retransmission-time {
                            type uint32;
                            description
                              "Time taken for retransmission in the last
    attempt (ms)";
                          }
    
                          leaf maximum-retransmission-time {
                            type uint32;
                            description
                              "Maximum time taken for retransmission (ms)";
                          }
    
                          leaf lsa-retransmission-timer {
                            type uint32;
                            description
                              "Time until next LSA retransmission (ms)";
                          }
                        }  // container neighbor-retransmission-information
    
                        leaf neighbor-area-id {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted-decimal
    format";
                        }
    
                        leaf state-change-count {
                          type uint16;
                          description
                            "Number of state changes";
                        }
    
                        leaf neighbor-cost {
                          type uint16;
                          description
                            "Cost of path to this neighbor";
                        }
    
                        leaf neighbor-filter {
                          type boolean;
                          description
                            "If true, filter outgoing LSAs";
                        }
    
                        leaf neighbor-designated-router-address {
                          type inet:ipv4-address;
                          description
                            "Address of designated router";
                        }
    
                        leaf neighbor-backup-designated-router-address {
                          type inet:ipv4-address;
                          description
                            "Address of backup designated router";
                        }
    
                        leaf interface-type {
                          type Interface;
                          description
                            "Type of the interface, whether it is p2p,
    broadcast, nbma or p2mp";
                        }
    
                        leaf poll-interval {
                          type uint32;
                          description
                            "Poll interval (s)";
                        }
    
                        leaf next-poll-interval {
                          type uint32;
                          units "second";
                          description
                            "For NBMA networks, amount of time remaining in
    seconds before the next poll interval expires
    and Hello is sent (s)";
                        }
    
                        leaf neighbor-option {
                          type uint8;
                          description
                            " This is bitmaks of neighbor's option field
    received";
                        }
    
                        leaf pending-events {
                          type uint16;
                          description
                            "Number of pending events";
                        }
    
                        leaf neighbor-lls-option {
                          type uint32;
                          description
                            "This is a bitmask of Link Local signalling
    options received from the neighbor";
                        }
    
                        leaf oob-resynchronization {
                          type boolean;
                          description
                            "Out-Of-Bound resynchronization in progress";
                        }
    
                        leaf nsf-router-state {
                          type Nsf-rtr;
                          description
                            "For cisco NSF, the router is either Requester or
    Receiver";
                        }
    
                        leaf last-oob-time {
                          type uint32;
                          units "second";
                          description
                            "The amount of time in seconds since last time
    Out-Of-Band resynchronization was done with this
    neighbor";
                        }
    
                        leaf lfa-interface {
                          type xr:Interface-name;
                          description
                            "LFA Interface";
                        }
    
                        leaf lfa-next-hop {
                          type inet:ipv4-address;
                          description
                            "LFA Next Hop";
                        }
    
                        leaf lfa-neighbor-id {
                          type inet:ipv4-address;
                          description
                            "LFA Neighbor ID";
                        }
    
                        leaf lfa-neighbor-revision {
                          type uint32;
                          description
                            "LFA Neighbor Revision";
                        }
    
                        leaf neighbor-ack-list-count {
                          type uint32;
                          description
                            "Ack List Count";
                        }
    
                        leaf neighbor-ack-list-high-watermark {
                          type uint32;
                          description
                            "Ack List High Watermark";
                        }
    
                        leaf neighbor-interface-id {
                          type uint16;
                          description
                            "Interface ID of neighbor recived via LLS";
                        }
    
                        list adjacency-sid {
                          description
                            "List of SR Adjacency SIDs";
                          leaf adj-sid-label {
                            type uint32;
                            description
                              "Adjacency SID Label";
                          }
    
                          leaf protected-adj-sid {
                            type boolean;
                            description
                              "Adjacency SID Protection";
                          }
    
                          leaf adj-sid-has-backup {
                            type boolean;
                            description
                              "Adjacency SID has backup protection";
                          }
    
                          leaf configured-adj-sid {
                            type boolean;
                            description
                              "Configured Adjacency SID";
                          }
                        }  // list adjacency-sid
                      }  // list neighbor-detail
                    }  // container neighbor-details
                  }  // container adjacency-information
    
                  container route-information {
                    description
                      "Container for OSPF routing tables";
                    container backup-routes {
                      description
                        "OSPF Route Table Including Backup Paths";
                      list backup-route {
                        description
                          "OSPF route including backup paths";
                        leaf prefix {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 Prefix";
                        }
    
                        leaf prefix-length {
                          type Ospf-prefix-length;
                          description
                            "Length of the subnet prefix";
                        }
    
                        container route-info {
                          description
                            "Route information";
                          container route-update-time {
                            description
                              "Last time updated";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-update-time
    
                          container route-fail-time {
                            description
                              "Last time update failed";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-fail-time
    
                          leaf route-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf route-te-metric {
                            type uint32;
                            description
                              "TE metric";
                          }
    
                          leaf route-rib-version {
                            type uint32;
                            description
                              "RIB version";
                          }
    
                          leaf route-spf-version {
                            type uint64;
                            description
                              "SPF version";
                          }
    
                          leaf route-forward-distance {
                            type uint32;
                            description
                              "Forward distance";
                          }
    
                          leaf route-source {
                            type uint16;
                            description
                              "Protocol source";
                          }
    
                          leaf route-spf-priority {
                            type uint8;
                            description
                              "SPF priority";
                          }
    
                          leaf route-auto-excluded {
                            type boolean;
                            description
                              "If true, exclude from TE paths";
                          }
    
                          leaf route-srte-prefix-registered {
                            type boolean;
                            description
                              "If true, SRTE registered prefix route";
                          }
    
                          leaf route-srte-nbr-registered {
                            type uint16;
                            description
                              "SRTE registered neigbhor count on route";
                          }
    
                          leaf route-label-type {
                            type uint8;
                            description
                              "Type of route label";
                          }
    
                          leaf route-label {
                            type uint32;
                            description
                              "The route SPF label";
                          }
    
                          leaf route-sspf-label {
                            type uint32;
                            description
                              "The route SSPF label";
                          }
                        }  // container route-info
    
                        leaf route-prefix {
                          type inet:ipv4-address;
                          description
                            "IPv4 Route Prefix";
                        }
    
                        leaf route-prefix-length {
                          type uint32;
                          description
                            "Prefix length";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf route-type {
                          type Ospf-route;
                          description
                            "OSPF route type, whether intra-area, inter-area
    or external route";
                        }
    
                        leaf route-connected {
                          type boolean;
                          description
                            "If true, connected route";
                        }
    
                        list route-path {
                          description
                            "List of paths to this route";
                          container route-backup-path {
                            description
                              "Backup Path Info";
                            leaf backup-route-interface-name {
                              type xr:Interface-name;
                              description
                                "Next hop Interface";
                            }
    
                            leaf backup-route-next-hop-address {
                              type inet:ipv4-address;
                              description
                                "Nexthop IP address";
                            }
    
                            leaf backup-route-source {
                              type inet:ipv4-address;
                              description
                                "IP address of source of route";
                            }
    
                            leaf backup-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf primary-path {
                              type boolean;
                              description
                                "Whether this is also a Primary Path";
                            }
    
                            leaf line-card-disjoint {
                              type boolean;
                              description
                                "Whether this is a Line Card Disjoint path";
                            }
    
                            leaf downstream {
                              type boolean;
                              description
                                "Whether this is a downstream path";
                            }
    
                            leaf node-protect {
                              type boolean;
                              description
                                "Whether this is a Node Protect path";
                            }
    
                            leaf srlg-disjoint {
                              type boolean;
                              description
                                "Whether this is a SRLG Disjoint path";
                            }
    
                            leaf weighted-srlg {
                              type boolean;
                              description
                                "Whether this is a Weighted SRLG path";
                            }
    
                            leaf lfa-type {
                              type Lfa;
                              description
                                "LFA type";
                            }
    
                            leaf backup-remote-lfa {
                              type inet:ipv4-address;
                              description
                                "IP address of remote LFA";
                            }
    
                            leaf backup-repair-list-size {
                              type uint32;
                              description
                                "Repair List Size";
                            }
    
                            leaf backup-tunnel-interface-name {
                              type xr:Interface-name;
                              description
                                "Backup Tunnel Interface";
                            }
    
                            leaf interface-disjoint {
                              type boolean;
                              description
                                "Whether this is a Interface Disjoint path";
                            }
    
                            list backup-repair {
                              max-elements 12;
                              description
                                "Backup Repair List";
                              leaf repair-element-id {
                                type inet:ipv4-address;
                                description
                                  "ID of the Repair Element";
                              }
    
                              leaf repair-label {
                                type uint32;
                                description
                                  "Label of Repair Element";
                              }
    
                              leaf repair-element-type {
                                type uint32;
                                description
                                  "Type of the Repair Element";
                              }
                            }  // list backup-repair
                          }  // container route-backup-path
    
                          container sr-microloop-avoidance-path {
                            description
                              "SR Microloop avoidance Path Info";
                            leaf microloop-repair-list-size {
                              type uint32;
                              description
                                "Repair List Size for Microloop";
                            }
    
                            leaf microloop-tunnel-interface-name {
                              type xr:Interface-name;
                              description
                                "Tunnel Interface name for Microloop";
                            }
    
                            leaf microloop-strict-spf {
                              type boolean;
                              description
                                "Strict SPF SID for Microloop";
                            }
    
                            list microloop-repair {
                              max-elements 12;
                              description
                                "Repair List for Microloop";
                              leaf repair-element-id {
                                type inet:ipv4-address;
                                description
                                  "ID of the Repair Element";
                              }
    
                              leaf repair-label {
                                type uint32;
                                description
                                  "Label of Repair Element";
                              }
    
                              leaf repair-element-type {
                                type uint32;
                                description
                                  "Type of the Repair Element";
                              }
                            }  // list microloop-repair
                          }  // container sr-microloop-avoidance-path
    
                          leaf route-interface-name {
                            type xr:Interface-name;
                            description
                              "Next hop Interface";
                          }
    
                          leaf route-interface-snmp-index {
                            type uint32;
                            description
                              "SNMP index of the Interface";
                          }
    
                          leaf route-next-hop-address {
                            type inet:ipv4-address;
                            description
                              "Nexthop IP address";
                          }
    
                          leaf route-source {
                            type inet:ipv4-address;
                            description
                              "IP address of source of route";
                          }
    
                          leaf route-lsaid {
                            type inet:ipv4-address;
                            description
                              "LSA ID, see RFC2328";
                          }
    
                          leaf route-path-is-mcast-intact {
                            type boolean;
                            description
                              "Multicast-intact path";
                          }
    
                          leaf route-path-is-ucmp-path {
                            type boolean;
                            description
                              "UCMP path";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf route-path-id {
                            type uint32;
                            description
                              "Path ID of path";
                          }
    
                          leaf lsa-type {
                            type uint8;
                            description
                              "LSA type, see RFC2328 etc.";
                          }
    
                          leaf area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf area-format {
                            type boolean;
                            description
                              "Area format IP or uint32";
                          }
    
                          leaf route-path-is-rsvp-te-path {
                            type boolean;
                            description
                              "RSVP-TE path";
                          }
    
                          leaf route-path-is-sr-te-path {
                            type boolean;
                            description
                              "SR-TE path";
                          }
    
                          leaf route-path-is-sr-excl-path {
                            type boolean;
                            description
                              "SR Excl TE path";
                          }
    
                          leaf route-path-is-sr-te-sspf-path {
                            type boolean;
                            description
                              "SR-TE SSPF path";
                          }
    
                          list neighbor-next-hop {
                            description
                              "NeighborNextHop";
                            leaf neighbor-next-hop-value-type {
                              type Ospf-sh-nnh-val-types;
                              description
                                "NeighborNextHopValueType";
                            }
    
                            leaf neighbor-next-hop-ip-addr {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                              }
                              type inet:ipv4-address;
                              description
                                "Neighbor NextHop IP Address";
                            }
    
                            leaf neighbor-next-hop-intf-index {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                              }
                              type uint32;
                              description
                                "Neighbor NextHop Interface Index";
                            }
                          }  // list neighbor-next-hop
                        }  // list route-path
                      }  // list backup-route
                    }  // container backup-routes
    
                    container multicast-intact-route-table {
                      description
                        "OSPF Route Table including multicast-intact
    routes";
                      list route {
                        description
                          "An OSPF route";
                        leaf prefix {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 Prefix";
                        }
    
                        leaf prefix-length {
                          type Ospf-prefix-length;
                          description
                            "Length of the subnet prefix";
                        }
    
                        container route-info {
                          description
                            "Route information";
                          container route-update-time {
                            description
                              "Last time updated";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-update-time
    
                          container route-fail-time {
                            description
                              "Last time update failed";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-fail-time
    
                          leaf route-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf route-te-metric {
                            type uint32;
                            description
                              "TE metric";
                          }
    
                          leaf route-rib-version {
                            type uint32;
                            description
                              "RIB version";
                          }
    
                          leaf route-spf-version {
                            type uint64;
                            description
                              "SPF version";
                          }
    
                          leaf route-forward-distance {
                            type uint32;
                            description
                              "Forward distance";
                          }
    
                          leaf route-source {
                            type uint16;
                            description
                              "Protocol source";
                          }
    
                          leaf route-spf-priority {
                            type uint8;
                            description
                              "SPF priority";
                          }
    
                          leaf route-auto-excluded {
                            type boolean;
                            description
                              "If true, exclude from TE paths";
                          }
    
                          leaf route-srte-prefix-registered {
                            type boolean;
                            description
                              "If true, SRTE registered prefix route";
                          }
    
                          leaf route-srte-nbr-registered {
                            type uint16;
                            description
                              "SRTE registered neigbhor count on route";
                          }
    
                          leaf route-label-type {
                            type uint8;
                            description
                              "Type of route label";
                          }
    
                          leaf route-label {
                            type uint32;
                            description
                              "The route SPF label";
                          }
    
                          leaf route-sspf-label {
                            type uint32;
                            description
                              "The route SSPF label";
                          }
                        }  // container route-info
    
                        leaf route-prefix {
                          type inet:ipv4-address;
                          description
                            "IPv4 Route Prefix";
                        }
    
                        leaf route-prefix-length {
                          type uint32;
                          description
                            "Prefix length";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf route-type {
                          type Ospf-route;
                          description
                            "OSPF route type, whether intra-area, inter-area
    or external route";
                        }
    
                        leaf route-connected {
                          type boolean;
                          description
                            "If true, connected route";
                        }
    
                        list route-path {
                          description
                            "List of paths to this route";
                          container sr-microloop-avoidance-path {
                            description
                              "SR Microloop avoidance Path Info";
                            leaf microloop-repair-list-size {
                              type uint32;
                              description
                                "Repair List Size for Microloop";
                            }
    
                            leaf microloop-tunnel-interface-name {
                              type xr:Interface-name;
                              description
                                "Tunnel Interface name for Microloop";
                            }
    
                            leaf microloop-strict-spf {
                              type boolean;
                              description
                                "Strict SPF SID for Microloop";
                            }
    
                            list microloop-repair {
                              max-elements 12;
                              description
                                "Repair List for Microloop";
                              leaf repair-element-id {
                                type inet:ipv4-address;
                                description
                                  "ID of the Repair Element";
                              }
    
                              leaf repair-label {
                                type uint32;
                                description
                                  "Label of Repair Element";
                              }
    
                              leaf repair-element-type {
                                type uint32;
                                description
                                  "Type of the Repair Element";
                              }
                            }  // list microloop-repair
                          }  // container sr-microloop-avoidance-path
    
                          leaf route-interface-name {
                            type xr:Interface-name;
                            description
                              "Next hop Interface";
                          }
    
                          leaf route-interface-snmp-index {
                            type uint32;
                            description
                              "SNMP index of th Interface";
                          }
    
                          leaf route-next-hop-address {
                            type inet:ipv4-address;
                            description
                              "Nexthop IP address";
                          }
    
                          leaf route-source {
                            type inet:ipv4-address;
                            description
                              "IP address of source of route";
                          }
    
                          leaf route-lsaid {
                            type inet:ipv4-address;
                            description
                              "LSA ID, see RFC2328";
                          }
    
                          leaf route-path-is-mcast-intact {
                            type boolean;
                            description
                              "Multicast-intact path";
                          }
    
                          leaf route-path-is-ucmp-path {
                            type boolean;
                            description
                              "UCMP path";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf lsa-type {
                            type uint8;
                            description
                              "LSA type, see RFC2328 etc.";
                          }
    
                          leaf area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf area-format {
                            type boolean;
                            description
                              "Area format IP or uint32";
                          }
    
                          leaf route-path-id {
                            type uint32;
                            description
                              "Path ID of path";
                          }
    
                          leaf route-path-is-rsvp-te-path {
                            type boolean;
                            description
                              "RSVP-TE path";
                          }
    
                          leaf route-path-is-sr-te-path {
                            type boolean;
                            description
                              "SR-TE path";
                          }
    
                          leaf route-path-is-sr-excl-path {
                            type boolean;
                            description
                              "SR Excl TE path";
                          }
    
                          leaf route-path-is-sr-te-sspf-path {
                            type boolean;
                            description
                              "SR-TE SSPF path";
                          }
    
                          leaf weight {
                            type uint32;
                            description
                              "Path Weight";
                          }
    
                          list neighbor-next-hop {
                            description
                              "NeighborNextHop";
                            leaf neighbor-next-hop-value-type {
                              type Ospf-sh-nnh-val-types;
                              description
                                "NeighborNextHopValueType";
                            }
    
                            leaf neighbor-next-hop-ip-addr {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                              }
                              type inet:ipv4-address;
                              description
                                "Neighbor NextHop IP Address";
                            }
    
                            leaf neighbor-next-hop-intf-index {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                              }
                              type uint32;
                              description
                                "Neighbor NextHop Interface Index";
                            }
                          }  // list neighbor-next-hop
                        }  // list route-path
                      }  // list route
                    }  // container multicast-intact-route-table
    
                    container multicast-intact-backup-routes {
                      description
                        "OSPF Route Table Including Multicast intact
    Backup Paths";
                      list multicast-intact-backup-route {
                        description
                          "OSPF route including multicast backup paths";
                        leaf prefix {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 Prefix";
                        }
    
                        leaf prefix-length {
                          type Ospf-prefix-length;
                          description
                            "Length of the subnet prefix";
                        }
    
                        container route-info {
                          description
                            "Route information";
                          container route-update-time {
                            description
                              "Last time updated";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-update-time
    
                          container route-fail-time {
                            description
                              "Last time update failed";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-fail-time
    
                          leaf route-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf route-te-metric {
                            type uint32;
                            description
                              "TE metric";
                          }
    
                          leaf route-rib-version {
                            type uint32;
                            description
                              "RIB version";
                          }
    
                          leaf route-spf-version {
                            type uint64;
                            description
                              "SPF version";
                          }
    
                          leaf route-forward-distance {
                            type uint32;
                            description
                              "Forward distance";
                          }
    
                          leaf route-source {
                            type uint16;
                            description
                              "Protocol source";
                          }
    
                          leaf route-spf-priority {
                            type uint8;
                            description
                              "SPF priority";
                          }
    
                          leaf route-auto-excluded {
                            type boolean;
                            description
                              "If true, exclude from TE paths";
                          }
    
                          leaf route-srte-prefix-registered {
                            type boolean;
                            description
                              "If true, SRTE registered prefix route";
                          }
    
                          leaf route-srte-nbr-registered {
                            type uint16;
                            description
                              "SRTE registered neigbhor count on route";
                          }
    
                          leaf route-label-type {
                            type uint8;
                            description
                              "Type of route label";
                          }
    
                          leaf route-label {
                            type uint32;
                            description
                              "The route SPF label";
                          }
    
                          leaf route-sspf-label {
                            type uint32;
                            description
                              "The route SSPF label";
                          }
                        }  // container route-info
    
                        leaf route-prefix {
                          type inet:ipv4-address;
                          description
                            "IPv4 Route Prefix";
                        }
    
                        leaf route-prefix-length {
                          type uint32;
                          description
                            "Prefix length";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf route-type {
                          type Ospf-route;
                          description
                            "OSPF route type, whether intra-area, inter-area
    or external route";
                        }
    
                        leaf route-connected {
                          type boolean;
                          description
                            "If true, connected route";
                        }
    
                        list route-path {
                          description
                            "List of paths to this route";
                          container route-backup-path {
                            description
                              "Backup Path Info";
                            leaf backup-route-interface-name {
                              type xr:Interface-name;
                              description
                                "Next hop Interface";
                            }
    
                            leaf backup-route-next-hop-address {
                              type inet:ipv4-address;
                              description
                                "Nexthop IP address";
                            }
    
                            leaf backup-route-source {
                              type inet:ipv4-address;
                              description
                                "IP address of source of route";
                            }
    
                            leaf backup-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf primary-path {
                              type boolean;
                              description
                                "Whether this is also a Primary Path";
                            }
    
                            leaf line-card-disjoint {
                              type boolean;
                              description
                                "Whether this is a Line Card Disjoint path";
                            }
    
                            leaf downstream {
                              type boolean;
                              description
                                "Whether this is a downstream path";
                            }
    
                            leaf node-protect {
                              type boolean;
                              description
                                "Whether this is a Node Protect path";
                            }
    
                            leaf srlg-disjoint {
                              type boolean;
                              description
                                "Whether this is a SRLG Disjoint path";
                            }
    
                            leaf weighted-srlg {
                              type boolean;
                              description
                                "Whether this is a Weighted SRLG path";
                            }
    
                            leaf lfa-type {
                              type Lfa;
                              description
                                "LFA type";
                            }
    
                            leaf backup-remote-lfa {
                              type inet:ipv4-address;
                              description
                                "IP address of remote LFA";
                            }
    
                            leaf backup-repair-list-size {
                              type uint32;
                              description
                                "Repair List Size";
                            }
    
                            leaf backup-tunnel-interface-name {
                              type xr:Interface-name;
                              description
                                "Backup Tunnel Interface";
                            }
    
                            leaf interface-disjoint {
                              type boolean;
                              description
                                "Whether this is a Interface Disjoint path";
                            }
    
                            list backup-repair {
                              max-elements 12;
                              description
                                "Backup Repair List";
                              leaf repair-element-id {
                                type inet:ipv4-address;
                                description
                                  "ID of the Repair Element";
                              }
    
                              leaf repair-label {
                                type uint32;
                                description
                                  "Label of Repair Element";
                              }
    
                              leaf repair-element-type {
                                type uint32;
                                description
                                  "Type of the Repair Element";
                              }
                            }  // list backup-repair
                          }  // container route-backup-path
    
                          container sr-microloop-avoidance-path {
                            description
                              "SR Microloop avoidance Path Info";
                            leaf microloop-repair-list-size {
                              type uint32;
                              description
                                "Repair List Size for Microloop";
                            }
    
                            leaf microloop-tunnel-interface-name {
                              type xr:Interface-name;
                              description
                                "Tunnel Interface name for Microloop";
                            }
    
                            leaf microloop-strict-spf {
                              type boolean;
                              description
                                "Strict SPF SID for Microloop";
                            }
    
                            list microloop-repair {
                              max-elements 12;
                              description
                                "Repair List for Microloop";
                              leaf repair-element-id {
                                type inet:ipv4-address;
                                description
                                  "ID of the Repair Element";
                              }
    
                              leaf repair-label {
                                type uint32;
                                description
                                  "Label of Repair Element";
                              }
    
                              leaf repair-element-type {
                                type uint32;
                                description
                                  "Type of the Repair Element";
                              }
                            }  // list microloop-repair
                          }  // container sr-microloop-avoidance-path
    
                          leaf route-interface-name {
                            type xr:Interface-name;
                            description
                              "Next hop Interface";
                          }
    
                          leaf route-interface-snmp-index {
                            type uint32;
                            description
                              "SNMP index of the Interface";
                          }
    
                          leaf route-next-hop-address {
                            type inet:ipv4-address;
                            description
                              "Nexthop IP address";
                          }
    
                          leaf route-source {
                            type inet:ipv4-address;
                            description
                              "IP address of source of route";
                          }
    
                          leaf route-lsaid {
                            type inet:ipv4-address;
                            description
                              "LSA ID, see RFC2328";
                          }
    
                          leaf route-path-is-mcast-intact {
                            type boolean;
                            description
                              "Multicast-intact path";
                          }
    
                          leaf route-path-is-ucmp-path {
                            type boolean;
                            description
                              "UCMP path";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf route-path-id {
                            type uint32;
                            description
                              "Path ID of path";
                          }
    
                          leaf lsa-type {
                            type uint8;
                            description
                              "LSA type, see RFC2328 etc.";
                          }
    
                          leaf area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf area-format {
                            type boolean;
                            description
                              "Area format IP or uint32";
                          }
    
                          leaf route-path-is-rsvp-te-path {
                            type boolean;
                            description
                              "RSVP-TE path";
                          }
    
                          leaf route-path-is-sr-te-path {
                            type boolean;
                            description
                              "SR-TE path";
                          }
    
                          leaf route-path-is-sr-excl-path {
                            type boolean;
                            description
                              "SR Excl TE path";
                          }
    
                          leaf route-path-is-sr-te-sspf-path {
                            type boolean;
                            description
                              "SR-TE SSPF path";
                          }
    
                          list neighbor-next-hop {
                            description
                              "NeighborNextHop";
                            leaf neighbor-next-hop-value-type {
                              type Ospf-sh-nnh-val-types;
                              description
                                "NeighborNextHopValueType";
                            }
    
                            leaf neighbor-next-hop-ip-addr {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                              }
                              type inet:ipv4-address;
                              description
                                "Neighbor NextHop IP Address";
                            }
    
                            leaf neighbor-next-hop-intf-index {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                              }
                              type uint32;
                              description
                                "Neighbor NextHop Interface Index";
                            }
                          }  // list neighbor-next-hop
                        }  // list route-path
                      }  // list multicast-intact-backup-route
                    }  // container multicast-intact-backup-routes
    
                    container summary-information {
                      description
                        "OSPF route summary statistics";
                      container failure-time {
                        description
                          "Last time failed";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container failure-time
    
                      container common {
                        description
                          "OSPF route summary Information";
                        leaf external-type1s {
                          type uint32;
                          description
                            "External type 1 count";
                        }
    
                        leaf external-type2s {
                          type uint32;
                          description
                            "External type 2 count";
                        }
    
                        leaf external-nssa-type1s {
                          type uint32;
                          description
                            "External NSSA type 1 count";
                        }
    
                        leaf external-nssa-type2s {
                          type uint32;
                          description
                            "External NSSA type 2 count";
                        }
    
                        leaf inter-areas {
                          type uint32;
                          description
                            "Inter-area count";
                        }
    
                        leaf intra-areas {
                          type uint32;
                          description
                            "Intra-area count";
                        }
    
                        leaf total {
                          type uint32;
                          description
                            "Total count";
                        }
                      }  // container common
    
                      leaf failures {
                        type uint32;
                        description
                          "RIB failure count";
                      }
    
                      leaf failure-address {
                        type inet:ipv4-address;
                        description
                          "Last failed address";
                      }
                    }  // container summary-information
    
                    container connected-routes {
                      description
                        "OSPF Connected Route Table";
                      list connected-route {
                        description
                          "This is a Connected route";
                        leaf prefix {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 Prefix";
                        }
    
                        leaf prefix-length {
                          type Ospf-prefix-length;
                          description
                            "Length of the subnet prefix";
                        }
    
                        container route-info {
                          description
                            "Route information";
                          container route-update-time {
                            description
                              "Last time updated";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-update-time
    
                          container route-fail-time {
                            description
                              "Last time update failed";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-fail-time
    
                          leaf route-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf route-te-metric {
                            type uint32;
                            description
                              "TE metric";
                          }
    
                          leaf route-rib-version {
                            type uint32;
                            description
                              "RIB version";
                          }
    
                          leaf route-spf-version {
                            type uint64;
                            description
                              "SPF version";
                          }
    
                          leaf route-forward-distance {
                            type uint32;
                            description
                              "Forward distance";
                          }
    
                          leaf route-source {
                            type uint16;
                            description
                              "Protocol source";
                          }
    
                          leaf route-spf-priority {
                            type uint8;
                            description
                              "SPF priority";
                          }
    
                          leaf route-auto-excluded {
                            type boolean;
                            description
                              "If true, exclude from TE paths";
                          }
    
                          leaf route-srte-prefix-registered {
                            type boolean;
                            description
                              "If true, SRTE registered prefix route";
                          }
    
                          leaf route-srte-nbr-registered {
                            type uint16;
                            description
                              "SRTE registered neigbhor count on route";
                          }
    
                          leaf route-label-type {
                            type uint8;
                            description
                              "Type of route label";
                          }
    
                          leaf route-label {
                            type uint32;
                            description
                              "The route SPF label";
                          }
    
                          leaf route-sspf-label {
                            type uint32;
                            description
                              "The route SSPF label";
                          }
                        }  // container route-info
    
                        leaf route-prefix {
                          type inet:ipv4-address;
                          description
                            "IPv4 Route Prefix";
                        }
    
                        leaf route-prefix-length {
                          type uint32;
                          description
                            "Prefix length";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf route-type {
                          type Ospf-route;
                          description
                            "OSPF route type, whether intra-area, inter-area
    or external route";
                        }
    
                        leaf route-connected {
                          type boolean;
                          description
                            "If true, connected route";
                        }
    
                        list route-path {
                          description
                            "List of paths to this route";
                          container sr-microloop-avoidance-path {
                            description
                              "SR Microloop avoidance Path Info";
                            leaf microloop-repair-list-size {
                              type uint32;
                              description
                                "Repair List Size for Microloop";
                            }
    
                            leaf microloop-tunnel-interface-name {
                              type xr:Interface-name;
                              description
                                "Tunnel Interface name for Microloop";
                            }
    
                            leaf microloop-strict-spf {
                              type boolean;
                              description
                                "Strict SPF SID for Microloop";
                            }
    
                            list microloop-repair {
                              max-elements 12;
                              description
                                "Repair List for Microloop";
                              leaf repair-element-id {
                                type inet:ipv4-address;
                                description
                                  "ID of the Repair Element";
                              }
    
                              leaf repair-label {
                                type uint32;
                                description
                                  "Label of Repair Element";
                              }
    
                              leaf repair-element-type {
                                type uint32;
                                description
                                  "Type of the Repair Element";
                              }
                            }  // list microloop-repair
                          }  // container sr-microloop-avoidance-path
    
                          leaf route-interface-name {
                            type xr:Interface-name;
                            description
                              "Next hop Interface";
                          }
    
                          leaf route-interface-snmp-index {
                            type uint32;
                            description
                              "SNMP index of th Interface";
                          }
    
                          leaf route-next-hop-address {
                            type inet:ipv4-address;
                            description
                              "Nexthop IP address";
                          }
    
                          leaf route-source {
                            type inet:ipv4-address;
                            description
                              "IP address of source of route";
                          }
    
                          leaf route-lsaid {
                            type inet:ipv4-address;
                            description
                              "LSA ID, see RFC2328";
                          }
    
                          leaf route-path-is-mcast-intact {
                            type boolean;
                            description
                              "Multicast-intact path";
                          }
    
                          leaf route-path-is-ucmp-path {
                            type boolean;
                            description
                              "UCMP path";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf lsa-type {
                            type uint8;
                            description
                              "LSA type, see RFC2328 etc.";
                          }
    
                          leaf area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf area-format {
                            type boolean;
                            description
                              "Area format IP or uint32";
                          }
    
                          leaf route-path-id {
                            type uint32;
                            description
                              "Path ID of path";
                          }
    
                          leaf route-path-is-rsvp-te-path {
                            type boolean;
                            description
                              "RSVP-TE path";
                          }
    
                          leaf route-path-is-sr-te-path {
                            type boolean;
                            description
                              "SR-TE path";
                          }
    
                          leaf route-path-is-sr-excl-path {
                            type boolean;
                            description
                              "SR Excl TE path";
                          }
    
                          leaf route-path-is-sr-te-sspf-path {
                            type boolean;
                            description
                              "SR-TE SSPF path";
                          }
    
                          leaf weight {
                            type uint32;
                            description
                              "Path Weight";
                          }
    
                          list neighbor-next-hop {
                            description
                              "NeighborNextHop";
                            leaf neighbor-next-hop-value-type {
                              type Ospf-sh-nnh-val-types;
                              description
                                "NeighborNextHopValueType";
                            }
    
                            leaf neighbor-next-hop-ip-addr {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                              }
                              type inet:ipv4-address;
                              description
                                "Neighbor NextHop IP Address";
                            }
    
                            leaf neighbor-next-hop-intf-index {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                              }
                              type uint32;
                              description
                                "Neighbor NextHop Interface Index";
                            }
                          }  // list neighbor-next-hop
                        }  // list route-path
                      }  // list connected-route
                    }  // container connected-routes
    
                    container local-routes {
                      description
                        "OSPF Local Route Table";
                      list local-route {
                        description
                          "This is a Local route";
                        leaf prefix {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 Prefix";
                        }
    
                        leaf prefix-length {
                          type Ospf-prefix-length;
                          description
                            "Length of the subnet prefix";
                        }
    
                        container route-info {
                          description
                            "Route information";
                          container route-update-time {
                            description
                              "Last time updated";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-update-time
    
                          container route-fail-time {
                            description
                              "Last time update failed";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-fail-time
    
                          leaf route-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf route-te-metric {
                            type uint32;
                            description
                              "TE metric";
                          }
    
                          leaf route-rib-version {
                            type uint32;
                            description
                              "RIB version";
                          }
    
                          leaf route-spf-version {
                            type uint64;
                            description
                              "SPF version";
                          }
    
                          leaf route-forward-distance {
                            type uint32;
                            description
                              "Forward distance";
                          }
    
                          leaf route-source {
                            type uint16;
                            description
                              "Protocol source";
                          }
    
                          leaf route-spf-priority {
                            type uint8;
                            description
                              "SPF priority";
                          }
    
                          leaf route-auto-excluded {
                            type boolean;
                            description
                              "If true, exclude from TE paths";
                          }
    
                          leaf route-srte-prefix-registered {
                            type boolean;
                            description
                              "If true, SRTE registered prefix route";
                          }
    
                          leaf route-srte-nbr-registered {
                            type uint16;
                            description
                              "SRTE registered neigbhor count on route";
                          }
    
                          leaf route-label-type {
                            type uint8;
                            description
                              "Type of route label";
                          }
    
                          leaf route-label {
                            type uint32;
                            description
                              "The route SPF label";
                          }
    
                          leaf route-sspf-label {
                            type uint32;
                            description
                              "The route SSPF label";
                          }
                        }  // container route-info
    
                        leaf route-prefix {
                          type inet:ipv4-address;
                          description
                            "IPv4 Route Prefix";
                        }
    
                        leaf route-prefix-length {
                          type uint32;
                          description
                            "Prefix length";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf route-type {
                          type Ospf-route;
                          description
                            "OSPF route type, whether intra-area, inter-area
    or external route";
                        }
    
                        leaf route-connected {
                          type boolean;
                          description
                            "If true, connected route";
                        }
    
                        list route-path {
                          description
                            "List of paths to this route";
                          container sr-microloop-avoidance-path {
                            description
                              "SR Microloop avoidance Path Info";
                            leaf microloop-repair-list-size {
                              type uint32;
                              description
                                "Repair List Size for Microloop";
                            }
    
                            leaf microloop-tunnel-interface-name {
                              type xr:Interface-name;
                              description
                                "Tunnel Interface name for Microloop";
                            }
    
                            leaf microloop-strict-spf {
                              type boolean;
                              description
                                "Strict SPF SID for Microloop";
                            }
    
                            list microloop-repair {
                              max-elements 12;
                              description
                                "Repair List for Microloop";
                              leaf repair-element-id {
                                type inet:ipv4-address;
                                description
                                  "ID of the Repair Element";
                              }
    
                              leaf repair-label {
                                type uint32;
                                description
                                  "Label of Repair Element";
                              }
    
                              leaf repair-element-type {
                                type uint32;
                                description
                                  "Type of the Repair Element";
                              }
                            }  // list microloop-repair
                          }  // container sr-microloop-avoidance-path
    
                          leaf route-interface-name {
                            type xr:Interface-name;
                            description
                              "Next hop Interface";
                          }
    
                          leaf route-interface-snmp-index {
                            type uint32;
                            description
                              "SNMP index of th Interface";
                          }
    
                          leaf route-next-hop-address {
                            type inet:ipv4-address;
                            description
                              "Nexthop IP address";
                          }
    
                          leaf route-source {
                            type inet:ipv4-address;
                            description
                              "IP address of source of route";
                          }
    
                          leaf route-lsaid {
                            type inet:ipv4-address;
                            description
                              "LSA ID, see RFC2328";
                          }
    
                          leaf route-path-is-mcast-intact {
                            type boolean;
                            description
                              "Multicast-intact path";
                          }
    
                          leaf route-path-is-ucmp-path {
                            type boolean;
                            description
                              "UCMP path";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf lsa-type {
                            type uint8;
                            description
                              "LSA type, see RFC2328 etc.";
                          }
    
                          leaf area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf area-format {
                            type boolean;
                            description
                              "Area format IP or uint32";
                          }
    
                          leaf route-path-id {
                            type uint32;
                            description
                              "Path ID of path";
                          }
    
                          leaf route-path-is-rsvp-te-path {
                            type boolean;
                            description
                              "RSVP-TE path";
                          }
    
                          leaf route-path-is-sr-te-path {
                            type boolean;
                            description
                              "SR-TE path";
                          }
    
                          leaf route-path-is-sr-excl-path {
                            type boolean;
                            description
                              "SR Excl TE path";
                          }
    
                          leaf route-path-is-sr-te-sspf-path {
                            type boolean;
                            description
                              "SR-TE SSPF path";
                          }
    
                          leaf weight {
                            type uint32;
                            description
                              "Path Weight";
                          }
    
                          list neighbor-next-hop {
                            description
                              "NeighborNextHop";
                            leaf neighbor-next-hop-value-type {
                              type Ospf-sh-nnh-val-types;
                              description
                                "NeighborNextHopValueType";
                            }
    
                            leaf neighbor-next-hop-ip-addr {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                              }
                              type inet:ipv4-address;
                              description
                                "Neighbor NextHop IP Address";
                            }
    
                            leaf neighbor-next-hop-intf-index {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                              }
                              type uint32;
                              description
                                "Neighbor NextHop Interface Index";
                            }
                          }  // list neighbor-next-hop
                        }  // list route-path
                      }  // list local-route
                    }  // container local-routes
    
                    container route-areas {
                      description
                        "OSPF Area Route Table";
                      list route-area {
                        key "area-id";
                        description
                          "OSPF Area Route";
                        container multicast-intact-backup-route-areas {
                          description
                            "OSPF Route Table Including Multicast Intace
    Backup Paths in an area";
                          list multicast-intact-backup-route-area {
                            description
                              "OSPF route including Multicast intact backup
    paths";
                            leaf prefix {
                              type inet:ipv4-address-no-zone;
                              description
                                "IPv4 Prefix";
                            }
    
                            leaf prefix-length {
                              type Ospf-prefix-length;
                              description
                                "Length of the subnet prefix";
                            }
    
                            container route-info {
                              description
                                "Route information";
                              container route-update-time {
                                description
                                  "Last time updated";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-update-time
    
                              container route-fail-time {
                                description
                                  "Last time update failed";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-fail-time
    
                              leaf route-area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf route-te-metric {
                                type uint32;
                                description
                                  "TE metric";
                              }
    
                              leaf route-rib-version {
                                type uint32;
                                description
                                  "RIB version";
                              }
    
                              leaf route-spf-version {
                                type uint64;
                                description
                                  "SPF version";
                              }
    
                              leaf route-forward-distance {
                                type uint32;
                                description
                                  "Forward distance";
                              }
    
                              leaf route-source {
                                type uint16;
                                description
                                  "Protocol source";
                              }
    
                              leaf route-spf-priority {
                                type uint8;
                                description
                                  "SPF priority";
                              }
    
                              leaf route-auto-excluded {
                                type boolean;
                                description
                                  "If true, exclude from TE paths";
                              }
    
                              leaf route-srte-prefix-registered {
                                type boolean;
                                description
                                  "If true, SRTE registered prefix route";
                              }
    
                              leaf route-srte-nbr-registered {
                                type uint16;
                                description
                                  "SRTE registered neigbhor count on route";
                              }
    
                              leaf route-label-type {
                                type uint8;
                                description
                                  "Type of route label";
                              }
    
                              leaf route-label {
                                type uint32;
                                description
                                  "The route SPF label";
                              }
    
                              leaf route-sspf-label {
                                type uint32;
                                description
                                  "The route SSPF label";
                              }
                            }  // container route-info
    
                            leaf route-prefix {
                              type inet:ipv4-address;
                              description
                                "IPv4 Route Prefix";
                            }
    
                            leaf route-prefix-length {
                              type uint32;
                              description
                                "Prefix length";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf route-type {
                              type Ospf-route;
                              description
                                "OSPF route type, whether intra-area, inter-area
    or external route";
                            }
    
                            leaf route-connected {
                              type boolean;
                              description
                                "If true, connected route";
                            }
    
                            list route-path {
                              description
                                "List of paths to this route";
                              container route-backup-path {
                                description
                                  "Backup Path Info";
                                leaf backup-route-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Next hop Interface";
                                }
    
                                leaf backup-route-next-hop-address {
                                  type inet:ipv4-address;
                                  description
                                    "Nexthop IP address";
                                }
    
                                leaf backup-route-source {
                                  type inet:ipv4-address;
                                  description
                                    "IP address of source of route";
                                }
    
                                leaf backup-metric {
                                  type uint32;
                                  description
                                    "Metric";
                                }
    
                                leaf primary-path {
                                  type boolean;
                                  description
                                    "Whether this is also a Primary Path";
                                }
    
                                leaf line-card-disjoint {
                                  type boolean;
                                  description
                                    "Whether this is a Line Card Disjoint path";
                                }
    
                                leaf downstream {
                                  type boolean;
                                  description
                                    "Whether this is a downstream path";
                                }
    
                                leaf node-protect {
                                  type boolean;
                                  description
                                    "Whether this is a Node Protect path";
                                }
    
                                leaf srlg-disjoint {
                                  type boolean;
                                  description
                                    "Whether this is a SRLG Disjoint path";
                                }
    
                                leaf weighted-srlg {
                                  type boolean;
                                  description
                                    "Whether this is a Weighted SRLG path";
                                }
    
                                leaf lfa-type {
                                  type Lfa;
                                  description
                                    "LFA type";
                                }
    
                                leaf backup-remote-lfa {
                                  type inet:ipv4-address;
                                  description
                                    "IP address of remote LFA";
                                }
    
                                leaf backup-repair-list-size {
                                  type uint32;
                                  description
                                    "Repair List Size";
                                }
    
                                leaf backup-tunnel-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Backup Tunnel Interface";
                                }
    
                                leaf interface-disjoint {
                                  type boolean;
                                  description
                                    "Whether this is a Interface Disjoint path";
                                }
    
                                list backup-repair {
                                  max-elements
                                    12;
                                  description
                                    "Backup Repair List";
                                  leaf repair-element-id {
                                    type inet:ipv4-address;
                                    description
                                      "ID of the Repair Element";
                                  }
    
                                  leaf repair-label {
                                    type uint32;
                                    description
                                      "Label of Repair Element";
                                  }
    
                                  leaf repair-element-type {
                                    type uint32;
                                    description
                                      "Type of the Repair Element";
                                  }
                                }  // list backup-repair
                              }  // container route-backup-path
    
                              container sr-microloop-avoidance-path {
                                description
                                  "SR Microloop avoidance Path Info";
                                leaf microloop-repair-list-size {
                                  type uint32;
                                  description
                                    "Repair List Size for Microloop";
                                }
    
                                leaf microloop-tunnel-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Tunnel Interface name for Microloop";
                                }
    
                                leaf microloop-strict-spf {
                                  type boolean;
                                  description
                                    "Strict SPF SID for Microloop";
                                }
    
                                list microloop-repair {
                                  max-elements
                                    12;
                                  description
                                    "Repair List for Microloop";
                                  leaf repair-element-id {
                                    type inet:ipv4-address;
                                    description
                                      "ID of the Repair Element";
                                  }
    
                                  leaf repair-label {
                                    type uint32;
                                    description
                                      "Label of Repair Element";
                                  }
    
                                  leaf repair-element-type {
                                    type uint32;
                                    description
                                      "Type of the Repair Element";
                                  }
                                }  // list microloop-repair
                              }  // container sr-microloop-avoidance-path
    
                              leaf route-interface-name {
                                type xr:Interface-name;
                                description
                                  "Next hop Interface";
                              }
    
                              leaf route-interface-snmp-index {
                                type uint32;
                                description
                                  "SNMP index of the Interface";
                              }
    
                              leaf route-next-hop-address {
                                type inet:ipv4-address;
                                description
                                  "Nexthop IP address";
                              }
    
                              leaf route-source {
                                type inet:ipv4-address;
                                description
                                  "IP address of source of route";
                              }
    
                              leaf route-lsaid {
                                type inet:ipv4-address;
                                description
                                  "LSA ID, see RFC2328";
                              }
    
                              leaf route-path-is-mcast-intact {
                                type boolean;
                                description
                                  "Multicast-intact path";
                              }
    
                              leaf route-path-is-ucmp-path {
                                type boolean;
                                description
                                  "UCMP path";
                              }
    
                              leaf route-metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              leaf route-path-id {
                                type uint32;
                                description
                                  "Path ID of path";
                              }
    
                              leaf lsa-type {
                                type uint8;
                                description
                                  "LSA type, see RFC2328 etc.";
                              }
    
                              leaf area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf area-format {
                                type boolean;
                                description
                                  "Area format IP or uint32";
                              }
    
                              leaf route-path-is-rsvp-te-path {
                                type boolean;
                                description
                                  "RSVP-TE path";
                              }
    
                              leaf route-path-is-sr-te-path {
                                type boolean;
                                description
                                  "SR-TE path";
                              }
    
                              leaf route-path-is-sr-excl-path {
                                type boolean;
                                description
                                  "SR Excl TE path";
                              }
    
                              leaf route-path-is-sr-te-sspf-path {
                                type boolean;
                                description
                                  "SR-TE SSPF path";
                              }
    
                              list neighbor-next-hop {
                                description
                                  "NeighborNextHop";
                                leaf neighbor-next-hop-value-type {
                                  type Ospf-sh-nnh-val-types;
                                  description
                                    "NeighborNextHopValueType";
                                }
    
                                leaf neighbor-next-hop-ip-addr {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                  }
                                  type inet:ipv4-address;
                                  description
                                    "Neighbor NextHop IP Address";
                                }
    
                                leaf neighbor-next-hop-intf-index {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                  }
                                  type uint32;
                                  description
                                    "Neighbor NextHop Interface Index";
                                }
                              }  // list neighbor-next-hop
                            }  // list route-path
                          }  // list multicast-intact-backup-route-area
                        }  // container multicast-intact-backup-route-areas
    
                        container connected-route-areas {
                          description
                            "OSPF Connected Route Table in an area";
                          list connected-route-area {
                            description
                              "Connected route";
                            leaf prefix {
                              type inet:ipv4-address-no-zone;
                              description
                                "IPv4 Prefix";
                            }
    
                            leaf prefix-length {
                              type Ospf-prefix-length;
                              description
                                "Length of the subnet prefix";
                            }
    
                            container route-info {
                              description
                                "Route information";
                              container route-update-time {
                                description
                                  "Last time updated";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-update-time
    
                              container route-fail-time {
                                description
                                  "Last time update failed";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-fail-time
    
                              leaf route-area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf route-te-metric {
                                type uint32;
                                description
                                  "TE metric";
                              }
    
                              leaf route-rib-version {
                                type uint32;
                                description
                                  "RIB version";
                              }
    
                              leaf route-spf-version {
                                type uint64;
                                description
                                  "SPF version";
                              }
    
                              leaf route-forward-distance {
                                type uint32;
                                description
                                  "Forward distance";
                              }
    
                              leaf route-source {
                                type uint16;
                                description
                                  "Protocol source";
                              }
    
                              leaf route-spf-priority {
                                type uint8;
                                description
                                  "SPF priority";
                              }
    
                              leaf route-auto-excluded {
                                type boolean;
                                description
                                  "If true, exclude from TE paths";
                              }
    
                              leaf route-srte-prefix-registered {
                                type boolean;
                                description
                                  "If true, SRTE registered prefix route";
                              }
    
                              leaf route-srte-nbr-registered {
                                type uint16;
                                description
                                  "SRTE registered neigbhor count on route";
                              }
    
                              leaf route-label-type {
                                type uint8;
                                description
                                  "Type of route label";
                              }
    
                              leaf route-label {
                                type uint32;
                                description
                                  "The route SPF label";
                              }
    
                              leaf route-sspf-label {
                                type uint32;
                                description
                                  "The route SSPF label";
                              }
                            }  // container route-info
    
                            leaf route-prefix {
                              type inet:ipv4-address;
                              description
                                "IPv4 Route Prefix";
                            }
    
                            leaf route-prefix-length {
                              type uint32;
                              description
                                "Prefix length";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf route-type {
                              type Ospf-route;
                              description
                                "OSPF route type, whether intra-area, inter-area
    or external route";
                            }
    
                            leaf route-connected {
                              type boolean;
                              description
                                "If true, connected route";
                            }
    
                            list route-path {
                              description
                                "List of paths to this route";
                              container sr-microloop-avoidance-path {
                                description
                                  "SR Microloop avoidance Path Info";
                                leaf microloop-repair-list-size {
                                  type uint32;
                                  description
                                    "Repair List Size for Microloop";
                                }
    
                                leaf microloop-tunnel-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Tunnel Interface name for Microloop";
                                }
    
                                leaf microloop-strict-spf {
                                  type boolean;
                                  description
                                    "Strict SPF SID for Microloop";
                                }
    
                                list microloop-repair {
                                  max-elements
                                    12;
                                  description
                                    "Repair List for Microloop";
                                  leaf repair-element-id {
                                    type inet:ipv4-address;
                                    description
                                      "ID of the Repair Element";
                                  }
    
                                  leaf repair-label {
                                    type uint32;
                                    description
                                      "Label of Repair Element";
                                  }
    
                                  leaf repair-element-type {
                                    type uint32;
                                    description
                                      "Type of the Repair Element";
                                  }
                                }  // list microloop-repair
                              }  // container sr-microloop-avoidance-path
    
                              leaf route-interface-name {
                                type xr:Interface-name;
                                description
                                  "Next hop Interface";
                              }
    
                              leaf route-interface-snmp-index {
                                type uint32;
                                description
                                  "SNMP index of th Interface";
                              }
    
                              leaf route-next-hop-address {
                                type inet:ipv4-address;
                                description
                                  "Nexthop IP address";
                              }
    
                              leaf route-source {
                                type inet:ipv4-address;
                                description
                                  "IP address of source of route";
                              }
    
                              leaf route-lsaid {
                                type inet:ipv4-address;
                                description
                                  "LSA ID, see RFC2328";
                              }
    
                              leaf route-path-is-mcast-intact {
                                type boolean;
                                description
                                  "Multicast-intact path";
                              }
    
                              leaf route-path-is-ucmp-path {
                                type boolean;
                                description
                                  "UCMP path";
                              }
    
                              leaf route-metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              leaf lsa-type {
                                type uint8;
                                description
                                  "LSA type, see RFC2328 etc.";
                              }
    
                              leaf area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf area-format {
                                type boolean;
                                description
                                  "Area format IP or uint32";
                              }
    
                              leaf route-path-id {
                                type uint32;
                                description
                                  "Path ID of path";
                              }
    
                              leaf route-path-is-rsvp-te-path {
                                type boolean;
                                description
                                  "RSVP-TE path";
                              }
    
                              leaf route-path-is-sr-te-path {
                                type boolean;
                                description
                                  "SR-TE path";
                              }
    
                              leaf route-path-is-sr-excl-path {
                                type boolean;
                                description
                                  "SR Excl TE path";
                              }
    
                              leaf route-path-is-sr-te-sspf-path {
                                type boolean;
                                description
                                  "SR-TE SSPF path";
                              }
    
                              leaf weight {
                                type uint32;
                                description
                                  "Path Weight";
                              }
    
                              list neighbor-next-hop {
                                description
                                  "NeighborNextHop";
                                leaf neighbor-next-hop-value-type {
                                  type Ospf-sh-nnh-val-types;
                                  description
                                    "NeighborNextHopValueType";
                                }
    
                                leaf neighbor-next-hop-ip-addr {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                  }
                                  type inet:ipv4-address;
                                  description
                                    "Neighbor NextHop IP Address";
                                }
    
                                leaf neighbor-next-hop-intf-index {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                  }
                                  type uint32;
                                  description
                                    "Neighbor NextHop Interface Index";
                                }
                              }  // list neighbor-next-hop
                            }  // list route-path
                          }  // list connected-route-area
                        }  // container connected-route-areas
    
                        container backup-route-areas {
                          description
                            "OSPF Route Table Including Backup Paths in an
    area";
                          list backup-route-area {
                            description
                              "OSPF route including backup paths";
                            leaf prefix {
                              type inet:ipv4-address-no-zone;
                              description
                                "IPv4 Prefix";
                            }
    
                            leaf prefix-length {
                              type Ospf-prefix-length;
                              description
                                "Length of the subnet prefix";
                            }
    
                            container route-info {
                              description
                                "Route information";
                              container route-update-time {
                                description
                                  "Last time updated";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-update-time
    
                              container route-fail-time {
                                description
                                  "Last time update failed";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-fail-time
    
                              leaf route-area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf route-te-metric {
                                type uint32;
                                description
                                  "TE metric";
                              }
    
                              leaf route-rib-version {
                                type uint32;
                                description
                                  "RIB version";
                              }
    
                              leaf route-spf-version {
                                type uint64;
                                description
                                  "SPF version";
                              }
    
                              leaf route-forward-distance {
                                type uint32;
                                description
                                  "Forward distance";
                              }
    
                              leaf route-source {
                                type uint16;
                                description
                                  "Protocol source";
                              }
    
                              leaf route-spf-priority {
                                type uint8;
                                description
                                  "SPF priority";
                              }
    
                              leaf route-auto-excluded {
                                type boolean;
                                description
                                  "If true, exclude from TE paths";
                              }
    
                              leaf route-srte-prefix-registered {
                                type boolean;
                                description
                                  "If true, SRTE registered prefix route";
                              }
    
                              leaf route-srte-nbr-registered {
                                type uint16;
                                description
                                  "SRTE registered neigbhor count on route";
                              }
    
                              leaf route-label-type {
                                type uint8;
                                description
                                  "Type of route label";
                              }
    
                              leaf route-label {
                                type uint32;
                                description
                                  "The route SPF label";
                              }
    
                              leaf route-sspf-label {
                                type uint32;
                                description
                                  "The route SSPF label";
                              }
                            }  // container route-info
    
                            leaf route-prefix {
                              type inet:ipv4-address;
                              description
                                "IPv4 Route Prefix";
                            }
    
                            leaf route-prefix-length {
                              type uint32;
                              description
                                "Prefix length";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf route-type {
                              type Ospf-route;
                              description
                                "OSPF route type, whether intra-area, inter-area
    or external route";
                            }
    
                            leaf route-connected {
                              type boolean;
                              description
                                "If true, connected route";
                            }
    
                            list route-path {
                              description
                                "List of paths to this route";
                              container route-backup-path {
                                description
                                  "Backup Path Info";
                                leaf backup-route-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Next hop Interface";
                                }
    
                                leaf backup-route-next-hop-address {
                                  type inet:ipv4-address;
                                  description
                                    "Nexthop IP address";
                                }
    
                                leaf backup-route-source {
                                  type inet:ipv4-address;
                                  description
                                    "IP address of source of route";
                                }
    
                                leaf backup-metric {
                                  type uint32;
                                  description
                                    "Metric";
                                }
    
                                leaf primary-path {
                                  type boolean;
                                  description
                                    "Whether this is also a Primary Path";
                                }
    
                                leaf line-card-disjoint {
                                  type boolean;
                                  description
                                    "Whether this is a Line Card Disjoint path";
                                }
    
                                leaf downstream {
                                  type boolean;
                                  description
                                    "Whether this is a downstream path";
                                }
    
                                leaf node-protect {
                                  type boolean;
                                  description
                                    "Whether this is a Node Protect path";
                                }
    
                                leaf srlg-disjoint {
                                  type boolean;
                                  description
                                    "Whether this is a SRLG Disjoint path";
                                }
    
                                leaf weighted-srlg {
                                  type boolean;
                                  description
                                    "Whether this is a Weighted SRLG path";
                                }
    
                                leaf lfa-type {
                                  type Lfa;
                                  description
                                    "LFA type";
                                }
    
                                leaf backup-remote-lfa {
                                  type inet:ipv4-address;
                                  description
                                    "IP address of remote LFA";
                                }
    
                                leaf backup-repair-list-size {
                                  type uint32;
                                  description
                                    "Repair List Size";
                                }
    
                                leaf backup-tunnel-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Backup Tunnel Interface";
                                }
    
                                leaf interface-disjoint {
                                  type boolean;
                                  description
                                    "Whether this is a Interface Disjoint path";
                                }
    
                                list backup-repair {
                                  max-elements
                                    12;
                                  description
                                    "Backup Repair List";
                                  leaf repair-element-id {
                                    type inet:ipv4-address;
                                    description
                                      "ID of the Repair Element";
                                  }
    
                                  leaf repair-label {
                                    type uint32;
                                    description
                                      "Label of Repair Element";
                                  }
    
                                  leaf repair-element-type {
                                    type uint32;
                                    description
                                      "Type of the Repair Element";
                                  }
                                }  // list backup-repair
                              }  // container route-backup-path
    
                              container sr-microloop-avoidance-path {
                                description
                                  "SR Microloop avoidance Path Info";
                                leaf microloop-repair-list-size {
                                  type uint32;
                                  description
                                    "Repair List Size for Microloop";
                                }
    
                                leaf microloop-tunnel-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Tunnel Interface name for Microloop";
                                }
    
                                leaf microloop-strict-spf {
                                  type boolean;
                                  description
                                    "Strict SPF SID for Microloop";
                                }
    
                                list microloop-repair {
                                  max-elements
                                    12;
                                  description
                                    "Repair List for Microloop";
                                  leaf repair-element-id {
                                    type inet:ipv4-address;
                                    description
                                      "ID of the Repair Element";
                                  }
    
                                  leaf repair-label {
                                    type uint32;
                                    description
                                      "Label of Repair Element";
                                  }
    
                                  leaf repair-element-type {
                                    type uint32;
                                    description
                                      "Type of the Repair Element";
                                  }
                                }  // list microloop-repair
                              }  // container sr-microloop-avoidance-path
    
                              leaf route-interface-name {
                                type xr:Interface-name;
                                description
                                  "Next hop Interface";
                              }
    
                              leaf route-interface-snmp-index {
                                type uint32;
                                description
                                  "SNMP index of the Interface";
                              }
    
                              leaf route-next-hop-address {
                                type inet:ipv4-address;
                                description
                                  "Nexthop IP address";
                              }
    
                              leaf route-source {
                                type inet:ipv4-address;
                                description
                                  "IP address of source of route";
                              }
    
                              leaf route-lsaid {
                                type inet:ipv4-address;
                                description
                                  "LSA ID, see RFC2328";
                              }
    
                              leaf route-path-is-mcast-intact {
                                type boolean;
                                description
                                  "Multicast-intact path";
                              }
    
                              leaf route-path-is-ucmp-path {
                                type boolean;
                                description
                                  "UCMP path";
                              }
    
                              leaf route-metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              leaf route-path-id {
                                type uint32;
                                description
                                  "Path ID of path";
                              }
    
                              leaf lsa-type {
                                type uint8;
                                description
                                  "LSA type, see RFC2328 etc.";
                              }
    
                              leaf area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf area-format {
                                type boolean;
                                description
                                  "Area format IP or uint32";
                              }
    
                              leaf route-path-is-rsvp-te-path {
                                type boolean;
                                description
                                  "RSVP-TE path";
                              }
    
                              leaf route-path-is-sr-te-path {
                                type boolean;
                                description
                                  "SR-TE path";
                              }
    
                              leaf route-path-is-sr-excl-path {
                                type boolean;
                                description
                                  "SR Excl TE path";
                              }
    
                              leaf route-path-is-sr-te-sspf-path {
                                type boolean;
                                description
                                  "SR-TE SSPF path";
                              }
    
                              list neighbor-next-hop {
                                description
                                  "NeighborNextHop";
                                leaf neighbor-next-hop-value-type {
                                  type Ospf-sh-nnh-val-types;
                                  description
                                    "NeighborNextHopValueType";
                                }
    
                                leaf neighbor-next-hop-ip-addr {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                  }
                                  type inet:ipv4-address;
                                  description
                                    "Neighbor NextHop IP Address";
                                }
    
                                leaf neighbor-next-hop-intf-index {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                  }
                                  type uint32;
                                  description
                                    "Neighbor NextHop Interface Index";
                                }
                              }  // list neighbor-next-hop
                            }  // list route-path
                          }  // list backup-route-area
                        }  // container backup-route-areas
    
                        container route-area-informations {
                          description
                            "OSPF Area Route Entry";
                          list route-area-information {
                            description
                              "An OSPF route";
                            leaf prefix {
                              type inet:ipv4-address-no-zone;
                              description
                                "IPv4 Prefix";
                            }
    
                            leaf prefix-length {
                              type Ospf-prefix-length;
                              description
                                "Length of the subnet prefix";
                            }
    
                            container route-info {
                              description
                                "Route information";
                              container route-update-time {
                                description
                                  "Last time updated";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-update-time
    
                              container route-fail-time {
                                description
                                  "Last time update failed";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-fail-time
    
                              leaf route-area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf route-te-metric {
                                type uint32;
                                description
                                  "TE metric";
                              }
    
                              leaf route-rib-version {
                                type uint32;
                                description
                                  "RIB version";
                              }
    
                              leaf route-spf-version {
                                type uint64;
                                description
                                  "SPF version";
                              }
    
                              leaf route-forward-distance {
                                type uint32;
                                description
                                  "Forward distance";
                              }
    
                              leaf route-source {
                                type uint16;
                                description
                                  "Protocol source";
                              }
    
                              leaf route-spf-priority {
                                type uint8;
                                description
                                  "SPF priority";
                              }
    
                              leaf route-auto-excluded {
                                type boolean;
                                description
                                  "If true, exclude from TE paths";
                              }
    
                              leaf route-srte-prefix-registered {
                                type boolean;
                                description
                                  "If true, SRTE registered prefix route";
                              }
    
                              leaf route-srte-nbr-registered {
                                type uint16;
                                description
                                  "SRTE registered neigbhor count on route";
                              }
    
                              leaf route-label-type {
                                type uint8;
                                description
                                  "Type of route label";
                              }
    
                              leaf route-label {
                                type uint32;
                                description
                                  "The route SPF label";
                              }
    
                              leaf route-sspf-label {
                                type uint32;
                                description
                                  "The route SSPF label";
                              }
                            }  // container route-info
    
                            leaf route-prefix {
                              type inet:ipv4-address;
                              description
                                "IPv4 Route Prefix";
                            }
    
                            leaf route-prefix-length {
                              type uint32;
                              description
                                "Prefix length";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf route-type {
                              type Ospf-route;
                              description
                                "OSPF route type, whether intra-area, inter-area
    or external route";
                            }
    
                            leaf route-connected {
                              type boolean;
                              description
                                "If true, connected route";
                            }
    
                            list route-path {
                              description
                                "List of paths to this route";
                              container sr-microloop-avoidance-path {
                                description
                                  "SR Microloop avoidance Path Info";
                                leaf microloop-repair-list-size {
                                  type uint32;
                                  description
                                    "Repair List Size for Microloop";
                                }
    
                                leaf microloop-tunnel-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Tunnel Interface name for Microloop";
                                }
    
                                leaf microloop-strict-spf {
                                  type boolean;
                                  description
                                    "Strict SPF SID for Microloop";
                                }
    
                                list microloop-repair {
                                  max-elements
                                    12;
                                  description
                                    "Repair List for Microloop";
                                  leaf repair-element-id {
                                    type inet:ipv4-address;
                                    description
                                      "ID of the Repair Element";
                                  }
    
                                  leaf repair-label {
                                    type uint32;
                                    description
                                      "Label of Repair Element";
                                  }
    
                                  leaf repair-element-type {
                                    type uint32;
                                    description
                                      "Type of the Repair Element";
                                  }
                                }  // list microloop-repair
                              }  // container sr-microloop-avoidance-path
    
                              leaf route-interface-name {
                                type xr:Interface-name;
                                description
                                  "Next hop Interface";
                              }
    
                              leaf route-interface-snmp-index {
                                type uint32;
                                description
                                  "SNMP index of th Interface";
                              }
    
                              leaf route-next-hop-address {
                                type inet:ipv4-address;
                                description
                                  "Nexthop IP address";
                              }
    
                              leaf route-source {
                                type inet:ipv4-address;
                                description
                                  "IP address of source of route";
                              }
    
                              leaf route-lsaid {
                                type inet:ipv4-address;
                                description
                                  "LSA ID, see RFC2328";
                              }
    
                              leaf route-path-is-mcast-intact {
                                type boolean;
                                description
                                  "Multicast-intact path";
                              }
    
                              leaf route-path-is-ucmp-path {
                                type boolean;
                                description
                                  "UCMP path";
                              }
    
                              leaf route-metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              leaf lsa-type {
                                type uint8;
                                description
                                  "LSA type, see RFC2328 etc.";
                              }
    
                              leaf area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf area-format {
                                type boolean;
                                description
                                  "Area format IP or uint32";
                              }
    
                              leaf route-path-id {
                                type uint32;
                                description
                                  "Path ID of path";
                              }
    
                              leaf route-path-is-rsvp-te-path {
                                type boolean;
                                description
                                  "RSVP-TE path";
                              }
    
                              leaf route-path-is-sr-te-path {
                                type boolean;
                                description
                                  "SR-TE path";
                              }
    
                              leaf route-path-is-sr-excl-path {
                                type boolean;
                                description
                                  "SR Excl TE path";
                              }
    
                              leaf route-path-is-sr-te-sspf-path {
                                type boolean;
                                description
                                  "SR-TE SSPF path";
                              }
    
                              leaf weight {
                                type uint32;
                                description
                                  "Path Weight";
                              }
    
                              list neighbor-next-hop {
                                description
                                  "NeighborNextHop";
                                leaf neighbor-next-hop-value-type {
                                  type Ospf-sh-nnh-val-types;
                                  description
                                    "NeighborNextHopValueType";
                                }
    
                                leaf neighbor-next-hop-ip-addr {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                  }
                                  type inet:ipv4-address;
                                  description
                                    "Neighbor NextHop IP Address";
                                }
    
                                leaf neighbor-next-hop-intf-index {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                  }
                                  type uint32;
                                  description
                                    "Neighbor NextHop Interface Index";
                                }
                              }  // list neighbor-next-hop
                            }  // list route-path
                          }  // list route-area-information
                        }  // container route-area-informations
    
                        container multicast-intact-route-areas {
                          description
                            "OSPF Area multicast-intact included route
    entry";
                          list multicast-intact-route-area {
                            description
                              "A Muliticast OSPF route in an area";
                            leaf prefix {
                              type inet:ipv4-address-no-zone;
                              description
                                "IPv4 Prefix";
                            }
    
                            leaf prefix-length {
                              type Ospf-prefix-length;
                              description
                                "Length of the subnet prefix";
                            }
    
                            container route-info {
                              description
                                "Route information";
                              container route-update-time {
                                description
                                  "Last time updated";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-update-time
    
                              container route-fail-time {
                                description
                                  "Last time update failed";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-fail-time
    
                              leaf route-area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf route-te-metric {
                                type uint32;
                                description
                                  "TE metric";
                              }
    
                              leaf route-rib-version {
                                type uint32;
                                description
                                  "RIB version";
                              }
    
                              leaf route-spf-version {
                                type uint64;
                                description
                                  "SPF version";
                              }
    
                              leaf route-forward-distance {
                                type uint32;
                                description
                                  "Forward distance";
                              }
    
                              leaf route-source {
                                type uint16;
                                description
                                  "Protocol source";
                              }
    
                              leaf route-spf-priority {
                                type uint8;
                                description
                                  "SPF priority";
                              }
    
                              leaf route-auto-excluded {
                                type boolean;
                                description
                                  "If true, exclude from TE paths";
                              }
    
                              leaf route-srte-prefix-registered {
                                type boolean;
                                description
                                  "If true, SRTE registered prefix route";
                              }
    
                              leaf route-srte-nbr-registered {
                                type uint16;
                                description
                                  "SRTE registered neigbhor count on route";
                              }
    
                              leaf route-label-type {
                                type uint8;
                                description
                                  "Type of route label";
                              }
    
                              leaf route-label {
                                type uint32;
                                description
                                  "The route SPF label";
                              }
    
                              leaf route-sspf-label {
                                type uint32;
                                description
                                  "The route SSPF label";
                              }
                            }  // container route-info
    
                            leaf route-prefix {
                              type inet:ipv4-address;
                              description
                                "IPv4 Route Prefix";
                            }
    
                            leaf route-prefix-length {
                              type uint32;
                              description
                                "Prefix length";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf route-type {
                              type Ospf-route;
                              description
                                "OSPF route type, whether intra-area, inter-area
    or external route";
                            }
    
                            leaf route-connected {
                              type boolean;
                              description
                                "If true, connected route";
                            }
    
                            list route-path {
                              description
                                "List of paths to this route";
                              container sr-microloop-avoidance-path {
                                description
                                  "SR Microloop avoidance Path Info";
                                leaf microloop-repair-list-size {
                                  type uint32;
                                  description
                                    "Repair List Size for Microloop";
                                }
    
                                leaf microloop-tunnel-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Tunnel Interface name for Microloop";
                                }
    
                                leaf microloop-strict-spf {
                                  type boolean;
                                  description
                                    "Strict SPF SID for Microloop";
                                }
    
                                list microloop-repair {
                                  max-elements
                                    12;
                                  description
                                    "Repair List for Microloop";
                                  leaf repair-element-id {
                                    type inet:ipv4-address;
                                    description
                                      "ID of the Repair Element";
                                  }
    
                                  leaf repair-label {
                                    type uint32;
                                    description
                                      "Label of Repair Element";
                                  }
    
                                  leaf repair-element-type {
                                    type uint32;
                                    description
                                      "Type of the Repair Element";
                                  }
                                }  // list microloop-repair
                              }  // container sr-microloop-avoidance-path
    
                              leaf route-interface-name {
                                type xr:Interface-name;
                                description
                                  "Next hop Interface";
                              }
    
                              leaf route-interface-snmp-index {
                                type uint32;
                                description
                                  "SNMP index of th Interface";
                              }
    
                              leaf route-next-hop-address {
                                type inet:ipv4-address;
                                description
                                  "Nexthop IP address";
                              }
    
                              leaf route-source {
                                type inet:ipv4-address;
                                description
                                  "IP address of source of route";
                              }
    
                              leaf route-lsaid {
                                type inet:ipv4-address;
                                description
                                  "LSA ID, see RFC2328";
                              }
    
                              leaf route-path-is-mcast-intact {
                                type boolean;
                                description
                                  "Multicast-intact path";
                              }
    
                              leaf route-path-is-ucmp-path {
                                type boolean;
                                description
                                  "UCMP path";
                              }
    
                              leaf route-metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              leaf lsa-type {
                                type uint8;
                                description
                                  "LSA type, see RFC2328 etc.";
                              }
    
                              leaf area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf area-format {
                                type boolean;
                                description
                                  "Area format IP or uint32";
                              }
    
                              leaf route-path-id {
                                type uint32;
                                description
                                  "Path ID of path";
                              }
    
                              leaf route-path-is-rsvp-te-path {
                                type boolean;
                                description
                                  "RSVP-TE path";
                              }
    
                              leaf route-path-is-sr-te-path {
                                type boolean;
                                description
                                  "SR-TE path";
                              }
    
                              leaf route-path-is-sr-excl-path {
                                type boolean;
                                description
                                  "SR Excl TE path";
                              }
    
                              leaf route-path-is-sr-te-sspf-path {
                                type boolean;
                                description
                                  "SR-TE SSPF path";
                              }
    
                              leaf weight {
                                type uint32;
                                description
                                  "Path Weight";
                              }
    
                              list neighbor-next-hop {
                                description
                                  "NeighborNextHop";
                                leaf neighbor-next-hop-value-type {
                                  type Ospf-sh-nnh-val-types;
                                  description
                                    "NeighborNextHopValueType";
                                }
    
                                leaf neighbor-next-hop-ip-addr {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                  }
                                  type inet:ipv4-address;
                                  description
                                    "Neighbor NextHop IP Address";
                                }
    
                                leaf neighbor-next-hop-intf-index {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                  }
                                  type uint32;
                                  description
                                    "Neighbor NextHop Interface Index";
                                }
                              }  // list neighbor-next-hop
                            }  // list route-path
                          }  // list multicast-intact-route-area
                        }  // container multicast-intact-route-areas
    
                        container summary-area-information {
                          description
                            "OSPF route summary statistics";
                          container failure-time {
                            description
                              "Last time failed";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container failure-time
    
                          container common {
                            description
                              "OSPF route summary Information";
                            leaf external-type1s {
                              type uint32;
                              description
                                "External type 1 count";
                            }
    
                            leaf external-type2s {
                              type uint32;
                              description
                                "External type 2 count";
                            }
    
                            leaf external-nssa-type1s {
                              type uint32;
                              description
                                "External NSSA type 1 count";
                            }
    
                            leaf external-nssa-type2s {
                              type uint32;
                              description
                                "External NSSA type 2 count";
                            }
    
                            leaf inter-areas {
                              type uint32;
                              description
                                "Inter-area count";
                            }
    
                            leaf intra-areas {
                              type uint32;
                              description
                                "Intra-area count";
                            }
    
                            leaf total {
                              type uint32;
                              description
                                "Total count";
                            }
                          }  // container common
    
                          leaf failures {
                            type uint32;
                            description
                              "RIB failure count";
                          }
    
                          leaf failure-address {
                            type inet:ipv4-address;
                            description
                              "Last failed address";
                          }
                        }  // container summary-area-information
    
                        container local-route-areas {
                          description
                            "OSPF Local Route Table";
                          list local-route-area {
                            description
                              "Local route";
                            leaf prefix {
                              type inet:ipv4-address-no-zone;
                              description
                                "IPv4 Prefix";
                            }
    
                            leaf prefix-length {
                              type Ospf-prefix-length;
                              description
                                "Length of the subnet prefix";
                            }
    
                            container route-info {
                              description
                                "Route information";
                              container route-update-time {
                                description
                                  "Last time updated";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-update-time
    
                              container route-fail-time {
                                description
                                  "Last time update failed";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container route-fail-time
    
                              leaf route-area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf route-te-metric {
                                type uint32;
                                description
                                  "TE metric";
                              }
    
                              leaf route-rib-version {
                                type uint32;
                                description
                                  "RIB version";
                              }
    
                              leaf route-spf-version {
                                type uint64;
                                description
                                  "SPF version";
                              }
    
                              leaf route-forward-distance {
                                type uint32;
                                description
                                  "Forward distance";
                              }
    
                              leaf route-source {
                                type uint16;
                                description
                                  "Protocol source";
                              }
    
                              leaf route-spf-priority {
                                type uint8;
                                description
                                  "SPF priority";
                              }
    
                              leaf route-auto-excluded {
                                type boolean;
                                description
                                  "If true, exclude from TE paths";
                              }
    
                              leaf route-srte-prefix-registered {
                                type boolean;
                                description
                                  "If true, SRTE registered prefix route";
                              }
    
                              leaf route-srte-nbr-registered {
                                type uint16;
                                description
                                  "SRTE registered neigbhor count on route";
                              }
    
                              leaf route-label-type {
                                type uint8;
                                description
                                  "Type of route label";
                              }
    
                              leaf route-label {
                                type uint32;
                                description
                                  "The route SPF label";
                              }
    
                              leaf route-sspf-label {
                                type uint32;
                                description
                                  "The route SSPF label";
                              }
                            }  // container route-info
    
                            leaf route-prefix {
                              type inet:ipv4-address;
                              description
                                "IPv4 Route Prefix";
                            }
    
                            leaf route-prefix-length {
                              type uint32;
                              description
                                "Prefix length";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf route-type {
                              type Ospf-route;
                              description
                                "OSPF route type, whether intra-area, inter-area
    or external route";
                            }
    
                            leaf route-connected {
                              type boolean;
                              description
                                "If true, connected route";
                            }
    
                            list route-path {
                              description
                                "List of paths to this route";
                              container sr-microloop-avoidance-path {
                                description
                                  "SR Microloop avoidance Path Info";
                                leaf microloop-repair-list-size {
                                  type uint32;
                                  description
                                    "Repair List Size for Microloop";
                                }
    
                                leaf microloop-tunnel-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Tunnel Interface name for Microloop";
                                }
    
                                leaf microloop-strict-spf {
                                  type boolean;
                                  description
                                    "Strict SPF SID for Microloop";
                                }
    
                                list microloop-repair {
                                  max-elements
                                    12;
                                  description
                                    "Repair List for Microloop";
                                  leaf repair-element-id {
                                    type inet:ipv4-address;
                                    description
                                      "ID of the Repair Element";
                                  }
    
                                  leaf repair-label {
                                    type uint32;
                                    description
                                      "Label of Repair Element";
                                  }
    
                                  leaf repair-element-type {
                                    type uint32;
                                    description
                                      "Type of the Repair Element";
                                  }
                                }  // list microloop-repair
                              }  // container sr-microloop-avoidance-path
    
                              leaf route-interface-name {
                                type xr:Interface-name;
                                description
                                  "Next hop Interface";
                              }
    
                              leaf route-interface-snmp-index {
                                type uint32;
                                description
                                  "SNMP index of th Interface";
                              }
    
                              leaf route-next-hop-address {
                                type inet:ipv4-address;
                                description
                                  "Nexthop IP address";
                              }
    
                              leaf route-source {
                                type inet:ipv4-address;
                                description
                                  "IP address of source of route";
                              }
    
                              leaf route-lsaid {
                                type inet:ipv4-address;
                                description
                                  "LSA ID, see RFC2328";
                              }
    
                              leaf route-path-is-mcast-intact {
                                type boolean;
                                description
                                  "Multicast-intact path";
                              }
    
                              leaf route-path-is-ucmp-path {
                                type boolean;
                                description
                                  "UCMP path";
                              }
    
                              leaf route-metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              leaf lsa-type {
                                type uint8;
                                description
                                  "LSA type, see RFC2328 etc.";
                              }
    
                              leaf area-id {
                                type uint32;
                                description
                                  "Area ID";
                              }
    
                              leaf area-format {
                                type boolean;
                                description
                                  "Area format IP or uint32";
                              }
    
                              leaf route-path-id {
                                type uint32;
                                description
                                  "Path ID of path";
                              }
    
                              leaf route-path-is-rsvp-te-path {
                                type boolean;
                                description
                                  "RSVP-TE path";
                              }
    
                              leaf route-path-is-sr-te-path {
                                type boolean;
                                description
                                  "SR-TE path";
                              }
    
                              leaf route-path-is-sr-excl-path {
                                type boolean;
                                description
                                  "SR Excl TE path";
                              }
    
                              leaf route-path-is-sr-te-sspf-path {
                                type boolean;
                                description
                                  "SR-TE SSPF path";
                              }
    
                              leaf weight {
                                type uint32;
                                description
                                  "Path Weight";
                              }
    
                              list neighbor-next-hop {
                                description
                                  "NeighborNextHop";
                                leaf neighbor-next-hop-value-type {
                                  type Ospf-sh-nnh-val-types;
                                  description
                                    "NeighborNextHopValueType";
                                }
    
                                leaf neighbor-next-hop-ip-addr {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                  }
                                  type inet:ipv4-address;
                                  description
                                    "Neighbor NextHop IP Address";
                                }
    
                                leaf neighbor-next-hop-intf-index {
                                  when
                                    "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                    description
                                      "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                  }
                                  type uint32;
                                  description
                                    "Neighbor NextHop Interface Index";
                                }
                              }  // list neighbor-next-hop
                            }  // list route-path
                          }  // list local-route-area
                        }  // container local-route-areas
    
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description "Area ID";
                        }
                      }  // list route-area
                    }  // container route-areas
    
                    container route-table {
                      description
                        "OSPF Route Table";
                      list route {
                        description
                          "An OSPF route";
                        leaf prefix {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 Prefix";
                        }
    
                        leaf prefix-length {
                          type Ospf-prefix-length;
                          description
                            "Length of the subnet prefix";
                        }
    
                        container route-info {
                          description
                            "Route information";
                          container route-update-time {
                            description
                              "Last time updated";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-update-time
    
                          container route-fail-time {
                            description
                              "Last time update failed";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-fail-time
    
                          leaf route-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf route-te-metric {
                            type uint32;
                            description
                              "TE metric";
                          }
    
                          leaf route-rib-version {
                            type uint32;
                            description
                              "RIB version";
                          }
    
                          leaf route-spf-version {
                            type uint64;
                            description
                              "SPF version";
                          }
    
                          leaf route-forward-distance {
                            type uint32;
                            description
                              "Forward distance";
                          }
    
                          leaf route-source {
                            type uint16;
                            description
                              "Protocol source";
                          }
    
                          leaf route-spf-priority {
                            type uint8;
                            description
                              "SPF priority";
                          }
    
                          leaf route-auto-excluded {
                            type boolean;
                            description
                              "If true, exclude from TE paths";
                          }
    
                          leaf route-srte-prefix-registered {
                            type boolean;
                            description
                              "If true, SRTE registered prefix route";
                          }
    
                          leaf route-srte-nbr-registered {
                            type uint16;
                            description
                              "SRTE registered neigbhor count on route";
                          }
    
                          leaf route-label-type {
                            type uint8;
                            description
                              "Type of route label";
                          }
    
                          leaf route-label {
                            type uint32;
                            description
                              "The route SPF label";
                          }
    
                          leaf route-sspf-label {
                            type uint32;
                            description
                              "The route SSPF label";
                          }
                        }  // container route-info
    
                        leaf route-prefix {
                          type inet:ipv4-address;
                          description
                            "IPv4 Route Prefix";
                        }
    
                        leaf route-prefix-length {
                          type uint32;
                          description
                            "Prefix length";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf route-type {
                          type Ospf-route;
                          description
                            "OSPF route type, whether intra-area, inter-area
    or external route";
                        }
    
                        leaf route-connected {
                          type boolean;
                          description
                            "If true, connected route";
                        }
    
                        list route-path {
                          description
                            "List of paths to this route";
                          container sr-microloop-avoidance-path {
                            description
                              "SR Microloop avoidance Path Info";
                            leaf microloop-repair-list-size {
                              type uint32;
                              description
                                "Repair List Size for Microloop";
                            }
    
                            leaf microloop-tunnel-interface-name {
                              type xr:Interface-name;
                              description
                                "Tunnel Interface name for Microloop";
                            }
    
                            leaf microloop-strict-spf {
                              type boolean;
                              description
                                "Strict SPF SID for Microloop";
                            }
    
                            list microloop-repair {
                              max-elements 12;
                              description
                                "Repair List for Microloop";
                              leaf repair-element-id {
                                type inet:ipv4-address;
                                description
                                  "ID of the Repair Element";
                              }
    
                              leaf repair-label {
                                type uint32;
                                description
                                  "Label of Repair Element";
                              }
    
                              leaf repair-element-type {
                                type uint32;
                                description
                                  "Type of the Repair Element";
                              }
                            }  // list microloop-repair
                          }  // container sr-microloop-avoidance-path
    
                          leaf route-interface-name {
                            type xr:Interface-name;
                            description
                              "Next hop Interface";
                          }
    
                          leaf route-interface-snmp-index {
                            type uint32;
                            description
                              "SNMP index of th Interface";
                          }
    
                          leaf route-next-hop-address {
                            type inet:ipv4-address;
                            description
                              "Nexthop IP address";
                          }
    
                          leaf route-source {
                            type inet:ipv4-address;
                            description
                              "IP address of source of route";
                          }
    
                          leaf route-lsaid {
                            type inet:ipv4-address;
                            description
                              "LSA ID, see RFC2328";
                          }
    
                          leaf route-path-is-mcast-intact {
                            type boolean;
                            description
                              "Multicast-intact path";
                          }
    
                          leaf route-path-is-ucmp-path {
                            type boolean;
                            description
                              "UCMP path";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf lsa-type {
                            type uint8;
                            description
                              "LSA type, see RFC2328 etc.";
                          }
    
                          leaf area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf area-format {
                            type boolean;
                            description
                              "Area format IP or uint32";
                          }
    
                          leaf route-path-id {
                            type uint32;
                            description
                              "Path ID of path";
                          }
    
                          leaf route-path-is-rsvp-te-path {
                            type boolean;
                            description
                              "RSVP-TE path";
                          }
    
                          leaf route-path-is-sr-te-path {
                            type boolean;
                            description
                              "SR-TE path";
                          }
    
                          leaf route-path-is-sr-excl-path {
                            type boolean;
                            description
                              "SR Excl TE path";
                          }
    
                          leaf route-path-is-sr-te-sspf-path {
                            type boolean;
                            description
                              "SR-TE SSPF path";
                          }
    
                          leaf weight {
                            type uint32;
                            description
                              "Path Weight";
                          }
    
                          list neighbor-next-hop {
                            description
                              "NeighborNextHop";
                            leaf neighbor-next-hop-value-type {
                              type Ospf-sh-nnh-val-types;
                              description
                                "NeighborNextHopValueType";
                            }
    
                            leaf neighbor-next-hop-ip-addr {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                              }
                              type inet:ipv4-address;
                              description
                                "Neighbor NextHop IP Address";
                            }
    
                            leaf neighbor-next-hop-intf-index {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                              }
                              type uint32;
                              description
                                "Neighbor NextHop Interface Index";
                            }
                          }  // list neighbor-next-hop
                        }  // list route-path
                      }  // list route
                    }  // container route-table
    
                    container external-routes {
                      description
                        "OSPF External Route Table";
                      list external-route {
                        description
                          "This is an OSPF external route";
                        leaf prefix {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 Prefix";
                        }
    
                        leaf prefix-length {
                          type Ospf-prefix-length;
                          description
                            "Length of the subnet prefix";
                        }
    
                        container route-information {
                          description
                            "Route details";
                          container route-info {
                            description
                              "Route information";
                            container route-update-time {
                              description
                                "Last time updated";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-update-time
    
                            container route-fail-time {
                              description
                                "Last time update failed";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-fail-time
    
                            leaf route-area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf route-te-metric {
                              type uint32;
                              description
                                "TE metric";
                            }
    
                            leaf route-rib-version {
                              type uint32;
                              description
                                "RIB version";
                            }
    
                            leaf route-spf-version {
                              type uint64;
                              description
                                "SPF version";
                            }
    
                            leaf route-forward-distance {
                              type uint32;
                              description
                                "Forward distance";
                            }
    
                            leaf route-source {
                              type uint16;
                              description
                                "Protocol source";
                            }
    
                            leaf route-spf-priority {
                              type uint8;
                              description
                                "SPF priority";
                            }
    
                            leaf route-auto-excluded {
                              type boolean;
                              description
                                "If true, exclude from TE paths";
                            }
    
                            leaf route-srte-prefix-registered {
                              type boolean;
                              description
                                "If true, SRTE registered prefix route";
                            }
    
                            leaf route-srte-nbr-registered {
                              type uint16;
                              description
                                "SRTE registered neigbhor count on route";
                            }
    
                            leaf route-label-type {
                              type uint8;
                              description
                                "Type of route label";
                            }
    
                            leaf route-label {
                              type uint32;
                              description
                                "The route SPF label";
                            }
    
                            leaf route-sspf-label {
                              type uint32;
                              description
                                "The route SSPF label";
                            }
                          }  // container route-info
    
                          leaf route-prefix {
                            type inet:ipv4-address;
                            description
                              "IPv4 Route Prefix";
                          }
    
                          leaf route-prefix-length {
                            type uint32;
                            description
                              "Prefix length";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf route-type {
                            type Ospf-route;
                            description
                              "OSPF route type, whether intra-area, inter-area
    or external route";
                          }
    
                          leaf route-connected {
                            type boolean;
                            description
                              "If true, connected route";
                          }
    
                          list route-path {
                            description
                              "List of paths to this route";
                            container sr-microloop-avoidance-path {
                              description
                                "SR Microloop avoidance Path Info";
                              leaf microloop-repair-list-size {
                                type uint32;
                                description
                                  "Repair List Size for Microloop";
                              }
    
                              leaf microloop-tunnel-interface-name {
                                type xr:Interface-name;
                                description
                                  "Tunnel Interface name for Microloop";
                              }
    
                              leaf microloop-strict-spf {
                                type boolean;
                                description
                                  "Strict SPF SID for Microloop";
                              }
    
                              list microloop-repair {
                                max-elements
                                  12;
                                description
                                  "Repair List for Microloop";
                                leaf repair-element-id {
                                  type inet:ipv4-address;
                                  description
                                    "ID of the Repair Element";
                                }
    
                                leaf repair-label {
                                  type uint32;
                                  description
                                    "Label of Repair Element";
                                }
    
                                leaf repair-element-type {
                                  type uint32;
                                  description
                                    "Type of the Repair Element";
                                }
                              }  // list microloop-repair
                            }  // container sr-microloop-avoidance-path
    
                            leaf route-interface-name {
                              type xr:Interface-name;
                              description
                                "Next hop Interface";
                            }
    
                            leaf route-interface-snmp-index {
                              type uint32;
                              description
                                "SNMP index of th Interface";
                            }
    
                            leaf route-next-hop-address {
                              type inet:ipv4-address;
                              description
                                "Nexthop IP address";
                            }
    
                            leaf route-source {
                              type inet:ipv4-address;
                              description
                                "IP address of source of route";
                            }
    
                            leaf route-lsaid {
                              type inet:ipv4-address;
                              description
                                "LSA ID, see RFC2328";
                            }
    
                            leaf route-path-is-mcast-intact {
                              type boolean;
                              description
                                "Multicast-intact path";
                            }
    
                            leaf route-path-is-ucmp-path {
                              type boolean;
                              description
                                "UCMP path";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf lsa-type {
                              type uint8;
                              description
                                "LSA type, see RFC2328 etc.";
                            }
    
                            leaf area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf area-format {
                              type boolean;
                              description
                                "Area format IP or uint32";
                            }
    
                            leaf route-path-id {
                              type uint32;
                              description
                                "Path ID of path";
                            }
    
                            leaf route-path-is-rsvp-te-path {
                              type boolean;
                              description
                                "RSVP-TE path";
                            }
    
                            leaf route-path-is-sr-te-path {
                              type boolean;
                              description
                                "SR-TE path";
                            }
    
                            leaf route-path-is-sr-excl-path {
                              type boolean;
                              description
                                "SR Excl TE path";
                            }
    
                            leaf route-path-is-sr-te-sspf-path {
                              type boolean;
                              description
                                "SR-TE SSPF path";
                            }
    
                            leaf weight {
                              type uint32;
                              description
                                "Path Weight";
                            }
    
                            list neighbor-next-hop {
                              description
                                "NeighborNextHop";
                              leaf neighbor-next-hop-value-type {
                                type Ospf-sh-nnh-val-types;
                                description
                                  "NeighborNextHopValueType";
                              }
    
                              leaf neighbor-next-hop-ip-addr {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                }
                                type inet:ipv4-address;
                                description
                                  "Neighbor NextHop IP Address";
                              }
    
                              leaf neighbor-next-hop-intf-index {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                }
                                type uint32;
                                description
                                  "Neighbor NextHop Interface Index";
                              }
                            }  // list neighbor-next-hop
                          }  // list route-path
                        }  // container route-information
    
                        container protocol-name {
                          description
                            "Name of protocol from which the external route
    was redistributed";
                          leaf protocol-type {
                            type Redist-protocol;
                            description
                              "ProtocolType";
                          }
    
                          leaf isis-instance-id {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-isis'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_ISIS'";
                            }
                            type String1;
                            description
                              "ISIS instance identifier";
                          }
    
                          leaf ospf-process-id {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-ospf'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_OSPF'";
                            }
                            type String1;
                            description
                              "OSPF process identifier";
                          }
    
                          leaf bgp-as-number {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-bgp'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_BGP'";
                            }
                            type String1;
                            description
                              "BGP Autonomous System Number";
                          }
    
                          leaf eigrp-as-number {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-eigrp'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_EIGRP'";
                            }
                            type String1;
                            description
                              "Autonomous System Number";
                          }
    
                          leaf connected-instance {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-connected'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_CONNECTED'";
                            }
                            type String1;
                            description
                              "Name of the Connected instance";
                          }
                        }  // container protocol-name
    
                        container route-extended-community {
                          description
                            "Extended communities in the route";
                          leaf extended-community-domain-id-value {
                            type yang:hex-string;
                            description
                              "Domain ID value";
                          }
    
                          leaf extended-communityl-domain-id-type {
                            type uint16;
                            description
                              "Domain ID type";
                          }
    
                          leaf extended-community-area-id {
                            type uint32;
                            description
                              "Area id";
                          }
    
                          leaf extended-community-router-id {
                            type inet:ipv4-address;
                            description
                              "Router id";
                          }
    
                          leaf extended-community-route-type {
                            type uint8;
                            description
                              "OSPF route type, whether intra-area, inter-area
    or external route";
                          }
    
                          leaf extended-community-options {
                            type uint8;
                            description
                              "Route Options";
                          }
                        }  // container route-extended-community
                      }  // list external-route
                    }  // container external-routes
                  }  // container route-information
    
                  container interface-information {
                    description
                      "Container for OSPF Interfaces/links";
                    container virtual-links {
                      description
                        "Virtual Link table";
                      list virtual-link {
                        key "virtual-link-name";
                        description
                          "Information for one Virtual link";
                        leaf virtual-link-name {
                          type xr:Cisco-ios-xr-string;
                          description
                            "Virtual link";
                        }
    
                        container virtual-link-neighbor {
                          description
                            "Neighbor information";
                          container virtual-link-retransmissoin {
                            description
                              "Neighbor retransmission info";
                            leaf dbd-retransmission-count {
                              type uint32;
                              description
                                "Number of DBD retransmissions during last
    exchange";
                            }
    
                            leaf dbd-retransmission-total-count {
                              type uint32;
                              description
                                "Total number of DBD retransmissions for this
    neighbor";
                            }
    
                            leaf area-flooding-index {
                              type uint32;
                              description
                                "Area scope LSA's flood index";
                            }
    
                            leaf as-flood-index {
                              type uint32;
                              description
                                "AS scope LSA's flood index";
                            }
    
                            leaf neighbor-retransmission-count {
                              type uint32;
                              description
                                "Retransmission queue length";
                            }
    
                            leaf number-of-retransmissions {
                              type uint32;
                              description
                                "Number of retransmissions for this neighbor";
                            }
    
                            leaf area-first-flood-information {
                              type uint32;
                              description
                                "First flood item for area scope LSAs";
                            }
    
                            leaf area-first-flood-information-index {
                              type uint32;
                              description
                                "Index of the first flood item for area scope
    LSAs";
                            }
    
                            leaf as-first-flood-information {
                              type uint32;
                              description
                                "First flood item for AS scope LSAs";
                            }
    
                            leaf as-first-flood-information-index {
                              type uint32;
                              description
                                "Index for first flood item for AS scope LSAs";
                            }
    
                            leaf area-next-flood-information {
                              type uint32;
                              description
                                "Next flood item for area scope LSAs";
                            }
    
                            leaf area-next-flood-information-index {
                              type uint32;
                              description
                                "Index of next flood item for Area scope LSAs";
                            }
    
                            leaf as-next-flood-information {
                              type uint32;
                              description
                                "Next flood item for AS scope LSAs";
                            }
    
                            leaf as-next-flood-information-index {
                              type uint32;
                              description
                                "Index of next flood item for AS scope LSAs";
                            }
    
                            leaf last-retransmission-length {
                              type uint32;
                              description
                                "Number of LSAs sent in last retransmission";
                            }
    
                            leaf maximum-retransmission-length {
                              type uint32;
                              description
                                "Maximum number of LSAs sent in a retransmission";
                            }
    
                            leaf last-retransmission-time {
                              type uint32;
                              description
                                "Time taken for retransmission in the last
    attempt (ms)";
                            }
    
                            leaf maximum-retransmission-time {
                              type uint32;
                              description
                                "Maximum time taken for retransmission (ms)";
                            }
    
                            leaf lsa-retransmission-timer {
                              type uint32;
                              description
                                "Time until next LSA retransmission (ms)";
                            }
                          }  // container virtual-link-retransmissoin
    
                          leaf virtual-link-suppress-hello {
                            type boolean;
                            description
                              "If true Hellos suppressed";
                          }
    
                          leaf virtual-link-state {
                            type Neighbor-state;
                            description
                              "Adjacency state";
                          }
                        }  // container virtual-link-neighbor
    
                        leaf virtual-link-name-xr {
                          type string;
                          description
                            "Name of the Virtual link";
                        }
    
                        leaf virtual-link-neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor on other end of this virtual link";
                        }
    
                        leaf virtual-link-state {
                          type Ospf-interface-state;
                          description
                            "OSPF interface state for the virtual link";
                        }
    
                        leaf virtual-link-demand-circuit {
                          type boolean;
                          description
                            "If true, the link runs as demand circuit";
                        }
    
                        leaf virtual-link-dc-bitless-lsa {
                          type uint32;
                          description
                            "Number of LSA's with demand circuit bit not set";
                        }
    
                        leaf transit-area {
                          type string;
                          description
                            "Area id of the Transit area";
                        }
    
                        leaf virtual-link-interface-name {
                          type xr:Interface-name;
                          description
                            "Interface on which this virtual link is formed";
                        }
    
                        leaf virtual-link-cost {
                          type uint16;
                          description
                            "Cost of the virtual link";
                        }
    
                        leaf virual-link-transmission-delay {
                          type uint16;
                          units "second";
                          description
                            "Transmission delay in seconds";
                        }
    
                        leaf virtual-link-hello-interval {
                          type uint32;
                          description
                            "Hello interval (s)";
                        }
    
                        leaf virtual-link-hello-interval-ms {
                          type uint32;
                          description
                            "Hello interval (ms)";
                        }
    
                        leaf virtual-link-dead-interval {
                          type uint32;
                          description
                            "Dead interval (s)";
                        }
    
                        leaf virtual-link-wait-interval {
                          type uint32;
                          description
                            "Wait interval (s)";
                        }
    
                        leaf virtaul-link-retransmission-interval {
                          type uint32;
                          description
                            "Retransmission interval (s)";
                        }
    
                        leaf virtual-link-next-hello {
                          type uint32;
                          description
                            "Time until next hello (s)";
                        }
    
                        leaf virtual-link-next-hello-ms {
                          type uint32;
                          description
                            "Time until next hello (ms)";
                        }
    
                        leaf virtual-link-passive {
                          type boolean;
                          description
                            "If true, interface is passive";
                        }
    
                        leaf virtual-link-authentication-type {
                          type Authentication;
                          description
                            "Authentication type";
                        }
    
                        leaf virtual-link-youngest-md-key {
                          type boolean;
                          description
                            "If true, MD key configured";
                        }
    
                        leaf virtual-link-youngest-md-key-id {
                          type uint16;
                          description
                            "Youngest MD key ID";
                        }
    
                        leaf virtual-link-old-md-key-count {
                          type uint32;
                          description
                            "Number of neighbors still using the old key
    (rollover in progress)";
                        }
    
                        leaf keychain-name {
                          type string {
                            length "0..255";
                          }
                          description
                            "Virtual Link Keychain Name";
                        }
    
                        leaf virtual-link-keychain-key-conf {
                          type boolean;
                          description
                            "If true, Keychain key is configured";
                        }
    
                        leaf virtual-link-keychain-id {
                          type uint64;
                          description
                            "Virtual Link Keychain ID";
                        }
    
                        leaf virtual-link-keychain-alg {
                          type Ospf-crytographic-algo;
                          description
                            "Virtual Link Keychain cryptographic-algorithm";
                        }
    
                        leaf virtual-link-nsf-enabled {
                          type boolean;
                          description
                            "If true, NSF enabled";
                        }
    
                        leaf virtual-link-nsf {
                          type boolean;
                          description
                            "If true, NSF restart in progress on the virtual
    link";
                        }
    
                        leaf virtual-link-last-nsf {
                          type uint32;
                          units "second";
                          description
                            "Time in seconds since last NSF";
                        }
    
                        list virtual-link-md-key {
                          description
                            "List of old MD keys (if any)";
                          leaf entry {
                            type uint16;
                            description
                              "List of old MD keys (if any)";
                          }
                        }  // list virtual-link-md-key
                      }  // list virtual-link
                    }  // container virtual-links
    
                    container interface-briefs {
                      description
                        "OSPF Interface Brief Table";
                      list interface-brief {
                        key "interface-name";
                        description
                          "OSPF interface brief information";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Interface";
                        }
    
                        leaf interface-name-xr {
                          type xr:Interface-name;
                          description
                            "Name of the interface on which OSPF is enabled";
                        }
    
                        leaf interface-area {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted-decimal
    format";
                        }
    
                        leaf interface-address {
                          type inet:ipv4-address;
                          description
                            "IPv4 address of the Interface";
                        }
    
                        leaf interface-mask {
                          type uint32;
                          description
                            "Interface IP Mask";
                        }
    
                        leaf interface-link-cost {
                          type uint16;
                          description
                            "link cost/metric of the interface";
                        }
    
                        leaf ospf-interface-state {
                          type Ospf-interface-state;
                          description
                            "Interface OSPF state";
                        }
    
                        leaf interface-fast-detect-hold-down {
                          type boolean;
                          description
                            "whether the interface is in fast detect hold
    down state";
                        }
    
                        leaf interface-neighbor-count {
                          type uint16;
                          description
                            "Total number of Neighbors";
                        }
    
                        leaf interface-adj-neighbor-count {
                          type uint16;
                          description
                            "Total number of Adjacent Neighbors";
                        }
    
                        leaf interfaceis-madj {
                          type boolean;
                          description
                            "If true, interface is multi-area";
                        }
    
                        leaf interface-madj-count {
                          type uint16;
                          description
                            "Total number of multi-area";
                        }
    
                        list interface-madj {
                          description
                            "Information for multi-area on the interface";
                          leaf interface-area {
                            type string {
                              length "0..16";
                            }
                            description
                              "Area ID string in decimal or dotted-decimal
    format";
                          }
    
                          leaf madj-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf interface-neighbor-count {
                            type uint16;
                            description
                              "Number of Neighbors";
                          }
    
                          leaf interface-adj-neighbor-count {
                            type uint16;
                            description
                              "Total number of Adjacent Neighbors";
                          }
    
                          leaf interface-link-cost {
                            type uint16;
                            description
                              "Cost/Metric of the Interface link";
                          }
    
                          leaf ospf-interface-state {
                            type Ospf-interface-state;
                            description
                              "Interface OSPF state";
                          }
                        }  // list interface-madj
                      }  // list interface-brief
                    }  // container interface-briefs
    
                    container interfaces {
                      description
                        "OSPF Interface Table";
                      list interface {
                        key "interface-name";
                        description
                          "OSPF interface information";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        container interface-bfd-information {
                          description
                            "BFD information";
                          leaf bfd-intf-enable-mode {
                            type uint32;
                            description
                              "BFD enable mode - Default/Strict";
                          }
    
                          leaf interval {
                            type uint32;
                            description
                              "BFD interval (ms)";
                          }
    
                          leaf detection-multiplier {
                            type uint32;
                            description
                              "BFD multiplier value";
                          }
                        }  // container interface-bfd-information
    
                        container active-interface {
                          description
                            "Active interface details";
                          leaf wait-time {
                            type uint32;
                            description
                              "Wait time for DR/BDR selection (s)";
                          }
    
                          leaf interface-area-flood-index {
                            type uint32;
                            description
                              "Area scope LSAs flood index";
                          }
    
                          leaf interface-as-flood-index {
                            type uint32;
                            description
                              "AS scope LSAs flood index";
                          }
    
                          leaf interface-flood-length {
                            type uint32;
                            description
                              "Flood queue length";
                          }
    
                          leaf interface-area-next-flood {
                            type uint32;
                            description
                              "Next LSA to flood (Area scope)";
                          }
    
                          leaf interface-area-next-flood-index {
                            type uint32;
                            description
                              "Index of next LSA to flood (Area scope)";
                          }
    
                          leaf interface-as-next-flood {
                            type uint32;
                            description
                              "Next LSA to flood (AS scope)";
                          }
    
                          leaf interface-as-next-flood-index {
                            type uint32;
                            description
                              "Index of next LSA to flood (AS scope)";
                          }
    
                          leaf flood-scan-length {
                            type uint32;
                            description
                              "Length of flood queue in the last attempt";
                          }
    
                          leaf maximum-flood-length {
                            type uint32;
                            description
                              "Maximum length of the flood queue";
                          }
    
                          leaf last-flood-time {
                            type uint32;
                            description
                              "Time taken for Last flood (ms)";
                          }
    
                          leaf maximum-flood-time {
                            type uint32;
                            description
                              "Maximum time taken for flood (ms)";
                          }
    
                          leaf interface-flood-pacing-timer {
                            type uint32;
                            description
                              "Time until next flood pacing timer (ms)";
                          }
    
                          leaf interface-neighbor-count {
                            type uint16;
                            description
                              "Total number of Neighbors";
                          }
    
                          leaf suppress-hello-count {
                            type uint16;
                            description
                              "Number of neighbors for which hellos are
    suppressed";
                          }
    
                          leaf interface-authentication-type {
                            type Authentication;
                            description
                              "Authentication type";
                          }
    
                          leaf youngest-md-key {
                            type boolean;
                            description
                              "If true, MD key is configured";
                          }
    
                          leaf old-md5-key-neighbor-count {
                            type uint32;
                            description
                              "Number of neighbors using the old key (if
    rollover in progress)";
                          }
    
                          leaf youngest-md-key-id {
                            type uint16;
                            description
                              "Youngest MD key ID";
                          }
    
                          leaf keychain-name {
                            type string {
                              length "0..255";
                            }
                            description
                              "Name of Keychain used in this interface";
                          }
    
                          leaf keychain-key-conf {
                            type boolean;
                            description
                              "If true, Keychain key is configured";
                          }
    
                          leaf keychain-id {
                            type uint64;
                            description
                              "ID of the keychain used in this interface";
                          }
    
                          leaf keychain-alg {
                            type Ospf-crytographic-algo;
                            description
                              "Keychain cryptographic-algorithm used in this
    interface";
                          }
    
                          list md-keys {
                            description
                              "List of old MD keys";
                            leaf entry {
                              type uint16;
                              description
                                "List of old MD keys";
                            }
                          }  // list md-keys
                        }  // container active-interface
    
                        leaf interface-name-xr {
                          type xr:Interface-name;
                          description
                            "Name of the interface";
                        }
    
                        leaf interface-state {
                          type Interface-state;
                          description
                            "State of the interface";
                        }
    
                        leaf interface-line-state {
                          type boolean;
                          description
                            "If true, line protocol is up";
                        }
    
                        leaf interface-address {
                          type inet:ipv4-address;
                          description
                            "IPv4 Address of the interface";
                        }
    
                        leaf interface-mask {
                          type uint32;
                          description
                            "Interface IP Mask";
                        }
    
                        leaf interface-area {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted-decimal
    format";
                        }
    
                        leaf interface-sid {
                          type uint32;
                          description
                            "Interface SID";
                        }
    
                        leaf interface-sid-php-off {
                          type boolean;
                          description
                            "SID PHP Off";
                        }
    
                        leaf interface-sid-n-flag-clear {
                          type boolean;
                          description
                            "SID N-Flag Clear";
                        }
    
                        leaf interface-strict-spf-sid {
                          type uint32;
                          description
                            "Interface Strict-SPF SID";
                        }
    
                        leaf interface-strict-spf-sid-php-off {
                          type boolean;
                          description
                            "Strict-SPF SID PHP Off";
                        }
    
                        leaf interface-strict-spf-sid-n-flag-clear {
                          type boolean;
                          description
                            "Strict-SPF SID N-Flag Clear";
                        }
    
                        leaf interface-router-id {
                          type inet:ipv4-address;
                          description
                            "Interface Router ID";
                        }
    
                        leaf network-type {
                          type Interface;
                          description
                            "Network type of the interface, whether P2P,
    Broadcast, NBMA or P2MP";
                        }
    
                        leaf ip-mtu {
                          type uint16;
                          description "IP MTU";
                        }
    
                        leaf maximum-packet-size {
                          type uint16;
                          description
                            "Maximum size of the packet";
                        }
    
                        leaf interface-tunnel-flags {
                          type uint32;
                          description
                            "Flags related to Tunnel Interface";
                        }
    
                        leaf interface-link-cost {
                          type uint16;
                          description
                            "Link cost/Metric of the interface";
                        }
    
                        leaf interface-bandwidth {
                          type uint32;
                          description
                            "Bandwidth of the Interface";
                        }
    
                        leaf cfg-cost-fallback {
                          type boolean;
                          description
                            "If true, cost fallback is configured";
                        }
    
                        leaf interface-cost-fallback {
                          type uint16;
                          description
                            "Interface fallback cost";
                        }
    
                        leaf cost-fallback-active {
                          type boolean;
                          description
                            "If true, cost fallback is active";
                        }
    
                        leaf cfg-delay-igp-cost-fallback {
                          type boolean;
                          description
                            "If true,delay igp  cost fallback is configured";
                        }
    
                        leaf interface-igp-cost-fallback {
                          type uint16;
                          description
                            "Interface fallback cost";
                        }
    
                        leaf dealy-igp-cost-fallback-active {
                          type boolean;
                          description
                            "If true, cost fallback is active";
                        }
    
                        leaf cfg-delay-te-cost-fallback {
                          type boolean;
                          description
                            "If true,delay te  cost fallback is configured";
                        }
    
                        leaf interface-delay-te-cost-fallback {
                          type uint32;
                          description
                            "Interface fallback cost";
                        }
    
                        leaf dealy-te-cost-fallback-active {
                          type boolean;
                          description
                            "If true, cost fallback is active";
                        }
    
                        leaf configured-ldp-sync {
                          type boolean;
                          description
                            "If true, configured as LDP sync";
                        }
    
                        leaf configured-ldp-sync-igp-shortcuts {
                          type boolean;
                          description
                            "If true, sync igp shortcuts";
                        }
    
                        leaf interface-ldp-sync {
                          type boolean;
                          description
                            "If true, interface LDP sync is achieved";
                        }
    
                        leaf configured-demand-circuit {
                          type boolean;
                          description
                            "Whether this interface is configured as a demand
    circuit";
                        }
    
                        leaf interface-demand-circuit {
                          type boolean;
                          description
                            "Whether this interface is running as a demand
    circuit";
                        }
    
                        leaf interface-dc-bitless-lsa-count {
                          type uint32;
                          description
                            "Number of LSAs with demand circuit bit not set
    for the area in which the interface is running";
                        }
    
                        leaf transmission-delay {
                          type uint16;
                          description
                            "Interface Transmission delay";
                        }
    
                        leaf ospf-interface-state {
                          type Ospf-interface-state;
                          description
                            "Interface OSPF state";
                        }
    
                        leaf interface-priority {
                          type uint8;
                          description
                            "DR priority of the interface";
                        }
    
                        leaf designated-router {
                          type boolean;
                          description
                            "If true, there is a Designated Router for this
    network";
                        }
    
                        leaf designated-router-id {
                          type inet:ipv4-address;
                          description
                            "Router id of Designated router of this network";
                        }
    
                        leaf designated-router-address {
                          type inet:ipv4-address;
                          description
                            "Interface address of the Designated Router of
    this network";
                        }
    
                        leaf backup-designated-router {
                          type boolean;
                          description
                            "If true, there is a Backup Designated Router for
    this network";
                        }
    
                        leaf backup-designated-router-id {
                          type inet:ipv4-address;
                          description
                            "Router id of Backup Designated Router of this
    network";
                        }
    
                        leaf backup-designated-router-address {
                          type inet:ipv4-address;
                          description
                            "interface address of the Backup Designated
    Router of this network";
                        }
    
                        leaf network-lsa-flush-timer {
                          type uint32;
                          units "second";
                          description
                            "The amount of time in seconds before flush timer
    for old network LSA expires";
                        }
    
                        leaf interface-lsa-filter {
                          type boolean;
                          description
                            "Filter is configured for out going LSAs";
                        }
    
                        leaf hello-interval {
                          type uint32;
                          description
                            "Configured hello interval (s)";
                        }
    
                        leaf hello-interval-ms {
                          type uint32;
                          description
                            "Configured hello interval (ms)";
                        }
    
                        leaf dead-interval {
                          type uint32;
                          description
                            "Configured dead interval (s)";
                        }
    
                        leaf wait-interval {
                          type uint32;
                          description
                            "Configured wait interval (s)";
                        }
    
                        leaf interface-retransmission-interrval {
                          type uint32;
                          description
                            "Configured retransmit interval (s)";
                        }
    
                        leaf interface-nsf-enabled {
                          type boolean;
                          description
                            "If true, NSF is enabled";
                        }
    
                        leaf interface-nsf {
                          type boolean;
                          description
                            "If true, NSF restart in progress on this
    interface";
                        }
    
                        leaf interface-last-nsf {
                          type uint32;
                          description
                            "Time since last NSF restart (s)";
                        }
    
                        leaf passive-interface {
                          type boolean;
                          description
                            "If true, passive interface";
                        }
    
                        leaf next-hello-time {
                          type uint32;
                          description
                            "Time until next Hello (s)";
                        }
    
                        leaf next-hello-time-ms {
                          type uint32;
                          description
                            "Time until next Hello (ms)";
                        }
    
                        leaf ttl-security-enabled {
                          type boolean;
                          description
                            "TTL security enabled on the interface";
                        }
    
                        leaf ttl-security-hop-count {
                          type uint32;
                          description
                            "TTL security hop count for this interface";
                        }
    
                        leaf interfaceis-madj {
                          type boolean;
                          description
                            "If true, interface is multi-area";
                        }
    
                        leaf interface-madj-count {
                          type uint16;
                          description
                            "Total number of multi-area";
                        }
    
                        leaf prefix-suppress-primary-addresses {
                          type boolean;
                          description
                            "whether Prefix Suppression for primary addresses
    is enabled";
                        }
    
                        leaf prefix-suppress-secondary-addresses {
                          type boolean;
                          description
                            "Whether Prefix Suppression for secondary
    addresses is enabled";
                        }
    
                        leaf is-loopback-stub-network {
                          type boolean;
                          description
                            "If true, loopback interface is advertised as a
    stub network";
                        }
    
                        leaf interface-ack-list-count {
                          type uint32;
                          description
                            "Ack List Count";
                        }
    
                        leaf interface-ack-list-high-watermark {
                          type uint32;
                          description
                            "Ack List High Watermark";
                        }
    
                        leaf registered-for-link-down-fast-detection {
                          type boolean;
                          description
                            "Whether this interface is registered for Link
    Down Fast Detection";
                        }
    
                        leaf fast-detect-hold-down-time {
                          type uint32;
                          description
                            "Hold-down time in ms for fast-detect event";
                        }
    
                        leaf interface-fast-detect-hold-down {
                          type boolean;
                          description
                            "Link in hold-down state due to fast detect event";
                        }
    
                        leaf fast-detect-hold-down-time-remaining {
                          type uint32;
                          description
                            "Remaining hold down time in ms";
                        }
    
                        leaf fast-reroute-type {
                          type Ipfrr;
                          description
                            "IP Fast Reroute Type";
                        }
    
                        leaf fast-reroute-topology-independent-lfa {
                          type boolean;
                          description
                            "Topology Independent LFA";
                        }
    
                        leaf srlg-default-weight {
                          type uint32;
                          description
                            "SRLG Default weight if not configured
    specifically for this SRLG";
                        }
    
                        leaf interface-unnum {
                          type xr:Interface-name;
                          description
                            "Unnumbered interface";
                        }
    
                        leaf interface-forw {
                          type boolean;
                          description
                            "Forward reference interface";
                        }
    
                        leaf interface-pri-labels {
                          type uint8;
                          description
                            "Max number of primary labels";
                        }
    
                        leaf interface-bkp-labels {
                          type uint8;
                          description
                            "Max number of backup labels";
                        }
    
                        leaf interface-srte-labels {
                          type uint8;
                          description
                            "Max number of SRTE labels";
                        }
    
                        leaf interface-srat-cap {
                          type uint8;
                          description
                            "SRTE automatic path capability";
                        }
    
                        leaf pm-delay-set {
                          type boolean;
                          description
                            "PerfMeas Delay values available";
                        }
    
                        leaf link-delay-avg {
                          type uint32;
                          description
                            "PerfMeas Average Link Delay";
                        }
    
                        leaf link-delay-min {
                          type uint32;
                          description
                            "PerfMeas Minimum Link Delay";
                        }
    
                        leaf link-delay-max {
                          type uint32;
                          description
                            "PerfMeas Maximum Link Delay";
                        }
    
                        leaf pm-dealy-average-a-bit {
                          type boolean;
                          description
                            "If true, PM delay avg bit is set";
                        }
    
                        leaf pm-dealy-min-max-a-bit {
                          type boolean;
                          description
                            "If true, PM delay min_max bit is set";
                        }
    
                        leaf link-delay-avg-raw {
                          type uint32;
                          description
                            "PerfMeas Average Link Delay Raw";
                        }
    
                        leaf link-delay-min-raw {
                          type uint32;
                          description
                            "PerfMeas Minimum Link Delay Raw";
                        }
    
                        leaf link-delay-max-raw {
                          type uint32;
                          description
                            "PerfMeas Maximum Link Delay Raw";
                        }
    
                        leaf link-delay-norm-intval {
                          type uint32;
                          description
                            "PerfMeas Delay Norm Interval";
                        }
    
                        leaf link-delay-norm-offset {
                          type uint32;
                          description
                            "PerfMeas Delay Norm Offset";
                        }
    
                        leaf link-delay-var {
                          type uint32;
                          description
                            "PerfMeas Link Delay Variance";
                        }
    
                        leaf pm-loss-set {
                          type boolean;
                          description
                            "PerfMeas Link Loss values available";
                        }
    
                        leaf link-loss {
                          type uint32;
                          description
                            "PerfMeas Link Loss";
                        }
    
                        leaf pmbw-util-set {
                          type boolean;
                          description
                            "PerfMeas BW Util values available";
                        }
    
                        leaf total-bandwidth {
                          type uint64;
                          description
                            "PerfMeas Total Bandwidth";
                        }
    
                        leaf rsvpte-bandwidth {
                          type uint64;
                          description
                            "PerfMeas RSVP-TE Bandwidth";
                        }
    
                        leaf remote-lfa {
                          type uint8;
                          description
                            "Remote LFA";
                        }
    
                        leaf srte-metric-set {
                          type boolean;
                          description
                            "SRTE Metric available";
                        }
    
                        leaf srte-metric {
                          type uint32;
                          description
                            "SRTE Metric";
                        }
    
                        leaf srte-app-weight {
                          type uint32;
                          description
                            "SRTE App Weight";
                        }
    
                        leaf srte-ext-admin-group-set {
                          type boolean;
                          description
                            "SRTE Ext. Admin Group available";
                        }
    
                        leaf interface-weight {
                          type uint32;
                          description
                            "Configured Interface weight";
                        }
    
                        leaf if-rib-l-csync-needed {
                          type boolean;
                          description
                            "rib lc sync needed";
                        }
    
                        leaf if-rib-l-csync {
                          type boolean;
                          description
                            "rib lc sync state";
                        }
    
                        leaf conditional-advertising-enabled {
                          type boolean;
                          description
                            "If Conditional advertising based on route-policy
    is enabled";
                        }
    
                        leaf conditional-advertise-policy-name {
                          type string;
                          description
                            "Name of the applied policy for Conditional
    advertising";
                        }
    
                        leaf conditional-advertising-result {
                          type boolean;
                          description
                            "Result of the policy applied for Conditional
    advertising";
                        }
    
                        list srlg {
                          description
                            "SRLG Values";
                          leaf entry {
                            type uint32;
                            description
                              "SRLG Values";
                          }
                        }  // list srlg
    
                        list srlg-weight {
                          description
                            "SRLG Weight";
                          leaf entry {
                            type uint32;
                            description
                              "SRLG Weight";
                          }
                        }  // list srlg-weight
    
                        list srtete-ext-admin-group {
                          description
                            "SRTE Ext. Admin Group";
                          leaf entry {
                            type uint32;
                            description
                              "SRTE Ext. Admin Group";
                          }
                        }  // list srtete-ext-admin-group
    
                        list interface-neighbor {
                          description
                            "Information for neighbors on the interface";
                          leaf interface-neighbor-id {
                            type inet:ipv4-address;
                            description
                              "Neighbor Router ID";
                          }
    
                          leaf interface-neighbor-cost {
                            type uint32;
                            description
                              "Cost of link to neighbor";
                          }
    
                          leaf neighbor-dr {
                            type boolean;
                            description
                              "If true, Designated router";
                          }
    
                          leaf neighbor-bdr {
                            type boolean;
                            description
                              "If true, Backup designated router";
                          }
    
                          leaf suppress-hello {
                            type boolean;
                            description
                              "If true, hellos suppressed";
                          }
                        }  // list interface-neighbor
    
                        list interface-madj {
                          description
                            "Information for multi-area on the interface";
                          leaf interface-area {
                            type string {
                              length "0..16";
                            }
                            description
                              "Area ID string in decimal or dotted-decimal
    format";
                          }
    
                          leaf madj-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf interface-neighbor-count {
                            type uint16;
                            description
                              "Number of Neighbors";
                          }
    
                          leaf interface-adj-neighbor-count {
                            type uint16;
                            description
                              "Total number of Adjacent Neighbors";
                          }
    
                          leaf interface-link-cost {
                            type uint16;
                            description
                              "Cost/Metric of the Interface link";
                          }
    
                          leaf ospf-interface-state {
                            type Ospf-interface-state;
                            description
                              "Interface OSPF state";
                          }
                        }  // list interface-madj
    
                        list ipfrr-tiebreakers {
                          description
                            "IPFRR-Tiebreakers list";
                          leaf tiebreaker-type {
                            type Ipfrr-tbrkr;
                            description
                              "Tiebreaker Type, whether LC-Disjoint, Node
    Protecting etc";
                          }
    
                          leaf tiebreaker-index {
                            type uint32;
                            description
                              "Tiebreaker Index corresponding to the tiebreaker
    type";
                          }
                        }  // list ipfrr-tiebreakers
    
                        list ip-sec-addr {
                          description
                            "Secondary IP address list";
                          leaf secondary-addr {
                            type inet:ipv4-address;
                            description
                              "Secondary Address Type";
                          }
    
                          leaf secondary-prefix {
                            type uint32;
                            description
                              "Secondary Prefix Length";
                          }
                        }  // list ip-sec-addr
    
                        list sr-adj-sid {
                          description
                            "SR Configured Adjacency SIDs";
                          leaf adj-sid-label {
                            type uint32;
                            description
                              "Adjacency SID Label";
                          }
    
                          leaf protected-adj-sid {
                            type boolean;
                            description
                              "Adjacency SID Protection";
                          }
    
                          leaf adj-sid-is-active {
                            type boolean;
                            description
                              "Adj sid is allocated to a neighbor";
                          }
    
                          leaf adj-sid-inactive-reason {
                            type Ospf-sr-adj-sid-inactive-reason;
                            description
                              "Adjacency SID Inactive Reason";
                          }
                        }  // list sr-adj-sid
                      }  // list interface
                    }  // container interfaces
                  }  // container interface-information
    
                  container border-routers {
                    description
                      "Border router table";
                    list border-router {
                      key "border-router-id";
                      description
                        "Information for a particular border router";
                      leaf border-router-id {
                        type inet:ipv4-address-no-zone;
                        description
                          "Router address";
                      }
    
                      leaf border-router-id-xr {
                        type inet:ipv4-address;
                        description
                          "Router ID of Border Router";
                      }
    
                      list border-router-path {
                        description
                          "List of Border Router paths";
                        leaf border-router-route-type {
                          type Ospf-route;
                          description
                            "Whether it is an intra-area or inter-area route";
                        }
    
                        leaf border-router-route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf border-router-next-hop {
                          type inet:ipv4-address;
                          description
                            "Next hop address";
                        }
    
                        leaf border-router-next-hop-interface-name {
                          type xr:Interface-name;
                          description
                            "Next hop Interface";
                        }
    
                        leaf border-router-type {
                          type Ospf-br;
                          description
                            "Border router type, whether it is an ABR, ASBR
    or both";
                        }
    
                        leaf border-router-area-id {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area string in decimal or dotted-decimal format";
                        }
    
                        leaf spf-version {
                          type uint64;
                          description
                            "SPF run instance count";
                        }
                      }  // list border-router-path
                    }  // list border-router
                  }  // container border-routers
    
                  container process-information {
                    description
                      "Container for OSPF Process information";
                    container protocol-areas {
                      description
                        "Protocol Area table";
                      list protocol-area {
                        description
                          "Area information";
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description
                            "Area ID if in integer format";
                        }
    
                        leaf address {
                          type inet:ipv4-address-no-zone;
                          description
                            "Area ID if in IP address format";
                        }
    
                        leaf protcol-area {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal and dotted-decimal
    format";
                        }
    
                        leaf protocol-mpls {
                          type boolean;
                          description
                            "MPLS-TE enabled";
                        }
    
                        leaf protocol-area-dist-list-in {
                          type string;
                          description
                            "Distribute List In";
                        }
    
                        list protocol-interface {
                          description
                            "Interface list";
                          leaf protocol-interface-name {
                            type xr:Interface-name;
                            description
                              "Interface";
                          }
    
                          leaf protocol-authentication-type {
                            type Authentication;
                            description
                              "Authentication type";
                          }
    
                          leaf protocol-interface-dist-list-in {
                            type string;
                            description
                              "Distribute List In";
                          }
                        }  // list protocol-interface
                      }  // list protocol-area
                    }  // container protocol-areas
    
                    container protocol-summary {
                      description
                        "Basic OSPF protocol information";
                      leaf protocol-router-id {
                        type inet:ipv4-address;
                        description "Router ID";
                      }
    
                      leaf protocol-distance {
                        type uint32;
                        description
                          "Administrative distance";
                      }
    
                      leaf administrative-distance-inter-area {
                        type uint32;
                        description
                          "Administrative Distance for Inter Area routes";
                      }
    
                      leaf administrative-distance-external {
                        type uint32;
                        description
                          "Administrative Distance for External routes";
                      }
    
                      leaf protocol-nsf {
                        type boolean;
                        description
                          "True if NSF enabled";
                      }
    
                      leaf dist-list-in {
                        type string;
                        description
                          "Distribute List In";
                      }
                    }  // container protocol-summary
    
                    container redistributions {
                      description
                        "Redistribution information table";
                      list redistribution {
                        description
                          "Redistribution information";
                        leaf protocol-name {
                          type xr:Cisco-ios-xr-string;
                          description
                            "Name of the protocol being redistributed";
                        }
    
                        leaf process-name {
                          type xr:Cisco-ios-xr-string;
                          description
                            "Process/Instance name of the protocol being
    redistributed";
                        }
    
                        container redistribution-protocol {
                          description
                            "Protocol Information";
                          leaf protocol-type {
                            type Redist-protocol;
                            description
                              "ProtocolType";
                          }
    
                          leaf isis-instance-id {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-isis'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_ISIS'";
                            }
                            type String1;
                            description
                              "ISIS instance identifier";
                          }
    
                          leaf ospf-process-id {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-ospf'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_OSPF'";
                            }
                            type String1;
                            description
                              "OSPF process identifier";
                          }
    
                          leaf bgp-as-number {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-bgp'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_BGP'";
                            }
                            type String1;
                            description
                              "BGP Autonomous System Number";
                          }
    
                          leaf eigrp-as-number {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-eigrp'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_EIGRP'";
                            }
                            type String1;
                            description
                              "Autonomous System Number";
                          }
    
                          leaf connected-instance {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-connected'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_CONNECTED'";
                            }
                            type String1;
                            description
                              "Name of the Connected instance";
                          }
                        }  // container redistribution-protocol
    
                        leaf metric-flag {
                          type boolean;
                          description
                            "If true, Metric configured";
                        }
    
                        leaf metric {
                          type uint32;
                          description
                            "Route metric";
                        }
    
                        leaf rib-metric-flag {
                          type boolean;
                          description
                            "If true, RIB metric is used";
                        }
    
                        leaf metric-type {
                          type uint32;
                          description
                            "Redistribute as External type 1 or 2 ";
                        }
    
                        leaf tag-flag {
                          type boolean;
                          description
                            "If true, tag is configured";
                        }
    
                        leaf tag {
                          type uint32;
                          description
                            "Route Tag";
                        }
    
                        leaf keep-bgp-med {
                          type boolean;
                          description
                            "If true, BGP MED value is preserved";
                        }
    
                        leaf keep-bgp-def-info {
                          type boolean;
                          description
                            "If true, BGP metric and metric type are
    preserved for default route";
                        }
    
                        leaf redist-summary {
                          type boolean;
                          description
                            "If true, routes will be redistributed as Summary
    LSAs instead of External LSAs";
                        }
    
                        leaf policy-name {
                          type string;
                          description
                            "Name of applied policy";
                        }
    
                        leaf classless {
                          type boolean;
                          description
                            "Whether to use CIDR";
                        }
    
                        leaf nssa-only {
                          type boolean;
                          description
                            "To NSSA areas only";
                        }
                      }  // list redistribution
                    }  // container redistributions
    
                    container process-areas {
                      description
                        "Process Area table";
                      list process-area {
                        description
                          "Detailed information for a particular area";
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description
                            "Area ID if in integer format";
                        }
    
                        leaf address {
                          type inet:ipv4-address-no-zone;
                          description
                            "Area ID if in IP address format";
                        }
    
                        leaf area-id-string {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string";
                        }
    
                        leaf backbone-area-active {
                          type boolean;
                          description
                            "If true, Backbone area is active";
                        }
    
                        leaf area-interface-count {
                          type uint16;
                          description
                            "Number of interfaces in the area";
                        }
    
                        leaf area-stub {
                          type boolean;
                          description
                            "If true, stub area";
                        }
    
                        leaf area-total-stub {
                          type boolean;
                          description
                            "If true, totally stubby area";
                        }
    
                        leaf stub-default-cost {
                          type uint32;
                          description
                            "Default cost for Stub or NSSA area";
                        }
    
                        leaf area-nssa {
                          type boolean;
                          description
                            "If true, area is a NSSA";
                        }
    
                        leaf nssa-no-redistribution {
                          type boolean;
                          description
                            "If true, No redistribution into this NSSA area";
                        }
    
                        leaf nssa-translate {
                          type boolean;
                          description
                            "If true, perform 7/5 translation";
                        }
    
                        leaf nssa-translate-always {
                          type boolean;
                          description
                            "If true, perform 7/5 translation always";
                        }
    
                        leaf nssa-default {
                          type boolean;
                          description
                            "If true, generate NSSA default route";
                        }
    
                        leaf te-enabled {
                          type boolean;
                          description
                            "If true, MPLS-TE enabled";
                        }
    
                        leaf te-topology-version {
                          type uint32;
                          description
                            "TE area topology version number";
                        }
    
                        leaf external-out {
                          type boolean;
                          description
                            "If true, advertise intra-area prefixes as
    external";
                        }
    
                        leaf summary-in {
                          type boolean;
                          description
                            "If true, advertise redistributedprefixes as
    summary";
                        }
    
                        leaf segment-routing {
                          type Sr-dp;
                          description
                            "If true, Segment Routing enabled";
                        }
    
                        leaf sr-strict-spf-cap {
                          type boolean;
                          description
                            "If true, All routers in Area are SR Strict-SPF
    Capable";
                        }
    
                        leaf sr-strict-spfsids-available {
                          type boolean;
                          description
                            "If true, All routers in Area have SR Strict-SPF
    SIDs";
                        }
    
                        leaf sr-microloop-avoidance-active {
                          type boolean;
                          description
                            "If true, Segment routing Uloop avoidance
    is currently active in this area";
                        }
    
                        leaf sr-microloop-avoidance-event-type {
                          type Sr-uloop-event;
                          description
                            "Event for which SR uloop is triggered
    Link Up/Link Down";
                        }
    
                        leaf sr-microloop-avoidance-near-end-id {
                          type inet:ipv4-address;
                          description
                            "Link State ID of the near end
    of the topology change";
                        }
    
                        leaf sr-microloop-avoidance-far-end-id {
                          type inet:ipv4-address;
                          description
                            "Link State ID of the far end
    of the topology change";
                        }
    
                        leaf sr-microloop-avoidance-pseudonode-id {
                          type inet:ipv4-address;
                          description
                            "Link State ID of the pseudo node,
    if the change is on a broadcast link";
                        }
    
                        leaf authentication-type {
                          type Authentication;
                          description
                            "Authentication type used for the area";
                        }
    
                        leaf spf-count {
                          type uint32;
                          description
                            "Number of SPF calculations run";
                        }
    
                        leaf area-policy-in {
                          type boolean;
                          description
                            "If true, inbound policy is configured";
                        }
    
                        leaf area-policy-in-name {
                          type string;
                          description
                            "Inbound summary lsa filtering policy";
                        }
    
                        leaf area-policy-out {
                          type boolean;
                          description
                            "If true, outbound policy is configured";
                        }
    
                        leaf area-policy-out-name {
                          type string;
                          description
                            "Outbound summary lsa filtering policy";
                        }
    
                        leaf area-lsa-count {
                          type uint32;
                          description
                            "Number of LSAs in the Area";
                        }
    
                        leaf area-lsa-checksum {
                          type uint32;
                          description
                            "Sum of all area LSAs checksum";
                        }
    
                        leaf area-opaque-lsa-count {
                          type uint32;
                          description
                            "Number of Opaque LSAs in the Area";
                        }
    
                        leaf area-opaque-lsa-checksum {
                          type uint32;
                          description
                            "Sum of opaque LSA checksums";
                        }
    
                        leaf area-dc-bitless-lsa-count {
                          type uint32;
                          description
                            "Number of LSA with demand circuit bit not set";
                        }
    
                        leaf indication-lsa-count {
                          type uint32;
                          description
                            "Number of indication LSAs";
                        }
    
                        leaf dna-lsa-count {
                          type uint32;
                          description
                            "Number of DoNotAge LSAs";
                        }
    
                        leaf flood-list-length {
                          type uint32;
                          description
                            "Number of LSAs which need to be flooded";
                        }
    
                        leaf area-lfa-interface-count {
                          type uint32;
                          description
                            "Number of LFA enabled interfaces";
                        }
    
                        leaf area-per-prefix-lfa-interface-count {
                          type uint32;
                          description
                            "Number of Per Prefix LFA enabled interfaces";
                        }
    
                        leaf area-lfa-revision {
                          type uint32;
                          description
                            "Area LFA revision";
                        }
    
                        leaf area-adj-stag-num-nbr-forming {
                          type uint16;
                          description
                            "Num of nbrs currently forming";
                        }
    
                        leaf area-num-nbr-full {
                          type uint16;
                          description
                            "Num of full nbrs in area";
                        }
    
                        list area-range {
                          description
                            "List of ranges to summarize";
                          leaf range-prefix {
                            type inet:ipv4-address;
                            description
                              "IP prefix for summarization";
                          }
    
                          leaf range-mask {
                            type inet:ipv4-address;
                            description
                              "Network mask";
                          }
    
                          leaf cost {
                            type uint32;
                            description "Cost";
                          }
    
                          leaf advertise-flag {
                            type boolean;
                            description
                              "Whether to advertise Summary LSAs for this range";
                          }
                        }  // list area-range
                      }  // list process-area
                    }  // container process-areas
    
                    container process-summary {
                      description
                        "Basic OSPF summary information";
                      container domain-id {
                        description
                          "Domain ID information";
                        container primary-domain-id {
                          description
                            "Primary Domain ID";
                          leaf domain-id-type {
                            type uint16;
                            description
                              "Domain ID Type";
                          }
    
                          leaf domain-id-value {
                            type yang:hex-string;
                            description
                              "Domain ID value";
                          }
                        }  // container primary-domain-id
    
                        list secondary-domain-id {
                          description
                            "List of secondary domain IDs";
                          leaf domain-id-type {
                            type uint16;
                            description
                              "Domain ID Type";
                          }
    
                          leaf domain-id-value {
                            type yang:hex-string;
                            description
                              "Domain ID value";
                          }
                        }  // list secondary-domain-id
                      }  // container domain-id
    
                      leaf vrf-active {
                        type boolean;
                        description
                          "If true, VRF configured";
                      }
    
                      leaf role-standby {
                        type boolean;
                        description
                          "If true, Role is Standby, Active otherwise";
                      }
    
                      leaf role {
                        type uint32;
                        description
                          "Role, V1/V2 Active/Standby";
                      }
    
                      leaf nsr-enabled {
                        type boolean;
                        description
                          "If true, NSR is enabled";
                      }
    
                      leaf nsr-switchover-on-restart {
                        type boolean;
                        description
                          "Trigger RP Switchover on detectable process
    restart";
                      }
    
                      leaf igp-intact-on {
                        type boolean;
                        description
                          "If true, running in IGP-Intact mode";
                      }
    
                      leaf router-id {
                        type inet:ipv4-address;
                        description "Router ID";
                      }
    
                      leaf tos-options {
                        type uint8;
                        description
                          "Type of Service supported";
                      }
    
                      leaf opaque-capable {
                        type boolean;
                        description
                          "Whether the OSPF instance is Opaque LSA capable";
                      }
    
                      leaf area-border-router {
                        type boolean;
                        description
                          "If true, is an Area Border Router";
                      }
    
                      leaf as-border-router {
                        type boolean;
                        description
                          "If true, is an AS Border Router";
                      }
    
                      leaf vrf-lite-enabled {
                        type boolean;
                        description
                          "If true, vrf lite is enabled";
                      }
    
                      leaf capability-prefer-type7 {
                        type boolean;
                        description
                          "If true, prefer type 7 LSAs over type 5";
                      }
    
                      leaf maximum-metric-start {
                        type boolean;
                        description
                          "If true, originate Router LSA with maximum
    metric";
                      }
    
                      leaf maximum-metric-start-timer {
                        type uint32;
                        description
                          "Time remaining for hold down timer (s)";
                      }
    
                      leaf maximum-metric-set-reason {
                        type Max-metric-set-reason;
                        description
                          "Reason to set Max-metric";
                      }
    
                      leaf maximum-metric-abr-off-mode {
                        type boolean;
                        description
                          "If true, ABR duties temporarily disabled";
                      }
    
                      leaf maximum-metric-abr-off-reasons {
                        type Ospf-max-metric-abr-off-reasons;
                        description
                          "Reasons for ABR duties being temporarily
    disabled";
                      }
    
                      leaf maximum-metric-abr-off-buffer-time {
                        type uint32;
                        units "second";
                        description
                          "Buffer time in seconds since last neighbor
    activity, to remain in max-metric ABR off state";
                      }
    
                      leaf spf-start-time {
                        type uint32;
                        description
                          "Scheduling delay for SPF (ms)";
                      }
    
                      leaf spf-hold-time {
                        type uint32;
                        description
                          "Minimum delay time between SPF runs (ms)";
                      }
    
                      leaf spf-maximum-time {
                        type uint32;
                        description
                          "Maximum delay time between SPF runs (ms)";
                      }
    
                      leaf spf-prefix-priority {
                        type boolean;
                        description
                          "If true, prefix-priority policy is configured";
                      }
    
                      leaf spf-prefix-priority-route-policy {
                        type string;
                        description
                          "Route-policy that governs SPF Prefix-priority";
                      }
    
                      leaf lsa-start-time {
                        type int32;
                        description
                          "Initial LSA throttle delay (ms)";
                      }
    
                      leaf lsa-hold-time {
                        type uint32;
                        description
                          "Second delay before generating next LSA (ms)";
                      }
    
                      leaf lsa-maximum-time {
                        type uint32;
                        description
                          "Maximum delay before generating an LSA (ms)";
                      }
    
                      leaf minimum-lsa-interval {
                        type uint32;
                        description
                          "Minimum time between LSA regeneration (ms)";
                      }
    
                      leaf lsa-refresh-interval {
                        type uint32;
                        description
                          "LSA refresh interval (sec)";
                      }
    
                      leaf minimum-lsa-arrival-interval {
                        type uint32;
                        description
                          "Minimum time between accepting LSAs (ms)";
                      }
    
                      leaf if-flood-pacing-interval {
                        type uint16;
                        description
                          "Flood pacing timer (ms)";
                      }
    
                      leaf if-retrans-pacing-interval {
                        type uint16;
                        description
                          "Retransmission pacing timer (ms)";
                      }
    
                      leaf adj-stag-init-num-nbr {
                        type uint16;
                        description
                          "Num of nbrs brought up initially per area";
                      }
    
                      leaf adj-stag-max-num-nbr {
                        type uint16;
                        description
                          "Max num of nbrs brought up simultaneously per
    OSPF instance";
                      }
    
                      leaf adj-stagger-enabled {
                        type boolean;
                        description
                          "If true, OSPF Adjacency Staggering is configured";
                      }
    
                      leaf adj-stag-num-nbr-forming {
                        type uint16;
                        description
                          "Num of nbrs currently forming for OSPF instance";
                      }
    
                      leaf number-nbrs-full {
                        type uint16;
                        description
                          "Num of full nbrs";
                      }
    
                      leaf as-lsa-count {
                        type uint32;
                        description
                          "Number of AS scope LSAs";
                      }
    
                      leaf as-lsa-checksum {
                        type uint32;
                        description
                          "Sum of AS scope LSA checksum";
                      }
    
                      leaf opaque-lsa-count {
                        type uint32;
                        description
                          "Number of Opaque LSAs";
                      }
    
                      leaf opaque-lsa-checksum {
                        type uint32;
                        description
                          "Sum of opaque LSA checksum";
                      }
    
                      leaf as-dc-bitless-lsa-count {
                        type uint32;
                        description
                          "Number of External and AS Opaque LSAs with
    demand circut bit not set";
                      }
    
                      leaf as-dna-lsa-count {
                        type uint32;
                        description
                          "Number of External and AS Opaque LSAs with
    DoNotAge set ";
                      }
    
                      leaf area-count {
                        type uint16;
                        description
                          "Number of areas";
                      }
    
                      leaf normal-area-count {
                        type uint16;
                        description
                          "Number of normal Areas";
                      }
    
                      leaf stub-area-count {
                        type uint16;
                        description
                          "Number of Stub and Total Stub Areas";
                      }
    
                      leaf nssa-area-count {
                        type uint16;
                        description
                          "Number of NSSA Areas";
                      }
    
                      leaf maximum-interfaces {
                        type uint32;
                        description
                          "Maximum number of interfaces";
                      }
    
                      leaf as-lsa-flood-list-length {
                        type uint32;
                        description
                          "Length of AS LSAs flood list";
                      }
    
                      leaf nsf-enabled {
                        type boolean;
                        description
                          "If true, NSF enabled";
                      }
    
                      leaf last-nsf-time {
                        type uint32;
                        description
                          " Length of time since the last NSF (s)";
                      }
    
                      leaf nsf-time {
                        type uint32;
                        description
                          "Total time to complete NSF (s)";
                      }
    
                      leaf redistribution-limit {
                        type uint32;
                        description
                          "The number of redistributed prefixes allowed";
                      }
    
                      leaf redistribution-threshold {
                        type uint32;
                        description
                          "When the number of redistributed prefixes
    reaches this threshold, a warning message is
    issued";
                      }
    
                      leaf redistribution-limit-warn {
                        type boolean;
                        description
                          "If true, only a syslog message is printed when
    redistribution prefix limit is reached";
                      }
    
                      leaf graceful-shutdown-retention-time {
                        type uint32;
                        description
                          "Amount of time routes are retained after
    graceful shutdown (s)";
                      }
    
                      leaf graceful-shutdown-state {
                        type Gs-state;
                        description
                          "State of graceful shutdown";
                      }
    
                      leaf table-prefix-limit-reached {
                        type boolean;
                        description
                          "If true, prefix limit for table has been
    reached";
                      }
    
                      leaf non-self-lsa-count {
                        type uint32;
                        description
                          "Non self-generated LSA count";
                      }
    
                      leaf max-lsa-enabled {
                        type boolean;
                        description
                          "If true, max-lsa protection enabled";
                      }
    
                      leaf max-lsa-limit {
                        type uint32;
                        description
                          "Maximum allowed number of non self-generated
    LSAs";
                      }
    
                      leaf max-lsa-treshold {
                        type uint32;
                        description
                          "max-lsa protection warning threshold";
                      }
    
                      leaf max-lsa-warning-only {
                        type boolean;
                        description
                          "Warning only when max-lsa reached";
                      }
    
                      leaf max-lsa-ignore-time {
                        type uint32;
                        description
                          "Time ignoring new LSAs after max-lsa reached";
                      }
    
                      leaf max-lsa-reset-time {
                        type uint32;
                        description
                          "Time after which LSA protection counter is reset";
                      }
    
                      leaf max-lsa-ignore-limit {
                        type uint32;
                        description
                          "Max allowed number of entering ignore state";
                      }
    
                      leaf max-lsa-ignore-count {
                        type uint32;
                        description
                          "How many times ignore state has been entered";
                      }
    
                      leaf max-lsa-ignore-timer {
                        type uint32;
                        description
                          "Remaining time when ignore timer is running";
                      }
    
                      leaf max-lsa-reset-timer {
                        type uint32;
                        description
                          "Remaining time when reset timer is running";
                      }
    
                      leaf context-name {
                        type string {
                          length "0..32";
                        }
                        description
                          "SNMP Context name";
                      }
    
                      leaf snmp-trap-enabled {
                        type boolean;
                        description
                          "If true, snmp trap is enabled";
                      }
    
                      leaf ucmp {
                        type boolean;
                        description
                          "If true, UCMP is enabled";
                      }
    
                      leaf ucmp-prefix-list {
                        type string;
                        description
                          "UCMP Prefix-list";
                      }
    
                      leaf ucmp-variance {
                        type int32;
                        description
                          "UCMP Variance";
                      }
    
                      leaf ucmp-delay {
                        type uint32;
                        description
                          "Delay between end of SPF and start of UCMP
    calculation (ms)";
                      }
    
                      leaf microloop-avoidance-type {
                        type Uloop-avoidance;
                        description
                          "Microloop avoidance type configured";
                      }
    
                      leaf microloop-avoidance-delay {
                        type uint32;
                        description
                          "Microloop delay time after which actual
    post convergence paths are given to RIB (s)";
                      }
    
                      leaf microloop-avoidance-active {
                        type boolean;
                        description
                          "If true, Uloop is active";
                      }
    
                      leaf microloop-avoidance-delay-expiry {
                        type uint32;
                        description
                          "Remaining time for uloop delay timer
    to expire (s)";
                      }
    
                      leaf lsd-connected {
                        type boolean;
                        description
                          "True if connected to LSD";
                      }
    
                      leaf lsd-registered {
                        type boolean;
                        description
                          "True if registered with LSD";
                      }
    
                      leaf lsd-bound {
                        type boolean;
                        description
                          "True if bound to LSD";
                      }
    
                      leaf lsd-connection-revision {
                        type uint32;
                        description
                          "LSD Connection Revision";
                      }
    
                      leaf srgb-configured {
                        type boolean;
                        description
                          "True if Segment Routing Global Block configured";
                      }
    
                      leaf srgb-start {
                        type uint32;
                        description
                          "Segment Routing Global Block start label value";
                      }
    
                      leaf srgb-end {
                        type uint32;
                        description
                          "Segment Routing Global Block end label value";
                      }
    
                      leaf srgb-status {
                        type Ospf-srgb-status;
                        description
                          "Segment Routing Global Block allocation status";
                      }
    
                      leaf sr-strict-spf-cap {
                        type boolean;
                        description
                          "True if Segment Routing Strict-SPF capable";
                      }
    
                      leaf srlb-start {
                        type uint32;
                        description
                          "Segment Routing Local Block start label value";
                      }
    
                      leaf srlb-end {
                        type uint32;
                        description
                          "Segment Routing Local Block end label value";
                      }
    
                      leaf srlb-status {
                        type Ospf-srlb-status;
                        description
                          "Segment Routing Local Block allocation status";
                      }
    
                      leaf spf-suspended {
                        type boolean;
                        description
                          "If true, SPF is currently suspended";
                      }
    
                      list maximum-metric {
                        description
                          "Max-metric list";
                        container maximum-metric-time-unset {
                          description
                            "Time max-metric condition was cleared";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container maximum-metric-time-unset
    
                        leaf max-metric-reason {
                          type uint8;
                          description
                            "Reason to set Max-metric";
                        }
    
                        leaf max-metric-enabled {
                          type boolean;
                          description
                            "Whether Max-metric is enabled";
                        }
    
                        leaf unset-maximum-metric {
                          type boolean;
                          description
                            "If true, BGP is up, no maximum metric Router LSA";
                        }
    
                        leaf saved-unset-maximum-metric {
                          type boolean;
                          description
                            "Saved UnsetMaximumMetric";
                        }
    
                        leaf maximum-metric-start-time {
                          type uint32;
                          description
                            "Time remaining until we will start using normal
    metrics (s)";
                        }
    
                        leaf saved-startup-time {
                          type uint32;
                          description
                            "Hold time configured (s)";
                        }
    
                        leaf maximum-metric-include-stubs {
                          type boolean;
                          description
                            "If true, set max-metric in stub links";
                        }
    
                        leaf maximum-metric-summary-lsa {
                          type boolean;
                          description
                            "If true, advertise max-metric in summary-LSAs";
                        }
    
                        leaf maximum-metric-summary-lsa-metric {
                          type uint32;
                          description
                            "Max-metric value to advertise in summary-LSAs";
                        }
    
                        leaf maximum-metric-external-lsa {
                          type boolean;
                          description
                            "If true, advertise max-metric in external-LSAs";
                        }
    
                        leaf maximum-metric-external-lsa-metric {
                          type uint32;
                          description
                            "Max-metric value to advertise in external-LSAs";
                        }
    
                        leaf maximum-metric-originated-for {
                          type uint32;
                          description
                            "Time max-metric was used for";
                        }
    
                        leaf maximum-metric-unset-reason {
                          type Max-metric-unset-reason;
                          description
                            "Reason to unset Max-metric";
                        }
                      }  // list maximum-metric
    
                      list redistribution {
                        description
                          "Redistribution list";
                        container redistribution-protocol {
                          description
                            "Protocol Information";
                          leaf protocol-type {
                            type Redist-protocol;
                            description
                              "ProtocolType";
                          }
    
                          leaf isis-instance-id {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-isis'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_ISIS'";
                            }
                            type String1;
                            description
                              "ISIS instance identifier";
                          }
    
                          leaf ospf-process-id {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-ospf'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_OSPF'";
                            }
                            type String1;
                            description
                              "OSPF process identifier";
                          }
    
                          leaf bgp-as-number {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-bgp'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_BGP'";
                            }
                            type String1;
                            description
                              "BGP Autonomous System Number";
                          }
    
                          leaf eigrp-as-number {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-eigrp'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_EIGRP'";
                            }
                            type String1;
                            description
                              "Autonomous System Number";
                          }
    
                          leaf connected-instance {
                            when
                              "../protocol-type = 'mgmt-rib-protocol-connected'" {
                              description
                                "../ProtocolType = 'MGMT_RIB_PROTOCOL_CONNECTED'";
                            }
                            type String1;
                            description
                              "Name of the Connected instance";
                          }
                        }  // container redistribution-protocol
    
                        leaf metric-flag {
                          type boolean;
                          description
                            "If true, Metric configured";
                        }
    
                        leaf metric {
                          type uint32;
                          description
                            "Route metric";
                        }
    
                        leaf rib-metric-flag {
                          type boolean;
                          description
                            "If true, RIB metric is used";
                        }
    
                        leaf metric-type {
                          type uint32;
                          description
                            "Redistribute as External type 1 or 2 ";
                        }
    
                        leaf tag-flag {
                          type boolean;
                          description
                            "If true, tag is configured";
                        }
    
                        leaf tag {
                          type uint32;
                          description
                            "Route Tag";
                        }
    
                        leaf keep-bgp-med {
                          type boolean;
                          description
                            "If true, BGP MED value is preserved";
                        }
    
                        leaf keep-bgp-def-info {
                          type boolean;
                          description
                            "If true, BGP metric and metric type are
    preserved for default route";
                        }
    
                        leaf redist-summary {
                          type boolean;
                          description
                            "If true, routes will be redistributed as Summary
    LSAs instead of External LSAs";
                        }
    
                        leaf policy-name {
                          type string;
                          description
                            "Name of applied policy";
                        }
    
                        leaf classless {
                          type boolean;
                          description
                            "Whether to use CIDR";
                        }
    
                        leaf nssa-only {
                          type boolean;
                          description
                            "To NSSA areas only";
                        }
                      }  // list redistribution
                    }  // container process-summary
                  }  // container process-information
    
                  container areas {
                    description "Area table";
                    list area {
                      key "area-id";
                      description
                        "Container for per area data";
                      container flood-list-area-table {
                        description
                          "Area specific flood list table";
                        list flood {
                          key "interface-name";
                          description
                            "Flooding information for a specific interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Name of the Interface";
                          }
    
                          leaf flood-interface-name {
                            type xr:Interface-name;
                            description
                              "Name of the Interface for which flood list is
    retrieved";
                          }
    
                          leaf flood-pacing-timer {
                            type uint32;
                            description
                              "Time until next LS update due (ms)";
                          }
    
                          leaf flood-lsa-count {
                            type uint32;
                            description
                              "Number of LSAs currently being flooded";
                          }
    
                          list area-flood {
                            description
                              "Area scope floodlist";
                            leaf header-lsa-type {
                              type Lsa;
                              description
                                "LSA Type";
                            }
    
                            leaf header-lsa-age {
                              type uint16;
                              description
                                "Age of the LSA (s)";
                            }
    
                            leaf header-ls-id {
                              type inet:ipv4-address;
                              description
                                "LSA ID";
                            }
    
                            leaf header-advertising-router {
                              type inet:ipv4-address;
                              description
                                "Router ID of the Advertising Router";
                            }
    
                            leaf header-sequence-number {
                              type uint32;
                              description
                                "Current LSA sequence number";
                            }
    
                            leaf header-lsa-checksum {
                              type uint16;
                              description
                                "Checksum of the LSA";
                            }
                          }  // list area-flood
    
                          list as-flood {
                            description
                              "AS scope floodlist";
                            leaf header-lsa-type {
                              type Lsa;
                              description
                                "LSA Type";
                            }
    
                            leaf header-lsa-age {
                              type uint16;
                              description
                                "Age of the LSA (s)";
                            }
    
                            leaf header-ls-id {
                              type inet:ipv4-address;
                              description
                                "LSA ID";
                            }
    
                            leaf header-advertising-router {
                              type inet:ipv4-address;
                              description
                                "Router ID of the Advertising Router";
                            }
    
                            leaf header-sequence-number {
                              type uint32;
                              description
                                "Current LSA sequence number";
                            }
    
                            leaf header-lsa-checksum {
                              type uint16;
                              description
                                "Checksum of the LSA";
                            }
                          }  // list as-flood
                        }  // list flood
                      }  // container flood-list-area-table
    
                      container area-statistics {
                        description
                          "Container for Statistics";
                        container interface-stats-entries {
                          description
                            "Statistics innformation Interface table";
                          list interface-stats-entry {
                            key "interface-name";
                            description
                              "Statistics information for a specific interface";
                            leaf interface-name {
                              type xr:Interface-name;
                              description
                                "Name of the Interface";
                            }
    
                            leaf handle {
                              type xr:Interface-name;
                              description
                                "interface handle type";
                            }
    
                            leaf if-name-str {
                              type string;
                              description
                                "interface name";
                            }
    
                            list if-entry {
                              description
                                "interface entry";
                              leaf madj-intf {
                                type boolean;
                                description
                                  "OSPF madj interface";
                              }
    
                              leaf area-id {
                                type uint32;
                                description
                                  "OSPF area id";
                              }
    
                              leaf area-id-str {
                                type string;
                                description
                                  "OSPF aread id string";
                              }
    
                              list if-stat {
                                description
                                  "OSPF interface statistics";
                                leaf entry {
                                  type uint32;
                                  description
                                    "OSPF interface statistics";
                                }
                              }  // list if-stat
                            }  // list if-entry
                          }  // list interface-stats-entry
                        }  // container interface-stats-entries
                      }  // container area-statistics
    
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description "Area ID";
                      }
    
                      container neighbors {
                        description
                          "Neighbor table";
                        list neighbor {
                          description
                            "Neighbor information";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Name of the Interface";
                          }
    
                          leaf neighbor-address {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 address of the neighbor";
                          }
    
                          container neighbor-bfd-information {
                            description
                              "BFD related information of the neighbor";
                            leaf bfd-intf-enable-mode {
                              type uint32;
                              description
                                "BFD enable mode - Default/Strict";
                            }
    
                            leaf bfd-status-flag {
                              type uint8;
                              description
                                "Status of the BFD Session";
                            }
                          }  // container neighbor-bfd-information
    
                          leaf neighbor-id {
                            type inet:ipv4-address;
                            description
                              "Neighbor ID";
                          }
    
                          leaf neighbor-ip-address {
                            type inet:ipv4-address;
                            description
                              "Neighbor IP Address";
                          }
    
                          leaf neighbor-interface-name {
                            type xr:Interface-name;
                            description
                              "Interface via which the neighbor is seen";
                          }
    
                          leaf neighbor-dr-priority {
                            type uint8;
                            description
                              "DR priority of the neighbor";
                          }
    
                          leaf neighbor-state {
                            type Neighbor-state;
                            description
                              "NFSM state of the neighbor";
                          }
    
                          leaf dr-bdr-state {
                            type Dr-bdr-state;
                            description
                              "IFSM state of the neighbor";
                          }
    
                          leaf neighbor-dead-timer {
                            type uint32;
                            description
                              "Time until neighbor's dead timer expires (s)";
                          }
    
                          leaf neighbor-up-time {
                            type uint32;
                            description
                              "Amount of time since the adjacency is up (s)";
                          }
    
                          leaf neighbor-madj-interface {
                            type boolean;
                            description
                              "Interface is MADJ";
                          }
                        }  // list neighbor
                      }  // container neighbors
    
                      container interface-briefs {
                        description
                          "OSPF Interface Brief Table";
                        list interface-brief {
                          key "interface-name";
                          description
                            "OSPF interface brief information";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Interface";
                          }
    
                          leaf interface-name-xr {
                            type xr:Interface-name;
                            description
                              "Name of the interface on which OSPF is enabled";
                          }
    
                          leaf interface-area {
                            type string {
                              length "0..16";
                            }
                            description
                              "Area ID string in decimal or dotted-decimal
    format";
                          }
    
                          leaf interface-address {
                            type inet:ipv4-address;
                            description
                              "IPv4 address of the Interface";
                          }
    
                          leaf interface-mask {
                            type uint32;
                            description
                              "Interface IP Mask";
                          }
    
                          leaf interface-link-cost {
                            type uint16;
                            description
                              "link cost/metric of the interface";
                          }
    
                          leaf ospf-interface-state {
                            type Ospf-interface-state;
                            description
                              "Interface OSPF state";
                          }
    
                          leaf interface-fast-detect-hold-down {
                            type boolean;
                            description
                              "whether the interface is in fast detect hold
    down state";
                          }
    
                          leaf interface-neighbor-count {
                            type uint16;
                            description
                              "Total number of Neighbors";
                          }
    
                          leaf interface-adj-neighbor-count {
                            type uint16;
                            description
                              "Total number of Adjacent Neighbors";
                          }
    
                          leaf interfaceis-madj {
                            type boolean;
                            description
                              "If true, interface is multi-area";
                          }
    
                          leaf interface-madj-count {
                            type uint16;
                            description
                              "Total number of multi-area";
                          }
    
                          list interface-madj {
                            description
                              "Information for multi-area on the interface";
                            leaf interface-area {
                              type string {
                                length "0..16";
                              }
                              description
                                "Area ID string in decimal or dotted-decimal
    format";
                            }
    
                            leaf madj-area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf interface-neighbor-count {
                              type uint16;
                              description
                                "Number of Neighbors";
                            }
    
                            leaf interface-adj-neighbor-count {
                              type uint16;
                              description
                                "Total number of Adjacent Neighbors";
                            }
    
                            leaf interface-link-cost {
                              type uint16;
                              description
                                "Cost/Metric of the Interface link";
                            }
    
                            leaf ospf-interface-state {
                              type Ospf-interface-state;
                              description
                                "Interface OSPF state";
                            }
                          }  // list interface-madj
                        }  // list interface-brief
                      }  // container interface-briefs
    
                      container requests {
                        description
                          "Request List table";
                        list request {
                          description
                            "Request list for a particular adjacency";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Interface";
                          }
    
                          leaf neighbor-address {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 address of the neighbor";
                          }
    
                          leaf request-neighbor-id {
                            type inet:ipv4-address;
                            description
                              "Neighbor ID";
                          }
    
                          leaf request-neighbor-address {
                            type inet:ipv4-address;
                            description
                              "Neighbor IP address";
                          }
    
                          leaf request-interface-name {
                            type xr:Interface-name;
                            description
                              "Request list interface";
                          }
    
                          list request {
                            description
                              "List of request list entries";
                            leaf header-lsa-type {
                              type Lsa;
                              description
                                "LSA Type";
                            }
    
                            leaf header-lsa-age {
                              type uint16;
                              description
                                "Age of the LSA (s)";
                            }
    
                            leaf header-ls-id {
                              type inet:ipv4-address;
                              description
                                "LSA ID";
                            }
    
                            leaf header-advertising-router {
                              type inet:ipv4-address;
                              description
                                "Router ID of the Advertising Router";
                            }
    
                            leaf header-sequence-number {
                              type uint32;
                              description
                                "Current LSA sequence number";
                            }
    
                            leaf header-lsa-checksum {
                              type uint16;
                              description
                                "Checksum of the LSA";
                            }
                          }  // list request
                        }  // list request
                      }  // container requests
    
                      container retransmissions {
                        description
                          "Retransmission list table";
                        list retransmission {
                          description
                            "Retransmission list for a particular adjacency";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Name of the Interface";
                          }
    
                          leaf neighbor-address {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 address of the neighbor";
                          }
    
                          leaf retransmission-neighbor-id {
                            type inet:ipv4-address;
                            description
                              "Neighbor ID";
                          }
    
                          leaf retransmission-neighbor-ip-address {
                            type inet:ipv4-address;
                            description
                              "Neighbor IP Address";
                          }
    
                          leaf retransmission-interface-name {
                            type xr:Interface-name;
                            description
                              "Retransmission list interface";
                          }
    
                          leaf retransmission-timer {
                            type uint32;
                            description
                              "Amount of time remaining on retransmission timer
    (ms)";
                          }
    
                          leaf retransmission-count {
                            type uint32;
                            description
                              "Retransmission queue length";
                          }
    
                          list retransmission-area-db {
                            description
                              "List of Area scope entries";
                            leaf header-lsa-type {
                              type Lsa;
                              description
                                "LSA Type";
                            }
    
                            leaf header-lsa-age {
                              type uint16;
                              description
                                "Age of the LSA (s)";
                            }
    
                            leaf header-ls-id {
                              type inet:ipv4-address;
                              description
                                "LSA ID";
                            }
    
                            leaf header-advertising-router {
                              type inet:ipv4-address;
                              description
                                "Router ID of the Advertising Router";
                            }
    
                            leaf header-sequence-number {
                              type uint32;
                              description
                                "Current LSA sequence number";
                            }
    
                            leaf header-lsa-checksum {
                              type uint16;
                              description
                                "Checksum of the LSA";
                            }
                          }  // list retransmission-area-db
    
                          list retransmission-asdb {
                            description
                              "List of AS Scope entries";
                            leaf header-lsa-type {
                              type Lsa;
                              description
                                "LSA Type";
                            }
    
                            leaf header-lsa-age {
                              type uint16;
                              description
                                "Age of the LSA (s)";
                            }
    
                            leaf header-ls-id {
                              type inet:ipv4-address;
                              description
                                "LSA ID";
                            }
    
                            leaf header-advertising-router {
                              type inet:ipv4-address;
                              description
                                "Router ID of the Advertising Router";
                            }
    
                            leaf header-sequence-number {
                              type uint32;
                              description
                                "Current LSA sequence number";
                            }
    
                            leaf header-lsa-checksum {
                              type uint16;
                              description
                                "Checksum of the LSA";
                            }
                          }  // list retransmission-asdb
                        }  // list retransmission
                      }  // container retransmissions
    
                      container neighbor-details {
                        description
                          "Neighbor detail table";
                        list neighbor-detail {
                          description
                            "A single neighbor's detail information";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Name of the Interface";
                          }
    
                          leaf neighbor-address {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 address of the neighbor";
                          }
    
                          container neighbor-summary {
                            description
                              "Neighbor summary information";
                            container neighbor-bfd-information {
                              description
                                "BFD related information of the neighbor";
                              leaf bfd-intf-enable-mode {
                                type uint32;
                                description
                                  "BFD enable mode - Default/Strict";
                              }
    
                              leaf bfd-status-flag {
                                type uint8;
                                description
                                  "Status of the BFD Session";
                              }
                            }  // container neighbor-bfd-information
    
                            leaf neighbor-id {
                              type inet:ipv4-address;
                              description
                                "Neighbor ID";
                            }
    
                            leaf neighbor-ip-address {
                              type inet:ipv4-address;
                              description
                                "Neighbor IP Address";
                            }
    
                            leaf neighbor-interface-name {
                              type xr:Interface-name;
                              description
                                "Interface via which the neighbor is seen";
                            }
    
                            leaf neighbor-dr-priority {
                              type uint8;
                              description
                                "DR priority of the neighbor";
                            }
    
                            leaf neighbor-state {
                              type Neighbor-state;
                              description
                                "NFSM state of the neighbor";
                            }
    
                            leaf dr-bdr-state {
                              type Dr-bdr-state;
                              description
                                "IFSM state of the neighbor";
                            }
    
                            leaf neighbor-dead-timer {
                              type uint32;
                              description
                                "Time until neighbor's dead timer expires (s)";
                            }
    
                            leaf neighbor-up-time {
                              type uint32;
                              description
                                "Amount of time since the adjacency is up (s)";
                            }
    
                            leaf neighbor-madj-interface {
                              type boolean;
                              description
                                "Interface is MADJ";
                            }
                          }  // container neighbor-summary
    
                          container neighbor-bfd-information {
                            description
                              "BFD related information of the neighbor";
                            leaf bfd-intf-enable-mode {
                              type uint32;
                              description
                                "BFD enable mode - Default/Strict";
                            }
    
                            leaf bfd-status-flag {
                              type uint8;
                              description
                                "Status of the BFD Session";
                            }
                          }  // container neighbor-bfd-information
    
                          container neighbor-retransmission-information {
                            description
                              "Retransmission information with this neighbor";
                            leaf dbd-retransmission-count {
                              type uint32;
                              description
                                "Number of DBD retransmissions during last
    exchange";
                            }
    
                            leaf dbd-retransmission-total-count {
                              type uint32;
                              description
                                "Total number of DBD retransmissions for this
    neighbor";
                            }
    
                            leaf area-flooding-index {
                              type uint32;
                              description
                                "Area scope LSA's flood index";
                            }
    
                            leaf as-flood-index {
                              type uint32;
                              description
                                "AS scope LSA's flood index";
                            }
    
                            leaf neighbor-retransmission-count {
                              type uint32;
                              description
                                "Retransmission queue length";
                            }
    
                            leaf number-of-retransmissions {
                              type uint32;
                              description
                                "Number of retransmissions for this neighbor";
                            }
    
                            leaf area-first-flood-information {
                              type uint32;
                              description
                                "First flood item for area scope LSAs";
                            }
    
                            leaf area-first-flood-information-index {
                              type uint32;
                              description
                                "Index of the first flood item for area scope
    LSAs";
                            }
    
                            leaf as-first-flood-information {
                              type uint32;
                              description
                                "First flood item for AS scope LSAs";
                            }
    
                            leaf as-first-flood-information-index {
                              type uint32;
                              description
                                "Index for first flood item for AS scope LSAs";
                            }
    
                            leaf area-next-flood-information {
                              type uint32;
                              description
                                "Next flood item for area scope LSAs";
                            }
    
                            leaf area-next-flood-information-index {
                              type uint32;
                              description
                                "Index of next flood item for Area scope LSAs";
                            }
    
                            leaf as-next-flood-information {
                              type uint32;
                              description
                                "Next flood item for AS scope LSAs";
                            }
    
                            leaf as-next-flood-information-index {
                              type uint32;
                              description
                                "Index of next flood item for AS scope LSAs";
                            }
    
                            leaf last-retransmission-length {
                              type uint32;
                              description
                                "Number of LSAs sent in last retransmission";
                            }
    
                            leaf maximum-retransmission-length {
                              type uint32;
                              description
                                "Maximum number of LSAs sent in a retransmission";
                            }
    
                            leaf last-retransmission-time {
                              type uint32;
                              description
                                "Time taken for retransmission in the last
    attempt (ms)";
                            }
    
                            leaf maximum-retransmission-time {
                              type uint32;
                              description
                                "Maximum time taken for retransmission (ms)";
                            }
    
                            leaf lsa-retransmission-timer {
                              type uint32;
                              description
                                "Time until next LSA retransmission (ms)";
                            }
                          }  // container neighbor-retransmission-information
    
                          leaf neighbor-area-id {
                            type string {
                              length "0..16";
                            }
                            description
                              "Area ID string in decimal or dotted-decimal
    format";
                          }
    
                          leaf state-change-count {
                            type uint16;
                            description
                              "Number of state changes";
                          }
    
                          leaf neighbor-cost {
                            type uint16;
                            description
                              "Cost of path to this neighbor";
                          }
    
                          leaf neighbor-filter {
                            type boolean;
                            description
                              "If true, filter outgoing LSAs";
                          }
    
                          leaf neighbor-designated-router-address {
                            type inet:ipv4-address;
                            description
                              "Address of designated router";
                          }
    
                          leaf neighbor-backup-designated-router-address {
                            type inet:ipv4-address;
                            description
                              "Address of backup designated router";
                          }
    
                          leaf interface-type {
                            type Interface;
                            description
                              "Type of the interface, whether it is p2p,
    broadcast, nbma or p2mp";
                          }
    
                          leaf poll-interval {
                            type uint32;
                            description
                              "Poll interval (s)";
                          }
    
                          leaf next-poll-interval {
                            type uint32;
                            units "second";
                            description
                              "For NBMA networks, amount of time remaining in
    seconds before the next poll interval expires
    and Hello is sent (s)";
                          }
    
                          leaf neighbor-option {
                            type uint8;
                            description
                              " This is bitmaks of neighbor's option field
    received";
                          }
    
                          leaf pending-events {
                            type uint16;
                            description
                              "Number of pending events";
                          }
    
                          leaf neighbor-lls-option {
                            type uint32;
                            description
                              "This is a bitmask of Link Local signalling
    options received from the neighbor";
                          }
    
                          leaf oob-resynchronization {
                            type boolean;
                            description
                              "Out-Of-Bound resynchronization in progress";
                          }
    
                          leaf nsf-router-state {
                            type Nsf-rtr;
                            description
                              "For cisco NSF, the router is either Requester or
    Receiver";
                          }
    
                          leaf last-oob-time {
                            type uint32;
                            units "second";
                            description
                              "The amount of time in seconds since last time
    Out-Of-Band resynchronization was done with this
    neighbor";
                          }
    
                          leaf lfa-interface {
                            type xr:Interface-name;
                            description
                              "LFA Interface";
                          }
    
                          leaf lfa-next-hop {
                            type inet:ipv4-address;
                            description
                              "LFA Next Hop";
                          }
    
                          leaf lfa-neighbor-id {
                            type inet:ipv4-address;
                            description
                              "LFA Neighbor ID";
                          }
    
                          leaf lfa-neighbor-revision {
                            type uint32;
                            description
                              "LFA Neighbor Revision";
                          }
    
                          leaf neighbor-ack-list-count {
                            type uint32;
                            description
                              "Ack List Count";
                          }
    
                          leaf neighbor-ack-list-high-watermark {
                            type uint32;
                            description
                              "Ack List High Watermark";
                          }
    
                          leaf neighbor-interface-id {
                            type uint16;
                            description
                              "Interface ID of neighbor recived via LLS";
                          }
    
                          list adjacency-sid {
                            description
                              "List of SR Adjacency SIDs";
                            leaf adj-sid-label {
                              type uint32;
                              description
                                "Adjacency SID Label";
                            }
    
                            leaf protected-adj-sid {
                              type boolean;
                              description
                                "Adjacency SID Protection";
                            }
    
                            leaf adj-sid-has-backup {
                              type boolean;
                              description
                                "Adjacency SID has backup protection";
                            }
    
                            leaf configured-adj-sid {
                              type boolean;
                              description
                                "Configured Adjacency SID";
                            }
                          }  // list adjacency-sid
                        }  // list neighbor-detail
                      }  // container neighbor-details
    
                      container interfaces {
                        description
                          "OSPF Interface Table";
                        list interface {
                          key "interface-name";
                          description
                            "OSPF interface information";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Name of the Interface";
                          }
    
                          container interface-bfd-information {
                            description
                              "BFD information";
                            leaf bfd-intf-enable-mode {
                              type uint32;
                              description
                                "BFD enable mode - Default/Strict";
                            }
    
                            leaf interval {
                              type uint32;
                              description
                                "BFD interval (ms)";
                            }
    
                            leaf detection-multiplier {
                              type uint32;
                              description
                                "BFD multiplier value";
                            }
                          }  // container interface-bfd-information
    
                          container active-interface {
                            description
                              "Active interface details";
                            leaf wait-time {
                              type uint32;
                              description
                                "Wait time for DR/BDR selection (s)";
                            }
    
                            leaf interface-area-flood-index {
                              type uint32;
                              description
                                "Area scope LSAs flood index";
                            }
    
                            leaf interface-as-flood-index {
                              type uint32;
                              description
                                "AS scope LSAs flood index";
                            }
    
                            leaf interface-flood-length {
                              type uint32;
                              description
                                "Flood queue length";
                            }
    
                            leaf interface-area-next-flood {
                              type uint32;
                              description
                                "Next LSA to flood (Area scope)";
                            }
    
                            leaf interface-area-next-flood-index {
                              type uint32;
                              description
                                "Index of next LSA to flood (Area scope)";
                            }
    
                            leaf interface-as-next-flood {
                              type uint32;
                              description
                                "Next LSA to flood (AS scope)";
                            }
    
                            leaf interface-as-next-flood-index {
                              type uint32;
                              description
                                "Index of next LSA to flood (AS scope)";
                            }
    
                            leaf flood-scan-length {
                              type uint32;
                              description
                                "Length of flood queue in the last attempt";
                            }
    
                            leaf maximum-flood-length {
                              type uint32;
                              description
                                "Maximum length of the flood queue";
                            }
    
                            leaf last-flood-time {
                              type uint32;
                              description
                                "Time taken for Last flood (ms)";
                            }
    
                            leaf maximum-flood-time {
                              type uint32;
                              description
                                "Maximum time taken for flood (ms)";
                            }
    
                            leaf interface-flood-pacing-timer {
                              type uint32;
                              description
                                "Time until next flood pacing timer (ms)";
                            }
    
                            leaf interface-neighbor-count {
                              type uint16;
                              description
                                "Total number of Neighbors";
                            }
    
                            leaf suppress-hello-count {
                              type uint16;
                              description
                                "Number of neighbors for which hellos are
    suppressed";
                            }
    
                            leaf interface-authentication-type {
                              type Authentication;
                              description
                                "Authentication type";
                            }
    
                            leaf youngest-md-key {
                              type boolean;
                              description
                                "If true, MD key is configured";
                            }
    
                            leaf old-md5-key-neighbor-count {
                              type uint32;
                              description
                                "Number of neighbors using the old key (if
    rollover in progress)";
                            }
    
                            leaf youngest-md-key-id {
                              type uint16;
                              description
                                "Youngest MD key ID";
                            }
    
                            leaf keychain-name {
                              type string {
                                length "0..255";
                              }
                              description
                                "Name of Keychain used in this interface";
                            }
    
                            leaf keychain-key-conf {
                              type boolean;
                              description
                                "If true, Keychain key is configured";
                            }
    
                            leaf keychain-id {
                              type uint64;
                              description
                                "ID of the keychain used in this interface";
                            }
    
                            leaf keychain-alg {
                              type Ospf-crytographic-algo;
                              description
                                "Keychain cryptographic-algorithm used in this
    interface";
                            }
    
                            list md-keys {
                              description
                                "List of old MD keys";
                              leaf entry {
                                type uint16;
                                description
                                  "List of old MD keys";
                              }
                            }  // list md-keys
                          }  // container active-interface
    
                          leaf interface-name-xr {
                            type xr:Interface-name;
                            description
                              "Name of the interface";
                          }
    
                          leaf interface-state {
                            type Interface-state;
                            description
                              "State of the interface";
                          }
    
                          leaf interface-line-state {
                            type boolean;
                            description
                              "If true, line protocol is up";
                          }
    
                          leaf interface-address {
                            type inet:ipv4-address;
                            description
                              "IPv4 Address of the interface";
                          }
    
                          leaf interface-mask {
                            type uint32;
                            description
                              "Interface IP Mask";
                          }
    
                          leaf interface-area {
                            type string {
                              length "0..16";
                            }
                            description
                              "Area ID string in decimal or dotted-decimal
    format";
                          }
    
                          leaf interface-sid {
                            type uint32;
                            description
                              "Interface SID";
                          }
    
                          leaf interface-sid-php-off {
                            type boolean;
                            description
                              "SID PHP Off";
                          }
    
                          leaf interface-sid-n-flag-clear {
                            type boolean;
                            description
                              "SID N-Flag Clear";
                          }
    
                          leaf interface-strict-spf-sid {
                            type uint32;
                            description
                              "Interface Strict-SPF SID";
                          }
    
                          leaf interface-strict-spf-sid-php-off {
                            type boolean;
                            description
                              "Strict-SPF SID PHP Off";
                          }
    
                          leaf interface-strict-spf-sid-n-flag-clear {
                            type boolean;
                            description
                              "Strict-SPF SID N-Flag Clear";
                          }
    
                          leaf interface-router-id {
                            type inet:ipv4-address;
                            description
                              "Interface Router ID";
                          }
    
                          leaf network-type {
                            type Interface;
                            description
                              "Network type of the interface, whether P2P,
    Broadcast, NBMA or P2MP";
                          }
    
                          leaf ip-mtu {
                            type uint16;
                            description "IP MTU";
                          }
    
                          leaf maximum-packet-size {
                            type uint16;
                            description
                              "Maximum size of the packet";
                          }
    
                          leaf interface-tunnel-flags {
                            type uint32;
                            description
                              "Flags related to Tunnel Interface";
                          }
    
                          leaf interface-link-cost {
                            type uint16;
                            description
                              "Link cost/Metric of the interface";
                          }
    
                          leaf interface-bandwidth {
                            type uint32;
                            description
                              "Bandwidth of the Interface";
                          }
    
                          leaf cfg-cost-fallback {
                            type boolean;
                            description
                              "If true, cost fallback is configured";
                          }
    
                          leaf interface-cost-fallback {
                            type uint16;
                            description
                              "Interface fallback cost";
                          }
    
                          leaf cost-fallback-active {
                            type boolean;
                            description
                              "If true, cost fallback is active";
                          }
    
                          leaf cfg-delay-igp-cost-fallback {
                            type boolean;
                            description
                              "If true,delay igp  cost fallback is configured";
                          }
    
                          leaf interface-igp-cost-fallback {
                            type uint16;
                            description
                              "Interface fallback cost";
                          }
    
                          leaf dealy-igp-cost-fallback-active {
                            type boolean;
                            description
                              "If true, cost fallback is active";
                          }
    
                          leaf cfg-delay-te-cost-fallback {
                            type boolean;
                            description
                              "If true,delay te  cost fallback is configured";
                          }
    
                          leaf interface-delay-te-cost-fallback {
                            type uint32;
                            description
                              "Interface fallback cost";
                          }
    
                          leaf dealy-te-cost-fallback-active {
                            type boolean;
                            description
                              "If true, cost fallback is active";
                          }
    
                          leaf configured-ldp-sync {
                            type boolean;
                            description
                              "If true, configured as LDP sync";
                          }
    
                          leaf configured-ldp-sync-igp-shortcuts {
                            type boolean;
                            description
                              "If true, sync igp shortcuts";
                          }
    
                          leaf interface-ldp-sync {
                            type boolean;
                            description
                              "If true, interface LDP sync is achieved";
                          }
    
                          leaf configured-demand-circuit {
                            type boolean;
                            description
                              "Whether this interface is configured as a demand
    circuit";
                          }
    
                          leaf interface-demand-circuit {
                            type boolean;
                            description
                              "Whether this interface is running as a demand
    circuit";
                          }
    
                          leaf interface-dc-bitless-lsa-count {
                            type uint32;
                            description
                              "Number of LSAs with demand circuit bit not set
    for the area in which the interface is running";
                          }
    
                          leaf transmission-delay {
                            type uint16;
                            description
                              "Interface Transmission delay";
                          }
    
                          leaf ospf-interface-state {
                            type Ospf-interface-state;
                            description
                              "Interface OSPF state";
                          }
    
                          leaf interface-priority {
                            type uint8;
                            description
                              "DR priority of the interface";
                          }
    
                          leaf designated-router {
                            type boolean;
                            description
                              "If true, there is a Designated Router for this
    network";
                          }
    
                          leaf designated-router-id {
                            type inet:ipv4-address;
                            description
                              "Router id of Designated router of this network";
                          }
    
                          leaf designated-router-address {
                            type inet:ipv4-address;
                            description
                              "Interface address of the Designated Router of
    this network";
                          }
    
                          leaf backup-designated-router {
                            type boolean;
                            description
                              "If true, there is a Backup Designated Router for
    this network";
                          }
    
                          leaf backup-designated-router-id {
                            type inet:ipv4-address;
                            description
                              "Router id of Backup Designated Router of this
    network";
                          }
    
                          leaf backup-designated-router-address {
                            type inet:ipv4-address;
                            description
                              "interface address of the Backup Designated
    Router of this network";
                          }
    
                          leaf network-lsa-flush-timer {
                            type uint32;
                            units "second";
                            description
                              "The amount of time in seconds before flush timer
    for old network LSA expires";
                          }
    
                          leaf interface-lsa-filter {
                            type boolean;
                            description
                              "Filter is configured for out going LSAs";
                          }
    
                          leaf hello-interval {
                            type uint32;
                            description
                              "Configured hello interval (s)";
                          }
    
                          leaf hello-interval-ms {
                            type uint32;
                            description
                              "Configured hello interval (ms)";
                          }
    
                          leaf dead-interval {
                            type uint32;
                            description
                              "Configured dead interval (s)";
                          }
    
                          leaf wait-interval {
                            type uint32;
                            description
                              "Configured wait interval (s)";
                          }
    
                          leaf interface-retransmission-interrval {
                            type uint32;
                            description
                              "Configured retransmit interval (s)";
                          }
    
                          leaf interface-nsf-enabled {
                            type boolean;
                            description
                              "If true, NSF is enabled";
                          }
    
                          leaf interface-nsf {
                            type boolean;
                            description
                              "If true, NSF restart in progress on this
    interface";
                          }
    
                          leaf interface-last-nsf {
                            type uint32;
                            description
                              "Time since last NSF restart (s)";
                          }
    
                          leaf passive-interface {
                            type boolean;
                            description
                              "If true, passive interface";
                          }
    
                          leaf next-hello-time {
                            type uint32;
                            description
                              "Time until next Hello (s)";
                          }
    
                          leaf next-hello-time-ms {
                            type uint32;
                            description
                              "Time until next Hello (ms)";
                          }
    
                          leaf ttl-security-enabled {
                            type boolean;
                            description
                              "TTL security enabled on the interface";
                          }
    
                          leaf ttl-security-hop-count {
                            type uint32;
                            description
                              "TTL security hop count for this interface";
                          }
    
                          leaf interfaceis-madj {
                            type boolean;
                            description
                              "If true, interface is multi-area";
                          }
    
                          leaf interface-madj-count {
                            type uint16;
                            description
                              "Total number of multi-area";
                          }
    
                          leaf prefix-suppress-primary-addresses {
                            type boolean;
                            description
                              "whether Prefix Suppression for primary addresses
    is enabled";
                          }
    
                          leaf prefix-suppress-secondary-addresses {
                            type boolean;
                            description
                              "Whether Prefix Suppression for secondary
    addresses is enabled";
                          }
    
                          leaf is-loopback-stub-network {
                            type boolean;
                            description
                              "If true, loopback interface is advertised as a
    stub network";
                          }
    
                          leaf interface-ack-list-count {
                            type uint32;
                            description
                              "Ack List Count";
                          }
    
                          leaf interface-ack-list-high-watermark {
                            type uint32;
                            description
                              "Ack List High Watermark";
                          }
    
                          leaf registered-for-link-down-fast-detection {
                            type boolean;
                            description
                              "Whether this interface is registered for Link
    Down Fast Detection";
                          }
    
                          leaf fast-detect-hold-down-time {
                            type uint32;
                            description
                              "Hold-down time in ms for fast-detect event";
                          }
    
                          leaf interface-fast-detect-hold-down {
                            type boolean;
                            description
                              "Link in hold-down state due to fast detect event";
                          }
    
                          leaf fast-detect-hold-down-time-remaining {
                            type uint32;
                            description
                              "Remaining hold down time in ms";
                          }
    
                          leaf fast-reroute-type {
                            type Ipfrr;
                            description
                              "IP Fast Reroute Type";
                          }
    
                          leaf fast-reroute-topology-independent-lfa {
                            type boolean;
                            description
                              "Topology Independent LFA";
                          }
    
                          leaf srlg-default-weight {
                            type uint32;
                            description
                              "SRLG Default weight if not configured
    specifically for this SRLG";
                          }
    
                          leaf interface-unnum {
                            type xr:Interface-name;
                            description
                              "Unnumbered interface";
                          }
    
                          leaf interface-forw {
                            type boolean;
                            description
                              "Forward reference interface";
                          }
    
                          leaf interface-pri-labels {
                            type uint8;
                            description
                              "Max number of primary labels";
                          }
    
                          leaf interface-bkp-labels {
                            type uint8;
                            description
                              "Max number of backup labels";
                          }
    
                          leaf interface-srte-labels {
                            type uint8;
                            description
                              "Max number of SRTE labels";
                          }
    
                          leaf interface-srat-cap {
                            type uint8;
                            description
                              "SRTE automatic path capability";
                          }
    
                          leaf pm-delay-set {
                            type boolean;
                            description
                              "PerfMeas Delay values available";
                          }
    
                          leaf link-delay-avg {
                            type uint32;
                            description
                              "PerfMeas Average Link Delay";
                          }
    
                          leaf link-delay-min {
                            type uint32;
                            description
                              "PerfMeas Minimum Link Delay";
                          }
    
                          leaf link-delay-max {
                            type uint32;
                            description
                              "PerfMeas Maximum Link Delay";
                          }
    
                          leaf pm-dealy-average-a-bit {
                            type boolean;
                            description
                              "If true, PM delay avg bit is set";
                          }
    
                          leaf pm-dealy-min-max-a-bit {
                            type boolean;
                            description
                              "If true, PM delay min_max bit is set";
                          }
    
                          leaf link-delay-avg-raw {
                            type uint32;
                            description
                              "PerfMeas Average Link Delay Raw";
                          }
    
                          leaf link-delay-min-raw {
                            type uint32;
                            description
                              "PerfMeas Minimum Link Delay Raw";
                          }
    
                          leaf link-delay-max-raw {
                            type uint32;
                            description
                              "PerfMeas Maximum Link Delay Raw";
                          }
    
                          leaf link-delay-norm-intval {
                            type uint32;
                            description
                              "PerfMeas Delay Norm Interval";
                          }
    
                          leaf link-delay-norm-offset {
                            type uint32;
                            description
                              "PerfMeas Delay Norm Offset";
                          }
    
                          leaf link-delay-var {
                            type uint32;
                            description
                              "PerfMeas Link Delay Variance";
                          }
    
                          leaf pm-loss-set {
                            type boolean;
                            description
                              "PerfMeas Link Loss values available";
                          }
    
                          leaf link-loss {
                            type uint32;
                            description
                              "PerfMeas Link Loss";
                          }
    
                          leaf pmbw-util-set {
                            type boolean;
                            description
                              "PerfMeas BW Util values available";
                          }
    
                          leaf total-bandwidth {
                            type uint64;
                            description
                              "PerfMeas Total Bandwidth";
                          }
    
                          leaf rsvpte-bandwidth {
                            type uint64;
                            description
                              "PerfMeas RSVP-TE Bandwidth";
                          }
    
                          leaf remote-lfa {
                            type uint8;
                            description
                              "Remote LFA";
                          }
    
                          leaf srte-metric-set {
                            type boolean;
                            description
                              "SRTE Metric available";
                          }
    
                          leaf srte-metric {
                            type uint32;
                            description
                              "SRTE Metric";
                          }
    
                          leaf srte-app-weight {
                            type uint32;
                            description
                              "SRTE App Weight";
                          }
    
                          leaf srte-ext-admin-group-set {
                            type boolean;
                            description
                              "SRTE Ext. Admin Group available";
                          }
    
                          leaf interface-weight {
                            type uint32;
                            description
                              "Configured Interface weight";
                          }
    
                          leaf if-rib-l-csync-needed {
                            type boolean;
                            description
                              "rib lc sync needed";
                          }
    
                          leaf if-rib-l-csync {
                            type boolean;
                            description
                              "rib lc sync state";
                          }
    
                          leaf conditional-advertising-enabled {
                            type boolean;
                            description
                              "If Conditional advertising based on route-policy
    is enabled";
                          }
    
                          leaf conditional-advertise-policy-name {
                            type string;
                            description
                              "Name of the applied policy for Conditional
    advertising";
                          }
    
                          leaf conditional-advertising-result {
                            type boolean;
                            description
                              "Result of the policy applied for Conditional
    advertising";
                          }
    
                          list srlg {
                            description
                              "SRLG Values";
                            leaf entry {
                              type uint32;
                              description
                                "SRLG Values";
                            }
                          }  // list srlg
    
                          list srlg-weight {
                            description
                              "SRLG Weight";
                            leaf entry {
                              type uint32;
                              description
                                "SRLG Weight";
                            }
                          }  // list srlg-weight
    
                          list srtete-ext-admin-group {
                            description
                              "SRTE Ext. Admin Group";
                            leaf entry {
                              type uint32;
                              description
                                "SRTE Ext. Admin Group";
                            }
                          }  // list srtete-ext-admin-group
    
                          list interface-neighbor {
                            description
                              "Information for neighbors on the interface";
                            leaf interface-neighbor-id {
                              type inet:ipv4-address;
                              description
                                "Neighbor Router ID";
                            }
    
                            leaf interface-neighbor-cost {
                              type uint32;
                              description
                                "Cost of link to neighbor";
                            }
    
                            leaf neighbor-dr {
                              type boolean;
                              description
                                "If true, Designated router";
                            }
    
                            leaf neighbor-bdr {
                              type boolean;
                              description
                                "If true, Backup designated router";
                            }
    
                            leaf suppress-hello {
                              type boolean;
                              description
                                "If true, hellos suppressed";
                            }
                          }  // list interface-neighbor
    
                          list interface-madj {
                            description
                              "Information for multi-area on the interface";
                            leaf interface-area {
                              type string {
                                length "0..16";
                              }
                              description
                                "Area ID string in decimal or dotted-decimal
    format";
                            }
    
                            leaf madj-area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf interface-neighbor-count {
                              type uint16;
                              description
                                "Number of Neighbors";
                            }
    
                            leaf interface-adj-neighbor-count {
                              type uint16;
                              description
                                "Total number of Adjacent Neighbors";
                            }
    
                            leaf interface-link-cost {
                              type uint16;
                              description
                                "Cost/Metric of the Interface link";
                            }
    
                            leaf ospf-interface-state {
                              type Ospf-interface-state;
                              description
                                "Interface OSPF state";
                            }
                          }  // list interface-madj
    
                          list ipfrr-tiebreakers {
                            description
                              "IPFRR-Tiebreakers list";
                            leaf tiebreaker-type {
                              type Ipfrr-tbrkr;
                              description
                                "Tiebreaker Type, whether LC-Disjoint, Node
    Protecting etc";
                            }
    
                            leaf tiebreaker-index {
                              type uint32;
                              description
                                "Tiebreaker Index corresponding to the tiebreaker
    type";
                            }
                          }  // list ipfrr-tiebreakers
    
                          list ip-sec-addr {
                            description
                              "Secondary IP address list";
                            leaf secondary-addr {
                              type inet:ipv4-address;
                              description
                                "Secondary Address Type";
                            }
    
                            leaf secondary-prefix {
                              type uint32;
                              description
                                "Secondary Prefix Length";
                            }
                          }  // list ip-sec-addr
    
                          list sr-adj-sid {
                            description
                              "SR Configured Adjacency SIDs";
                            leaf adj-sid-label {
                              type uint32;
                              description
                                "Adjacency SID Label";
                            }
    
                            leaf protected-adj-sid {
                              type boolean;
                              description
                                "Adjacency SID Protection";
                            }
    
                            leaf adj-sid-is-active {
                              type boolean;
                              description
                                "Adj sid is allocated to a neighbor";
                            }
    
                            leaf adj-sid-inactive-reason {
                              type Ospf-sr-adj-sid-inactive-reason;
                              description
                                "Adjacency SID Inactive Reason";
                            }
                          }  // list sr-adj-sid
                        }  // list interface
                      }  // container interfaces
                    }  // list area
                  }  // container areas
    
                  container database {
                    description
                      "OSPF Link State Database";
                    container database-areas {
                      description
                        "Per-Area view of Link state database";
                      list database-area {
                        key "area-id";
                        description
                          "Per-Area Link State Database data";
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description "Area ID";
                        }
    
                        container lsas {
                          description
                            "Link State Database Table";
                          list lsa {
                            description
                              "Link State Advertisement information";
                            leaf area-id {
                              type uint32 {
                                range
                                  "0..4294967295";
                              }
                              description
                                "Area ID";
                            }
    
                            leaf ls-type {
                              type Ospf-ls;
                              description
                                "Link state type";
                            }
    
                            leaf ls-id {
                              type inet:ipv4-address-no-zone;
                              description
                                "Link state ID";
                            }
    
                            leaf advertising-router {
                              type inet:ipv4-address-no-zone;
                              description
                                "Router ID of the Advertising Router";
                            }
    
                            leaf interface-name {
                              type xr:Interface-name;
                              description
                                "Name of the Interface";
                            }
    
                            container lsa-header {
                              description
                                "Header information";
                              leaf ls-type {
                                type Lsa;
                                description
                                  "LSA type";
                              }
    
                              leaf lsid {
                                type inet:ipv4-address;
                                description
                                  "LS ID";
                              }
    
                              leaf advertising-router {
                                type inet:ipv4-address;
                                description
                                  "Router ID of Advertising Router";
                              }
    
                              leaf lsa-area-id {
                                type string {
                                  length "0..16";
                                }
                                description
                                  "Area ID in decimal or dotted-decimal format";
                              }
    
                              leaf lsa-age {
                                type uint16;
                                description
                                  "LSA's Age (s)";
                              }
    
                              leaf dn-age-lsa {
                                type boolean;
                                description
                                  "If true, Do Not Age this LSA";
                              }
    
                              leaf nsf {
                                type boolean;
                                description
                                  "If true,  LSA received from neighbor during NSF";
                              }
    
                              leaf sequence-number {
                                type uint32;
                                description
                                  "Current Sequence number";
                              }
    
                              leaf checksum {
                                type uint16;
                                description
                                  "Checksum value";
                              }
                            }  // container lsa-header
    
                            container lsa-detail-data {
                              description
                                "Detailed LSA Information";
                              container lsa-throttle-timer {
                                description
                                  "LSA throttle timer table information";
                                leaf timer-location {
                                  type Timer-table;
                                  description
                                    "Timer table";
                                }
    
                                leaf timer-type {
                                  type Timer;
                                  description
                                    "Timer type - whether maxage, refresh or checksum
    timer";
                                }
    
                                leaf second-table-index {
                                  type uint8;
                                  units "second";
                                  description
                                    "Index of the Seconds table";
                                }
    
                                leaf minute-table-index {
                                  type uint8;
                                  units "minute";
                                  description
                                    "Index of the Minutes table";
                                }
    
                                leaf last-inst-second-table-index {
                                  type uint8;
                                  units "second";
                                  description
                                    "Last Seconds table index processed";
                                }
    
                                leaf last-inst-minute-table-index {
                                  type uint8;
                                  units "minute";
                                  description
                                    "Last Minutes table index processed";
                                }
                              }  // container lsa-throttle-timer
    
                              container lsa-last-updated-time {
                                description
                                  "Time LSA was last updated";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container lsa-last-updated-time
    
                              container lsadb-base-time-stamp {
                                description
                                  "Current time stamp";
                                leaf second {
                                  type uint32;
                                  description
                                    "Second";
                                }
    
                                leaf nanosecond {
                                  type uint32;
                                  description
                                    "Nanosecond";
                                }
                              }  // container lsadb-base-time-stamp
    
                              container not-delete {
                                description
                                  "Reason why LSA is not deleted";
                                leaf free-time {
                                  type uint32;
                                  description
                                    "The amount of time since the last check was made
    to free this LSA (s)";
                                }
    
                                leaf no-delete {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because delete flag not set on this LSA";
                                }
    
                                leaf neighbor-exchange {
                                  type boolean;
                                  description
                                    "If true, the reason  not to delete this LSA is
    because neighbor is in exchange state";
                                }
    
                                leaf routing-table {
                                  type boolean;
                                  description
                                    "If true, the reason  not to delete this LSA is
    because it has a contributing entry in the
    routing table";
                                }
    
                                leaf acknowledgement {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because it's Acknowledgement list is not empty";
                                }
    
                                leaf maximum-age {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because it is in Maxage Queue";
                                }
    
                                leaf partial-spf {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because it is in partial SPF queue";
                                }
    
                                leaf flood-pending {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because waiting for flooding or retransmission";
                                }
    
                                leaf rate-limit {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because waiting for next wait-interval to expire";
                                }
    
                                leaf nsr-ack-pending {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because NSR ACK from standby is pending";
                                }
    
                                leaf sum-orig-pending {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because it is pending summary LSA originating";
                                }
    
                                leaf nsr-flood-required {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because it is pending flooding on switchover";
                                }
    
                                leaf link-state-q {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because it is used in Link State Q";
                                }
    
                                leaf used-in-uloop {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because it is used in uloop";
                                }
    
                                leaf added-in-ulooplist {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because it is Added in uloopdblist";
                                }
    
                                leaf used-as-parent {
                                  type boolean;
                                  description
                                    "If true, the reason not to delete this LSA is
    because it is used in parent_path_lsdb";
                                }
                              }  // container not-delete
    
                              leaf tos-capable {
                                type boolean;
                                description
                                  "If true, type of service capable indicated by
    LSA's option field";
                              }
    
                              leaf nssa-translation {
                                type boolean;
                                description
                                  "If true,  capable of type 7 to 5 translation
    indicated by LSA's option field";
                              }
    
                              leaf demand-circuit {
                                type boolean;
                                description
                                  "If true, capable of demand circuit as indicated
    by LSA's option field";
                              }
    
                              leaf dn-bit {
                                type boolean;
                                description
                                  "if true, DN bit set on the summary LSA indicated
    by LSA's option field";
                              }
    
                              leaf lsa-rate-limit-due-time {
                                type uint32;
                                description
                                  "Due time for rate-limit timer (ms)";
                              }
    
                              leaf lsadb-base-clock {
                                type uint64;
                                description
                                  "Clock stamp since boot";
                              }
    
                              leaf routing-bit {
                                type boolean;
                                description
                                  "If true, Routing Bit set on the LSA";
                              }
    
                              leaf advertising-router-reachable {
                                type boolean;
                                description
                                  "If true, Advertising Router is reachable";
                              }
    
                              leaf length {
                                type uint16;
                                description
                                  "Length of the LSA";
                              }
    
                              leaf sum-origin {
                                type uint16;
                                description
                                  "Summary Origin";
                              }
    
                              leaf ase-origin {
                                type uint16;
                                description
                                  "External Origin";
                              }
    
                              leaf in-sync {
                                type uint8;
                                description
                                  "Not In Sync With Active";
                              }
    
                              leaf lsa-prefix-priority {
                                type uint8;
                                description
                                  "Current prefix priority";
                              }
    
                              leaf new-lsa-prefix-priority {
                                type uint8;
                                description
                                  "New prefix priority to be set after the current
    SPF";
                              }
    
                              leaf lsa-flood-required-post-fail-over {
                                type boolean;
                                description
                                  "LSA flood required after FO";
                              }
                            }  // container lsa-detail-data
    
                            container lsa-internal-data {
                              description
                                "Information pertaining to a specific LSA type";
                              container router-lsa-type {
                                when
                                  "../internal-lsa-type = 'mgmt-rtr-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_RTR_TYPE'";
                                }
                                description
                                  "Router LSA";
                                leaf router-asbr {
                                  type boolean;
                                  description
                                    "If True, router is an Autonomous system Border
    Router";
                                }
    
                                leaf router-abr {
                                  type boolean;
                                  description
                                    "If True, router is an Area Border Router";
                                }
    
                                leaf internal-lsa {
                                  type boolean;
                                  description
                                    "If true, internal LSA";
                                }
    
                                list link {
                                  description
                                    "List of links in this LSA";
                                  leaf link-id {
                                    type inet:ipv4-address;
                                    description
                                      "Link ID";
                                  }
    
                                  leaf link-data {
                                    type inet:ipv4-address;
                                    description
                                      "Link Data";
                                  }
    
                                  leaf link-type {
                                    type Ospf-link-types;
                                    description
                                      "Type of link";
                                  }
    
                                  leaf link-metric {
                                    type uint16;
                                    description
                                      "Cost for using this link";
                                  }
    
                                  list link-tos {
                                    description
                                      "List of type of service metrics";
                                    leaf router-tos {
                                      type uint16;
                                      description
                                        "Type of Service";
                                    }
    
                                    leaf tos-cost {
                                      type uint16;
                                      description
                                        "Type of service specific metric";
                                    }
                                  }  // list link-tos
                                }  // list link
    
                                list internal-link {
                                  description
                                    "List of links for internal LSA";
                                  leaf link-id {
                                    type inet:ipv4-address;
                                    description
                                      "Link ID";
                                  }
    
                                  leaf link-data {
                                    type inet:ipv4-address;
                                    description
                                      "Link Data";
                                  }
    
                                  leaf link-type {
                                    type Ospf-link-types;
                                    description
                                      "Type of link";
                                  }
    
                                  leaf link-metric {
                                    type uint16;
                                    description
                                      "Cost for using this link";
                                  }
    
                                  list link-tos {
                                    description
                                      "List of type of service metrics";
                                    leaf router-tos {
                                      type uint16;
                                      description
                                        "Type of Service";
                                    }
    
                                    leaf tos-cost {
                                      type uint16;
                                      description
                                        "Type of service specific metric";
                                    }
                                  }  // list link-tos
                                }  // list internal-link
                              }  // container router-lsa-type
    
                              container network-lsa-type {
                                when
                                  "../internal-lsa-type = 'mgmt-ntwk-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_NTWK_TYPE'";
                                }
                                description
                                  "Network LSA";
                                leaf network-prefix-length {
                                  type uint32;
                                  description
                                    "Prefix length of the Network";
                                }
    
                                list neighbor-router {
                                  description
                                    "Neighbor router list";
                                  leaf entry {
                                    type inet:ipv4-address;
                                    description
                                      "Neighbor router list";
                                  }
                                }  // list neighbor-router
                              }  // container network-lsa-type
    
                              container summary-lsa-type {
                                when
                                  "../internal-lsa-type = 'mgmt-sum-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_SUM_TYPE'";
                                }
                                description
                                  "Summary LSA";
                                leaf summary-prefix-length {
                                  type uint32;
                                  description
                                    "Prefix length of the Summary LSA";
                                }
    
                                leaf internal-sum-lsa {
                                  type boolean;
                                  description
                                    "If true, internal max-metric LSA";
                                }
    
                                list summary-lsa-metric {
                                  description
                                    "Metric";
                                  leaf entry {
                                    type uint32;
                                    description
                                      "Metric";
                                  }
                                }  // list summary-lsa-metric
                              }  // container summary-lsa-type
    
                              container external-lsa-type {
                                when
                                  "../internal-lsa-type = 'mgmt-ext-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_EXT_TYPE'";
                                }
                                description
                                  "External LSA";
                                leaf external-prefix-length {
                                  type uint32;
                                  description
                                    "Prefix length";
                                }
    
                                leaf internal-external-lsa {
                                  type boolean;
                                  description
                                    "If true, internal max-metric LSA";
                                }
    
                                list external-tos-metric {
                                  description
                                    "Type of service information";
                                  leaf external-metric {
                                    type uint32;
                                    description
                                      "Cost of this route";
                                  }
    
                                  leaf external-metric-type {
                                    type Ex-metric;
                                    description
                                      "External LSA metric type - whether type 1 or
    type 2";
                                  }
    
                                  leaf external-tos {
                                    type uint32;
                                    description
                                      "Type of Service";
                                  }
    
                                  leaf forwarding-address {
                                    type inet:ipv4-address;
                                    description
                                      "Forwarding Address on the External LSA";
                                  }
    
                                  leaf external-tag {
                                    type uint32;
                                    description
                                      "Route Tag";
                                  }
                                }  // list external-tos-metric
                              }  // container external-lsa-type
    
                              container opaque-link-lsa-type {
                                when
                                  "../internal-lsa-type = 'mgmt-opq-link-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_OPQ_LINK_TYPE'";
                                }
                                description
                                  "Opaque-Link LSA";
                                leaf opaque-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Interface on which the Opaque link LSA is
    received";
                                }
                              }  // container opaque-link-lsa-type
    
                              container opaque-mpls-te-lsa-type {
                                when
                                  "../internal-lsa-type = 'mgmt-opq-rrr-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_OPQ_RRR_TYPE'";
                                }
                                description
                                  "Opaque-Area, opaque type 1 LSA";
                                list tlv {
                                  description
                                    "List of TLVs";
                                  leaf tlv-type {
                                    type uint16;
                                    description
                                      "Type of top-level TLV";
                                  }
    
                                  leaf tlv-length {
                                    type uint16;
                                    description
                                      "Length of top-level TLV";
                                  }
    
                                  leaf mpls-router-id {
                                    type inet:ipv4-address;
                                    description
                                      "MPLS-TE Router ID";
                                  }
    
                                  leaf mpls-dste-link {
                                    type boolean;
                                    description
                                      "MPLS DS-TE supported";
                                  }
    
                                  leaf tlv-data {
                                    type yang:hex-string;
                                    description
                                      "TLV direct data";
                                  }
    
                                  list te-link-sub-tlv {
                                    description
                                      "List of Sub-TLVs";
                                    leaf sub-tlv-type {
                                      type Stlv;
                                      description
                                        "Type of sub TLV";
                                    }
    
                                    leaf sub-tlv-length {
                                      type uint16;
                                      description
                                        "Length of sub TLV";
                                    }
    
                                    leaf sub-tlv-value {
                                      type yang:hex-string;
                                      description
                                        "Value of sub TLV";
                                    }
                                  }  // list te-link-sub-tlv
                                }  // list tlv
                              }  // container opaque-mpls-te-lsa-type
    
                              container opaque-grace-lsa {
                                when
                                  "../internal-lsa-type = 'mgmt-opq-gr-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_OPQ_GR_TYPE'";
                                }
                                description
                                  "Opaque-link, opaque type 3 Grace LSA";
                                leaf grace-period {
                                  type uint32;
                                  description
                                    "The amount of time the router's neighbor should
    advertise it fully adjacent (s)";
                                }
    
                                leaf grace-reason {
                                  type Ospf-gr-reason;
                                  description
                                    "Reason for router restart";
                                }
    
                                leaf ip-address {
                                  type inet:ipv4-address;
                                  description
                                    "IP interface address on the subnet associated
    with the grace LSA";
                                }
                              }  // container opaque-grace-lsa
    
                              container opaque-router-info-lsa-type {
                                when
                                  "../internal-lsa-type = 'mgmt-opq-ri-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_OPQ_RI_TYPE'";
                                }
                                description
                                  "Opaque Router Information LSA";
                                leaf opaque-rilsa-scope {
                                  type Ospf-lsa-opq-ri-scope;
                                  description
                                    "Opaque LSA flooding scope, a.k.a., Opaque LSA
    Type";
                                }
    
                                leaf opaque-ri-interface-name {
                                  type xr:Interface-name;
                                  description
                                    "Interface on which this Link-Local Opaque link
    LSA is received";
                                }
    
                                list opaque-ritlv {
                                  description
                                    "Router Information TLV";
                                  container unknown-tlv {
                                    when
                                      "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-unknown'" {
                                      description
                                        "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_UNKNOWN'";
                                    }
                                    description
                                      "Unknown Rtr Info TLV";
                                    leaf ri-gen-tlv-type {
                                      type uint16;
                                      description
                                        "Type of TLV";
                                    }
    
                                    leaf ri-gen-tlv-length {
                                      type uint16;
                                      description
                                        "Length of TLV";
                                    }
    
                                    leaf ri-genvalue {
                                      type yang:hex-string;
                                      description
                                        "Data in TLV";
                                    }
                                  }  // container unknown-tlv
    
                                  container rtr-cap-tlv {
                                    when
                                      "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-rtrcap'" {
                                      description
                                        "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_RTRCAP'";
                                    }
                                    description
                                      "Rtr Cap TLV";
                                    leaf rtr-cap-tlv-length {
                                      type uint16;
                                      description
                                        "Length of TLV";
                                    }
    
                                    leaf rtr-cap-graceful-restart {
                                      type boolean;
                                      description
                                        "Graceful Restart Capability";
                                    }
    
                                    leaf rtr-cap-graceful-restart-helper {
                                      type boolean;
                                      description
                                        "Graceful Restart Helper Capability";
                                    }
    
                                    leaf rtr-cap-stub-rtr {
                                      type boolean;
                                      description
                                        "Stub Router capability";
                                    }
    
                                    leaf rtr-cap-area-te {
                                      type boolean;
                                      description
                                        "Traffic Engineering capability of area";
                                    }
    
                                    leaf rtr-cap-p2plan {
                                      type boolean;
                                      description
                                        "P2P LAN Capability";
                                    }
    
                                    leaf rtr-cap-te-exp {
                                      type boolean;
                                      description
                                        "TE Experimental bit";
                                    }
    
                                    leaf rtr-cap-all-bits {
                                      type uint32;
                                      description
                                        "All capability bits";
                                    }
    
                                    leaf rtr-cap-additional-info {
                                      type yang:hex-string;
                                      description
                                        "Additional Information in TLV";
                                    }
                                  }  // container rtr-cap-tlv
    
                                  container pcedtlv {
                                    when
                                      "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-pce-discovery'" {
                                      description
                                        "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_PCEDISCOVERY'";
                                    }
                                    description
                                      "PCE Discovery TLV";
                                    container pced-addr {
                                      description
                                        "PCE Address";
                                      container pce-addr-unknown-tlv {
                                        when
                                          "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-invalid'" {
                                          description
                                            "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_INVALID'";
                                        }
                                        description
                                          "Unknown PCE Addr TLV";
                                        leaf ri-gen-tlv-type {
                                          type uint16;
                                          description
                                            "Type of TLV";
                                        }
    
                                        leaf ri-gen-tlv-length {
                                          type uint16;
                                          description
                                            "Length of TLV";
                                        }
    
                                        leaf ri-genvalue {
                                          type yang:hex-string;
                                          description
                                            "Data in TLV";
                                        }
                                      }  // container pce-addr-unknown-tlv
    
                                      container ipv4pce-addr {
                                        when
                                          "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv4'" {
                                          description
                                            "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV4'";
                                        }
                                        description
                                          "IPv4 PCE Address";
                                        leaf pceipv4-addr {
                                          type inet:ipv4-address;
                                          description
                                            "PCE IPv4 Address";
                                        }
                                      }  // container ipv4pce-addr
    
                                      container ipv6pce-addr {
                                        when
                                          "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv6'" {
                                          description
                                            "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV6'";
                                        }
                                        description
                                          "IPv6 PCE Address";
                                        leaf pceipv6-addr {
                                          type inet:ipv6-address;
                                          description
                                            "PCE IPv6 Address";
                                        }
                                      }  // container ipv6pce-addr
    
                                      leaf pce-addr-type {
                                        type Ospf-sh-opq-ri-pce-addr-types;
                                        description
                                          "PCEAddrType";
                                      }
                                    }  // container pced-addr
    
                                    container pced-scope {
                                      description
                                        "PCE Scope Information";
                                      leaf lbit {
                                        type boolean;
                                        description
                                          "L Bit";
                                      }
    
                                      leaf rbit {
                                        type boolean;
                                        description
                                          "R Bit";
                                      }
    
                                      leaf rd-bit {
                                        type boolean;
                                        description
                                          "Rd Bit";
                                      }
    
                                      leaf sbit {
                                        type boolean;
                                        description
                                          "S Bit";
                                      }
    
                                      leaf sd-bit {
                                        type boolean;
                                        description
                                          "Sd Bit";
                                      }
    
                                      leaf ybit {
                                        type boolean;
                                        description
                                          "Y Bit";
                                      }
    
                                      leaf pref-l {
                                        type uint8;
                                        description
                                          "Pref L";
                                      }
    
                                      leaf pref-r {
                                        type uint8;
                                        description
                                          "Pref R";
                                      }
    
                                      leaf pref-s {
                                        type uint8;
                                        description
                                          "Pref S";
                                      }
    
                                      leaf pref-y {
                                        type uint8;
                                        description
                                          "Pref Y";
                                      }
    
                                      leaf all-scope-info-bits {
                                        type uint32;
                                        description
                                          "PCE Scope Information";
                                      }
                                    }  // container pced-scope
    
                                    leaf pcedtlv-length {
                                      type uint16;
                                      description
                                        "Length of TLV";
                                    }
                                  }  // container pcedtlv
    
                                  container sr-algo-tlv {
                                    when
                                      "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-algo'" {
                                      description
                                        "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_ALGO'";
                                    }
                                    description
                                      "SR Algorithm TLV";
                                    list sr-algo-value {
                                      description
                                        "SR Algorithms";
                                      leaf entry {
                                        type uint8;
                                        description
                                          "SR Algorithms";
                                      }
                                    }  // list sr-algo-value
                                  }  // container sr-algo-tlv
    
                                  container sr-range-tlv {
                                    when
                                      "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-range'" {
                                      description
                                        "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_RANGE'";
                                    }
                                    description
                                      "SR Range TLV";
                                    container sidtlv {
                                      description
                                        "SID sub-TLV";
                                      leaf sr-sid-length {
                                        type uint16;
                                        description
                                          "Length of sub-TLV";
                                      }
    
                                      leaf sr-sid-value {
                                        type uint32;
                                        description
                                          "SID Value";
                                      }
                                    }  // container sidtlv
    
                                    leaf sr-range-length {
                                      type uint16;
                                      description
                                        "Length of TLV";
                                    }
    
                                    leaf sr-range-size {
                                      type uint32;
                                      description
                                        "SR Range Size";
                                    }
                                  }  // container sr-range-tlv
    
                                  container node-msdtlv {
                                    when
                                      "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-node-msd'" {
                                      description
                                        "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_NODE_MSD'";
                                    }
                                    description
                                      "Node MSD TLV";
                                    container node-msd-sub-types {
                                      description
                                        "Node MSD Subtypes";
                                      leaf msd-sub-type {
                                        type uint8;
                                        description
                                          "MSD SubType";
                                      }
    
                                      leaf msd-value {
                                        type uint8;
                                        description
                                          "MSD Value";
                                      }
                                    }  // container node-msd-sub-types
    
                                    leaf node-msdtlv-length {
                                      type uint16;
                                      description
                                        "Length of TLV";
                                    }
                                  }  // container node-msdtlv
    
                                  container srlbtlv {
                                    when
                                      "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-srlb'" {
                                      description
                                        "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SRLB'";
                                    }
                                    description
                                      "SRLB Range TLV";
                                    container sidtlv {
                                      description
                                        "SID sub-TLV";
                                      leaf sr-sid-length {
                                        type uint16;
                                        description
                                          "Length of sub-TLV";
                                      }
    
                                      leaf sr-sid-value {
                                        type uint32;
                                        description
                                          "SID Value";
                                      }
                                    }  // container sidtlv
    
                                    leaf srlbtlv-length {
                                      type uint16;
                                      description
                                        "Length of TLV";
                                    }
    
                                    leaf srlb-range-size {
                                      type uint32;
                                      description
                                        "SRLB Range Size";
                                    }
                                  }  // container srlbtlv
    
                                  container fadlv {
                                    when
                                      "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-fad'" {
                                      description
                                        "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_FAD'";
                                    }
                                    description
                                      "FAD TLV";
                                    container exclude-attribute {
                                      description
                                        "Exclude sub-TLV";
                                      leaf fad-sub-tlv-length {
                                        type uint16;
                                        description
                                          "Length of sub-TLV";
                                      }
    
                                      list fad-admin-group {
                                        description
                                          "FAD Admin Group";
                                        leaf entry {
                                          type uint32;
                                          description
                                            "FAD Admin Group";
                                        }
                                      }  // list fad-admin-group
                                    }  // container exclude-attribute
    
                                    container include-any-attribute {
                                      description
                                        "Include any sub-TLV";
                                      leaf fad-sub-tlv-length {
                                        type uint16;
                                        description
                                          "Length of sub-TLV";
                                      }
    
                                      list fad-admin-group {
                                        description
                                          "FAD Admin Group";
                                        leaf entry {
                                          type uint32;
                                          description
                                            "FAD Admin Group";
                                        }
                                      }  // list fad-admin-group
                                    }  // container include-any-attribute
    
                                    container include-all-attribute {
                                      description
                                        "Include all sub-TLV";
                                      leaf fad-sub-tlv-length {
                                        type uint16;
                                        description
                                          "Length of sub-TLV";
                                      }
    
                                      list fad-admin-group {
                                        description
                                          "FAD Admin Group";
                                        leaf entry {
                                          type uint32;
                                          description
                                            "FAD Admin Group";
                                        }
                                      }  // list fad-admin-group
                                    }  // container include-all-attribute
    
                                    container fad-unsupported-tlv {
                                      description
                                        "Felx Algo unsupported TLV";
                                      leaf fad-sub-tlv-length {
                                        type uint16;
                                        description
                                          "Length of sub-TLV";
                                      }
    
                                      list fad-unknown-data {
                                        description
                                          "FAD unknown TLV data";
                                        leaf entry {
                                          type uint8;
                                          description
                                            "FAD unknown TLV data";
                                        }
                                      }  // list fad-unknown-data
                                    }  // container fad-unsupported-tlv
    
                                    leaf fad-length {
                                      type uint16;
                                      description
                                        "Length of TLV";
                                    }
    
                                    leaf fad-algo {
                                      type uint8;
                                      description
                                        "Flex ALgo number";
                                    }
    
                                    leaf fad-metric-type {
                                      type uint8;
                                      description
                                        "Flex Algo Metric Type";
                                    }
    
                                    leaf fad-algo-type {
                                      type uint8;
                                      description
                                        "Flex Algo Calc type";
                                    }
    
                                    leaf fad-priority {
                                      type uint8;
                                      description
                                        "Flex Algo Priority";
                                    }
    
                                    leaf fad-unsupported-tlv-type {
                                      type uint8;
                                      description
                                        "Flex Algo unsupported TLV type";
                                    }
                                  }  // container fadlv
    
                                  container host-name {
                                    when
                                      "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-host-name'" {
                                      description
                                        "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_HOSTNAME'";
                                    }
                                    description
                                      "Hostname string ";
                                    leaf router-host-name {
                                      type string {
                                        length
                                          "0..256";
                                      }
                                      description
                                        "Hostname string";
                                    }
                                  }  // container host-name
    
                                  leaf ritlv-internal-type {
                                    type Ospf-sh-opq-ri-tlv-types;
                                    description
                                      "RITLVInternalType";
                                  }
                                }  // list opaque-ritlv
                              }  // container opaque-router-info-lsa-type
    
                              container opaque-ep-lsa-type {
                                when
                                  "../internal-lsa-type = 'mgmt-opq-epl-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_OPQ_EPL_TYPE'";
                                }
                                description
                                  "Extende Prefix LSA type";
                                list tlv {
                                  description
                                    "List of TLVs";
                                  leaf tlv-type {
                                    type uint16;
                                    description
                                      "Type of top-level TLV";
                                  }
    
                                  leaf tlv-length {
                                    type uint16;
                                    description
                                      "Length of top-level TLV";
                                  }
    
                                  leaf mpls-router-id {
                                    type inet:ipv4-address;
                                    description
                                      "MPLS-TE Router ID";
                                  }
    
                                  leaf mpls-dste-link {
                                    type boolean;
                                    description
                                      "MPLS DS-TE supported";
                                  }
    
                                  leaf tlv-data {
                                    type yang:hex-string;
                                    description
                                      "TLV direct data";
                                  }
    
                                  list te-link-sub-tlv {
                                    description
                                      "List of Sub-TLVs";
                                    leaf sub-tlv-type {
                                      type Stlv;
                                      description
                                        "Type of sub TLV";
                                    }
    
                                    leaf sub-tlv-length {
                                      type uint16;
                                      description
                                        "Length of sub TLV";
                                    }
    
                                    leaf sub-tlv-value {
                                      type yang:hex-string;
                                      description
                                        "Value of sub TLV";
                                    }
                                  }  // list te-link-sub-tlv
                                }  // list tlv
                              }  // container opaque-ep-lsa-type
    
                              container opaque-el-lsa-type {
                                when
                                  "../internal-lsa-type = 'mgmt-opq-ell-type'" {
                                  description
                                    "../InternalLSAType = 'MGMT_OPQ_ELL_TYPE'";
                                }
                                description
                                  "Extended Link LSA type";
                                list tlv {
                                  description
                                    "List of TLVs";
                                  leaf tlv-type {
                                    type uint16;
                                    description
                                      "Type of top-level TLV";
                                  }
    
                                  leaf tlv-length {
                                    type uint16;
                                    description
                                      "Length of top-level TLV";
                                  }
    
                                  leaf mpls-router-id {
                                    type inet:ipv4-address;
                                    description
                                      "MPLS-TE Router ID";
                                  }
    
                                  leaf mpls-dste-link {
                                    type boolean;
                                    description
                                      "MPLS DS-TE supported";
                                  }
    
                                  leaf tlv-data {
                                    type yang:hex-string;
                                    description
                                      "TLV direct data";
                                  }
    
                                  list te-link-sub-tlv {
                                    description
                                      "List of Sub-TLVs";
                                    leaf sub-tlv-type {
                                      type Stlv;
                                      description
                                        "Type of sub TLV";
                                    }
    
                                    leaf sub-tlv-length {
                                      type uint16;
                                      description
                                        "Length of sub TLV";
                                    }
    
                                    leaf sub-tlv-value {
                                      type yang:hex-string;
                                      description
                                        "Value of sub TLV";
                                    }
                                  }  // list te-link-sub-tlv
                                }  // list tlv
                              }  // container opaque-el-lsa-type
    
                              leaf internal-lsa-type {
                                type Ospf-internal-lsa-types;
                                description
                                  "InternalLSAType";
                              }
                            }  // container lsa-internal-data
                          }  // list lsa
                        }  // container lsas
    
                        container lsa-summaries {
                          description
                            "Link state advertisement summary table";
                          list lsa-summary {
                            description
                              "LSA summary information";
                            leaf area-id {
                              type uint32 {
                                range
                                  "0..4294967295";
                              }
                              description
                                "Area ID";
                            }
    
                            leaf ls-type {
                              type Ospf-ls;
                              description
                                "Link state type";
                            }
    
                            leaf ls-id {
                              type inet:ipv4-address-no-zone;
                              description
                                "Link state ID";
                            }
    
                            leaf advertising-router {
                              type inet:ipv4-address-no-zone;
                              description
                                "Router ID of the Advertising Router";
                            }
    
                            leaf interface-name {
                              type xr:Interface-name;
                              description
                                "Name of the Interface";
                            }
    
                            container lsa-header {
                              description
                                "LSA header information";
                              leaf ls-type {
                                type Lsa;
                                description
                                  "LSA type";
                              }
    
                              leaf lsid {
                                type inet:ipv4-address;
                                description
                                  "LS ID";
                              }
    
                              leaf advertising-router {
                                type inet:ipv4-address;
                                description
                                  "Router ID of Advertising Router";
                              }
    
                              leaf lsa-area-id {
                                type string {
                                  length "0..16";
                                }
                                description
                                  "Area ID in decimal or dotted-decimal format";
                              }
    
                              leaf lsa-age {
                                type uint16;
                                description
                                  "LSA's Age (s)";
                              }
    
                              leaf dn-age-lsa {
                                type boolean;
                                description
                                  "If true, Do Not Age this LSA";
                              }
    
                              leaf nsf {
                                type boolean;
                                description
                                  "If true,  LSA received from neighbor during NSF";
                              }
    
                              leaf sequence-number {
                                type uint32;
                                description
                                  "Current Sequence number";
                              }
    
                              leaf checksum {
                                type uint16;
                                description
                                  "Checksum value";
                              }
                            }  // container lsa-header
    
                            leaf external-tag {
                              type uint32;
                              description
                                "Route Tag";
                            }
    
                            leaf link-count {
                              type uint16;
                              description
                                "Number of links";
                            }
                          }  // list lsa-summary
                        }  // container lsa-summaries
                      }  // list database-area
                    }  // container database-areas
    
                    container database-summaries {
                      description
                        "Link State database summary table";
                      list database-summary {
                        key "area-id";
                        description
                          "Link State Database summary for a particular
    area";
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description "Area ID";
                        }
    
                        leaf dbase-sum-area-id-string {
                          type string {
                            length "0..16";
                          }
                          description "Area id";
                        }
    
                        list area-lsa-counter {
                          description
                            "Summary counters for Area scope LSAs";
                          leaf lsa-type {
                            type Lsa;
                            description
                              "Type of LSAs";
                          }
    
                          leaf lsa-count {
                            type int32;
                            description
                              "Number of LSAs of this type";
                          }
    
                          leaf lsa-delete-count {
                            type int32;
                            description
                              "Number of deleted LSAs of this type";
                          }
    
                          leaf lsa-maxage-count {
                            type int32;
                            description
                              "Number of MaxAged LSAs of this type";
                          }
    
                          leaf lsa-self-count {
                            type int32;
                            description
                              "Number of self-generated LSAs";
                          }
                        }  // list area-lsa-counter
                      }  // list database-summary
                    }  // container database-summaries
    
                    container database-summary-as {
                      description
                        "Link State Database summary for the AS";
                      list as-lsa-counter {
                        description
                          "Summary counter for AS scope LSAs";
                        leaf lsa-type {
                          type Lsa;
                          description
                            "Type of LSAs";
                        }
    
                        leaf lsa-count {
                          type int32;
                          description
                            "Number of LSAs of this type";
                        }
    
                        leaf lsa-delete-count {
                          type int32;
                          description
                            "Number of deleted LSAs of this type";
                        }
    
                        leaf lsa-maxage-count {
                          type int32;
                          description
                            "Number of MaxAged LSAs of this type";
                        }
    
                        leaf lsa-self-count {
                          type int32;
                          description
                            "Number of self-generated LSAs";
                        }
                      }  // list as-lsa-counter
                    }  // container database-summary-as
    
                    container lsas {
                      description
                        "Link State Database Table";
                      list lsa {
                        description
                          "Link State Advertisement information";
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description "Area ID";
                        }
    
                        leaf ls-type {
                          type Ospf-ls;
                          description
                            "Link state type";
                        }
    
                        leaf ls-id {
                          type inet:ipv4-address-no-zone;
                          description
                            "Link state ID";
                        }
    
                        leaf advertising-router {
                          type inet:ipv4-address-no-zone;
                          description
                            "Router ID of the Advertising Router";
                        }
    
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        container lsa-header {
                          description
                            "Header information";
                          leaf ls-type {
                            type Lsa;
                            description
                              "LSA type";
                          }
    
                          leaf lsid {
                            type inet:ipv4-address;
                            description "LS ID";
                          }
    
                          leaf advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of Advertising Router";
                          }
    
                          leaf lsa-area-id {
                            type string {
                              length "0..16";
                            }
                            description
                              "Area ID in decimal or dotted-decimal format";
                          }
    
                          leaf lsa-age {
                            type uint16;
                            description
                              "LSA's Age (s)";
                          }
    
                          leaf dn-age-lsa {
                            type boolean;
                            description
                              "If true, Do Not Age this LSA";
                          }
    
                          leaf nsf {
                            type boolean;
                            description
                              "If true,  LSA received from neighbor during NSF";
                          }
    
                          leaf sequence-number {
                            type uint32;
                            description
                              "Current Sequence number";
                          }
    
                          leaf checksum {
                            type uint16;
                            description
                              "Checksum value";
                          }
                        }  // container lsa-header
    
                        container lsa-detail-data {
                          description
                            "Detailed LSA Information";
                          container lsa-throttle-timer {
                            description
                              "LSA throttle timer table information";
                            leaf timer-location {
                              type Timer-table;
                              description
                                "Timer table";
                            }
    
                            leaf timer-type {
                              type Timer;
                              description
                                "Timer type - whether maxage, refresh or checksum
    timer";
                            }
    
                            leaf second-table-index {
                              type uint8;
                              units "second";
                              description
                                "Index of the Seconds table";
                            }
    
                            leaf minute-table-index {
                              type uint8;
                              units "minute";
                              description
                                "Index of the Minutes table";
                            }
    
                            leaf last-inst-second-table-index {
                              type uint8;
                              units "second";
                              description
                                "Last Seconds table index processed";
                            }
    
                            leaf last-inst-minute-table-index {
                              type uint8;
                              units "minute";
                              description
                                "Last Minutes table index processed";
                            }
                          }  // container lsa-throttle-timer
    
                          container lsa-last-updated-time {
                            description
                              "Time LSA was last updated";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container lsa-last-updated-time
    
                          container lsadb-base-time-stamp {
                            description
                              "Current time stamp";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container lsadb-base-time-stamp
    
                          container not-delete {
                            description
                              "Reason why LSA is not deleted";
                            leaf free-time {
                              type uint32;
                              description
                                "The amount of time since the last check was made
    to free this LSA (s)";
                            }
    
                            leaf no-delete {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because delete flag not set on this LSA";
                            }
    
                            leaf neighbor-exchange {
                              type boolean;
                              description
                                "If true, the reason  not to delete this LSA is
    because neighbor is in exchange state";
                            }
    
                            leaf routing-table {
                              type boolean;
                              description
                                "If true, the reason  not to delete this LSA is
    because it has a contributing entry in the
    routing table";
                            }
    
                            leaf acknowledgement {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because it's Acknowledgement list is not empty";
                            }
    
                            leaf maximum-age {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because it is in Maxage Queue";
                            }
    
                            leaf partial-spf {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because it is in partial SPF queue";
                            }
    
                            leaf flood-pending {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because waiting for flooding or retransmission";
                            }
    
                            leaf rate-limit {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because waiting for next wait-interval to expire";
                            }
    
                            leaf nsr-ack-pending {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because NSR ACK from standby is pending";
                            }
    
                            leaf sum-orig-pending {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because it is pending summary LSA originating";
                            }
    
                            leaf nsr-flood-required {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because it is pending flooding on switchover";
                            }
    
                            leaf link-state-q {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because it is used in Link State Q";
                            }
    
                            leaf used-in-uloop {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because it is used in uloop";
                            }
    
                            leaf added-in-ulooplist {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because it is Added in uloopdblist";
                            }
    
                            leaf used-as-parent {
                              type boolean;
                              description
                                "If true, the reason not to delete this LSA is
    because it is used in parent_path_lsdb";
                            }
                          }  // container not-delete
    
                          leaf tos-capable {
                            type boolean;
                            description
                              "If true, type of service capable indicated by
    LSA's option field";
                          }
    
                          leaf nssa-translation {
                            type boolean;
                            description
                              "If true,  capable of type 7 to 5 translation
    indicated by LSA's option field";
                          }
    
                          leaf demand-circuit {
                            type boolean;
                            description
                              "If true, capable of demand circuit as indicated
    by LSA's option field";
                          }
    
                          leaf dn-bit {
                            type boolean;
                            description
                              "if true, DN bit set on the summary LSA indicated
    by LSA's option field";
                          }
    
                          leaf lsa-rate-limit-due-time {
                            type uint32;
                            description
                              "Due time for rate-limit timer (ms)";
                          }
    
                          leaf lsadb-base-clock {
                            type uint64;
                            description
                              "Clock stamp since boot";
                          }
    
                          leaf routing-bit {
                            type boolean;
                            description
                              "If true, Routing Bit set on the LSA";
                          }
    
                          leaf advertising-router-reachable {
                            type boolean;
                            description
                              "If true, Advertising Router is reachable";
                          }
    
                          leaf length {
                            type uint16;
                            description
                              "Length of the LSA";
                          }
    
                          leaf sum-origin {
                            type uint16;
                            description
                              "Summary Origin";
                          }
    
                          leaf ase-origin {
                            type uint16;
                            description
                              "External Origin";
                          }
    
                          leaf in-sync {
                            type uint8;
                            description
                              "Not In Sync With Active";
                          }
    
                          leaf lsa-prefix-priority {
                            type uint8;
                            description
                              "Current prefix priority";
                          }
    
                          leaf new-lsa-prefix-priority {
                            type uint8;
                            description
                              "New prefix priority to be set after the current
    SPF";
                          }
    
                          leaf lsa-flood-required-post-fail-over {
                            type boolean;
                            description
                              "LSA flood required after FO";
                          }
                        }  // container lsa-detail-data
    
                        container lsa-internal-data {
                          description
                            "Information pertaining to a specific LSA type";
                          container router-lsa-type {
                            when
                              "../internal-lsa-type = 'mgmt-rtr-type'" {
                              description
                                "../InternalLSAType = 'MGMT_RTR_TYPE'";
                            }
                            description
                              "Router LSA";
                            leaf router-asbr {
                              type boolean;
                              description
                                "If True, router is an Autonomous system Border
    Router";
                            }
    
                            leaf router-abr {
                              type boolean;
                              description
                                "If True, router is an Area Border Router";
                            }
    
                            leaf internal-lsa {
                              type boolean;
                              description
                                "If true, internal LSA";
                            }
    
                            list link {
                              description
                                "List of links in this LSA";
                              leaf link-id {
                                type inet:ipv4-address;
                                description
                                  "Link ID";
                              }
    
                              leaf link-data {
                                type inet:ipv4-address;
                                description
                                  "Link Data";
                              }
    
                              leaf link-type {
                                type Ospf-link-types;
                                description
                                  "Type of link";
                              }
    
                              leaf link-metric {
                                type uint16;
                                description
                                  "Cost for using this link";
                              }
    
                              list link-tos {
                                description
                                  "List of type of service metrics";
                                leaf router-tos {
                                  type uint16;
                                  description
                                    "Type of Service";
                                }
    
                                leaf tos-cost {
                                  type uint16;
                                  description
                                    "Type of service specific metric";
                                }
                              }  // list link-tos
                            }  // list link
    
                            list internal-link {
                              description
                                "List of links for internal LSA";
                              leaf link-id {
                                type inet:ipv4-address;
                                description
                                  "Link ID";
                              }
    
                              leaf link-data {
                                type inet:ipv4-address;
                                description
                                  "Link Data";
                              }
    
                              leaf link-type {
                                type Ospf-link-types;
                                description
                                  "Type of link";
                              }
    
                              leaf link-metric {
                                type uint16;
                                description
                                  "Cost for using this link";
                              }
    
                              list link-tos {
                                description
                                  "List of type of service metrics";
                                leaf router-tos {
                                  type uint16;
                                  description
                                    "Type of Service";
                                }
    
                                leaf tos-cost {
                                  type uint16;
                                  description
                                    "Type of service specific metric";
                                }
                              }  // list link-tos
                            }  // list internal-link
                          }  // container router-lsa-type
    
                          container network-lsa-type {
                            when
                              "../internal-lsa-type = 'mgmt-ntwk-type'" {
                              description
                                "../InternalLSAType = 'MGMT_NTWK_TYPE'";
                            }
                            description
                              "Network LSA";
                            leaf network-prefix-length {
                              type uint32;
                              description
                                "Prefix length of the Network";
                            }
    
                            list neighbor-router {
                              description
                                "Neighbor router list";
                              leaf entry {
                                type inet:ipv4-address;
                                description
                                  "Neighbor router list";
                              }
                            }  // list neighbor-router
                          }  // container network-lsa-type
    
                          container summary-lsa-type {
                            when
                              "../internal-lsa-type = 'mgmt-sum-type'" {
                              description
                                "../InternalLSAType = 'MGMT_SUM_TYPE'";
                            }
                            description
                              "Summary LSA";
                            leaf summary-prefix-length {
                              type uint32;
                              description
                                "Prefix length of the Summary LSA";
                            }
    
                            leaf internal-sum-lsa {
                              type boolean;
                              description
                                "If true, internal max-metric LSA";
                            }
    
                            list summary-lsa-metric {
                              description
                                "Metric";
                              leaf entry {
                                type uint32;
                                description
                                  "Metric";
                              }
                            }  // list summary-lsa-metric
                          }  // container summary-lsa-type
    
                          container external-lsa-type {
                            when
                              "../internal-lsa-type = 'mgmt-ext-type'" {
                              description
                                "../InternalLSAType = 'MGMT_EXT_TYPE'";
                            }
                            description
                              "External LSA";
                            leaf external-prefix-length {
                              type uint32;
                              description
                                "Prefix length";
                            }
    
                            leaf internal-external-lsa {
                              type boolean;
                              description
                                "If true, internal max-metric LSA";
                            }
    
                            list external-tos-metric {
                              description
                                "Type of service information";
                              leaf external-metric {
                                type uint32;
                                description
                                  "Cost of this route";
                              }
    
                              leaf external-metric-type {
                                type Ex-metric;
                                description
                                  "External LSA metric type - whether type 1 or
    type 2";
                              }
    
                              leaf external-tos {
                                type uint32;
                                description
                                  "Type of Service";
                              }
    
                              leaf forwarding-address {
                                type inet:ipv4-address;
                                description
                                  "Forwarding Address on the External LSA";
                              }
    
                              leaf external-tag {
                                type uint32;
                                description
                                  "Route Tag";
                              }
                            }  // list external-tos-metric
                          }  // container external-lsa-type
    
                          container opaque-link-lsa-type {
                            when
                              "../internal-lsa-type = 'mgmt-opq-link-type'" {
                              description
                                "../InternalLSAType = 'MGMT_OPQ_LINK_TYPE'";
                            }
                            description
                              "Opaque-Link LSA";
                            leaf opaque-interface-name {
                              type xr:Interface-name;
                              description
                                "Interface on which the Opaque link LSA is
    received";
                            }
                          }  // container opaque-link-lsa-type
    
                          container opaque-mpls-te-lsa-type {
                            when
                              "../internal-lsa-type = 'mgmt-opq-rrr-type'" {
                              description
                                "../InternalLSAType = 'MGMT_OPQ_RRR_TYPE'";
                            }
                            description
                              "Opaque-Area, opaque type 1 LSA";
                            list tlv {
                              description
                                "List of TLVs";
                              leaf tlv-type {
                                type uint16;
                                description
                                  "Type of top-level TLV";
                              }
    
                              leaf tlv-length {
                                type uint16;
                                description
                                  "Length of top-level TLV";
                              }
    
                              leaf mpls-router-id {
                                type inet:ipv4-address;
                                description
                                  "MPLS-TE Router ID";
                              }
    
                              leaf mpls-dste-link {
                                type boolean;
                                description
                                  "MPLS DS-TE supported";
                              }
    
                              leaf tlv-data {
                                type yang:hex-string;
                                description
                                  "TLV direct data";
                              }
    
                              list te-link-sub-tlv {
                                description
                                  "List of Sub-TLVs";
                                leaf sub-tlv-type {
                                  type Stlv;
                                  description
                                    "Type of sub TLV";
                                }
    
                                leaf sub-tlv-length {
                                  type uint16;
                                  description
                                    "Length of sub TLV";
                                }
    
                                leaf sub-tlv-value {
                                  type yang:hex-string;
                                  description
                                    "Value of sub TLV";
                                }
                              }  // list te-link-sub-tlv
                            }  // list tlv
                          }  // container opaque-mpls-te-lsa-type
    
                          container opaque-grace-lsa {
                            when
                              "../internal-lsa-type = 'mgmt-opq-gr-type'" {
                              description
                                "../InternalLSAType = 'MGMT_OPQ_GR_TYPE'";
                            }
                            description
                              "Opaque-link, opaque type 3 Grace LSA";
                            leaf grace-period {
                              type uint32;
                              description
                                "The amount of time the router's neighbor should
    advertise it fully adjacent (s)";
                            }
    
                            leaf grace-reason {
                              type Ospf-gr-reason;
                              description
                                "Reason for router restart";
                            }
    
                            leaf ip-address {
                              type inet:ipv4-address;
                              description
                                "IP interface address on the subnet associated
    with the grace LSA";
                            }
                          }  // container opaque-grace-lsa
    
                          container opaque-router-info-lsa-type {
                            when
                              "../internal-lsa-type = 'mgmt-opq-ri-type'" {
                              description
                                "../InternalLSAType = 'MGMT_OPQ_RI_TYPE'";
                            }
                            description
                              "Opaque Router Information LSA";
                            leaf opaque-rilsa-scope {
                              type Ospf-lsa-opq-ri-scope;
                              description
                                "Opaque LSA flooding scope, a.k.a., Opaque LSA
    Type";
                            }
    
                            leaf opaque-ri-interface-name {
                              type xr:Interface-name;
                              description
                                "Interface on which this Link-Local Opaque link
    LSA is received";
                            }
    
                            list opaque-ritlv {
                              description
                                "Router Information TLV";
                              container unknown-tlv {
                                when
                                  "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-unknown'" {
                                  description
                                    "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_UNKNOWN'";
                                }
                                description
                                  "Unknown Rtr Info TLV";
                                leaf ri-gen-tlv-type {
                                  type uint16;
                                  description
                                    "Type of TLV";
                                }
    
                                leaf ri-gen-tlv-length {
                                  type uint16;
                                  description
                                    "Length of TLV";
                                }
    
                                leaf ri-genvalue {
                                  type yang:hex-string;
                                  description
                                    "Data in TLV";
                                }
                              }  // container unknown-tlv
    
                              container rtr-cap-tlv {
                                when
                                  "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-rtrcap'" {
                                  description
                                    "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_RTRCAP'";
                                }
                                description
                                  "Rtr Cap TLV";
                                leaf rtr-cap-tlv-length {
                                  type uint16;
                                  description
                                    "Length of TLV";
                                }
    
                                leaf rtr-cap-graceful-restart {
                                  type boolean;
                                  description
                                    "Graceful Restart Capability";
                                }
    
                                leaf rtr-cap-graceful-restart-helper {
                                  type boolean;
                                  description
                                    "Graceful Restart Helper Capability";
                                }
    
                                leaf rtr-cap-stub-rtr {
                                  type boolean;
                                  description
                                    "Stub Router capability";
                                }
    
                                leaf rtr-cap-area-te {
                                  type boolean;
                                  description
                                    "Traffic Engineering capability of area";
                                }
    
                                leaf rtr-cap-p2plan {
                                  type boolean;
                                  description
                                    "P2P LAN Capability";
                                }
    
                                leaf rtr-cap-te-exp {
                                  type boolean;
                                  description
                                    "TE Experimental bit";
                                }
    
                                leaf rtr-cap-all-bits {
                                  type uint32;
                                  description
                                    "All capability bits";
                                }
    
                                leaf rtr-cap-additional-info {
                                  type yang:hex-string;
                                  description
                                    "Additional Information in TLV";
                                }
                              }  // container rtr-cap-tlv
    
                              container pcedtlv {
                                when
                                  "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-pce-discovery'" {
                                  description
                                    "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_PCEDISCOVERY'";
                                }
                                description
                                  "PCE Discovery TLV";
                                container pced-addr {
                                  description
                                    "PCE Address";
                                  container pce-addr-unknown-tlv {
                                    when
                                      "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-invalid'" {
                                      description
                                        "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_INVALID'";
                                    }
                                    description
                                      "Unknown PCE Addr TLV";
                                    leaf ri-gen-tlv-type {
                                      type uint16;
                                      description
                                        "Type of TLV";
                                    }
    
                                    leaf ri-gen-tlv-length {
                                      type uint16;
                                      description
                                        "Length of TLV";
                                    }
    
                                    leaf ri-genvalue {
                                      type yang:hex-string;
                                      description
                                        "Data in TLV";
                                    }
                                  }  // container pce-addr-unknown-tlv
    
                                  container ipv4pce-addr {
                                    when
                                      "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv4'" {
                                      description
                                        "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV4'";
                                    }
                                    description
                                      "IPv4 PCE Address";
                                    leaf pceipv4-addr {
                                      type inet:ipv4-address;
                                      description
                                        "PCE IPv4 Address";
                                    }
                                  }  // container ipv4pce-addr
    
                                  container ipv6pce-addr {
                                    when
                                      "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv6'" {
                                      description
                                        "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV6'";
                                    }
                                    description
                                      "IPv6 PCE Address";
                                    leaf pceipv6-addr {
                                      type inet:ipv6-address;
                                      description
                                        "PCE IPv6 Address";
                                    }
                                  }  // container ipv6pce-addr
    
                                  leaf pce-addr-type {
                                    type Ospf-sh-opq-ri-pce-addr-types;
                                    description
                                      "PCEAddrType";
                                  }
                                }  // container pced-addr
    
                                container pced-scope {
                                  description
                                    "PCE Scope Information";
                                  leaf lbit {
                                    type boolean;
                                    description
                                      "L Bit";
                                  }
    
                                  leaf rbit {
                                    type boolean;
                                    description
                                      "R Bit";
                                  }
    
                                  leaf rd-bit {
                                    type boolean;
                                    description
                                      "Rd Bit";
                                  }
    
                                  leaf sbit {
                                    type boolean;
                                    description
                                      "S Bit";
                                  }
    
                                  leaf sd-bit {
                                    type boolean;
                                    description
                                      "Sd Bit";
                                  }
    
                                  leaf ybit {
                                    type boolean;
                                    description
                                      "Y Bit";
                                  }
    
                                  leaf pref-l {
                                    type uint8;
                                    description
                                      "Pref L";
                                  }
    
                                  leaf pref-r {
                                    type uint8;
                                    description
                                      "Pref R";
                                  }
    
                                  leaf pref-s {
                                    type uint8;
                                    description
                                      "Pref S";
                                  }
    
                                  leaf pref-y {
                                    type uint8;
                                    description
                                      "Pref Y";
                                  }
    
                                  leaf all-scope-info-bits {
                                    type uint32;
                                    description
                                      "PCE Scope Information";
                                  }
                                }  // container pced-scope
    
                                leaf pcedtlv-length {
                                  type uint16;
                                  description
                                    "Length of TLV";
                                }
                              }  // container pcedtlv
    
                              container sr-algo-tlv {
                                when
                                  "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-algo'" {
                                  description
                                    "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_ALGO'";
                                }
                                description
                                  "SR Algorithm TLV";
                                list sr-algo-value {
                                  description
                                    "SR Algorithms";
                                  leaf entry {
                                    type uint8;
                                    description
                                      "SR Algorithms";
                                  }
                                }  // list sr-algo-value
                              }  // container sr-algo-tlv
    
                              container sr-range-tlv {
                                when
                                  "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-range'" {
                                  description
                                    "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_RANGE'";
                                }
                                description
                                  "SR Range TLV";
                                container sidtlv {
                                  description
                                    "SID sub-TLV";
                                  leaf sr-sid-length {
                                    type uint16;
                                    description
                                      "Length of sub-TLV";
                                  }
    
                                  leaf sr-sid-value {
                                    type uint32;
                                    description
                                      "SID Value";
                                  }
                                }  // container sidtlv
    
                                leaf sr-range-length {
                                  type uint16;
                                  description
                                    "Length of TLV";
                                }
    
                                leaf sr-range-size {
                                  type uint32;
                                  description
                                    "SR Range Size";
                                }
                              }  // container sr-range-tlv
    
                              container node-msdtlv {
                                when
                                  "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-node-msd'" {
                                  description
                                    "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_NODE_MSD'";
                                }
                                description
                                  "Node MSD TLV";
                                container node-msd-sub-types {
                                  description
                                    "Node MSD Subtypes";
                                  leaf msd-sub-type {
                                    type uint8;
                                    description
                                      "MSD SubType";
                                  }
    
                                  leaf msd-value {
                                    type uint8;
                                    description
                                      "MSD Value";
                                  }
                                }  // container node-msd-sub-types
    
                                leaf node-msdtlv-length {
                                  type uint16;
                                  description
                                    "Length of TLV";
                                }
                              }  // container node-msdtlv
    
                              container srlbtlv {
                                when
                                  "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-srlb'" {
                                  description
                                    "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SRLB'";
                                }
                                description
                                  "SRLB Range TLV";
                                container sidtlv {
                                  description
                                    "SID sub-TLV";
                                  leaf sr-sid-length {
                                    type uint16;
                                    description
                                      "Length of sub-TLV";
                                  }
    
                                  leaf sr-sid-value {
                                    type uint32;
                                    description
                                      "SID Value";
                                  }
                                }  // container sidtlv
    
                                leaf srlbtlv-length {
                                  type uint16;
                                  description
                                    "Length of TLV";
                                }
    
                                leaf srlb-range-size {
                                  type uint32;
                                  description
                                    "SRLB Range Size";
                                }
                              }  // container srlbtlv
    
                              container fadlv {
                                when
                                  "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-fad'" {
                                  description
                                    "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_FAD'";
                                }
                                description
                                  "FAD TLV";
                                container exclude-attribute {
                                  description
                                    "Exclude sub-TLV";
                                  leaf fad-sub-tlv-length {
                                    type uint16;
                                    description
                                      "Length of sub-TLV";
                                  }
    
                                  list fad-admin-group {
                                    description
                                      "FAD Admin Group";
                                    leaf entry {
                                      type uint32;
                                      description
                                        "FAD Admin Group";
                                    }
                                  }  // list fad-admin-group
                                }  // container exclude-attribute
    
                                container include-any-attribute {
                                  description
                                    "Include any sub-TLV";
                                  leaf fad-sub-tlv-length {
                                    type uint16;
                                    description
                                      "Length of sub-TLV";
                                  }
    
                                  list fad-admin-group {
                                    description
                                      "FAD Admin Group";
                                    leaf entry {
                                      type uint32;
                                      description
                                        "FAD Admin Group";
                                    }
                                  }  // list fad-admin-group
                                }  // container include-any-attribute
    
                                container include-all-attribute {
                                  description
                                    "Include all sub-TLV";
                                  leaf fad-sub-tlv-length {
                                    type uint16;
                                    description
                                      "Length of sub-TLV";
                                  }
    
                                  list fad-admin-group {
                                    description
                                      "FAD Admin Group";
                                    leaf entry {
                                      type uint32;
                                      description
                                        "FAD Admin Group";
                                    }
                                  }  // list fad-admin-group
                                }  // container include-all-attribute
    
                                container fad-unsupported-tlv {
                                  description
                                    "Felx Algo unsupported TLV";
                                  leaf fad-sub-tlv-length {
                                    type uint16;
                                    description
                                      "Length of sub-TLV";
                                  }
    
                                  list fad-unknown-data {
                                    description
                                      "FAD unknown TLV data";
                                    leaf entry {
                                      type uint8;
                                      description
                                        "FAD unknown TLV data";
                                    }
                                  }  // list fad-unknown-data
                                }  // container fad-unsupported-tlv
    
                                leaf fad-length {
                                  type uint16;
                                  description
                                    "Length of TLV";
                                }
    
                                leaf fad-algo {
                                  type uint8;
                                  description
                                    "Flex ALgo number";
                                }
    
                                leaf fad-metric-type {
                                  type uint8;
                                  description
                                    "Flex Algo Metric Type";
                                }
    
                                leaf fad-algo-type {
                                  type uint8;
                                  description
                                    "Flex Algo Calc type";
                                }
    
                                leaf fad-priority {
                                  type uint8;
                                  description
                                    "Flex Algo Priority";
                                }
    
                                leaf fad-unsupported-tlv-type {
                                  type uint8;
                                  description
                                    "Flex Algo unsupported TLV type";
                                }
                              }  // container fadlv
    
                              container host-name {
                                when
                                  "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-host-name'" {
                                  description
                                    "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_HOSTNAME'";
                                }
                                description
                                  "Hostname string ";
                                leaf router-host-name {
                                  type string {
                                    length
                                      "0..256";
                                  }
                                  description
                                    "Hostname string";
                                }
                              }  // container host-name
    
                              leaf ritlv-internal-type {
                                type Ospf-sh-opq-ri-tlv-types;
                                description
                                  "RITLVInternalType";
                              }
                            }  // list opaque-ritlv
                          }  // container opaque-router-info-lsa-type
    
                          container opaque-ep-lsa-type {
                            when
                              "../internal-lsa-type = 'mgmt-opq-epl-type'" {
                              description
                                "../InternalLSAType = 'MGMT_OPQ_EPL_TYPE'";
                            }
                            description
                              "Extende Prefix LSA type";
                            list tlv {
                              description
                                "List of TLVs";
                              leaf tlv-type {
                                type uint16;
                                description
                                  "Type of top-level TLV";
                              }
    
                              leaf tlv-length {
                                type uint16;
                                description
                                  "Length of top-level TLV";
                              }
    
                              leaf mpls-router-id {
                                type inet:ipv4-address;
                                description
                                  "MPLS-TE Router ID";
                              }
    
                              leaf mpls-dste-link {
                                type boolean;
                                description
                                  "MPLS DS-TE supported";
                              }
    
                              leaf tlv-data {
                                type yang:hex-string;
                                description
                                  "TLV direct data";
                              }
    
                              list te-link-sub-tlv {
                                description
                                  "List of Sub-TLVs";
                                leaf sub-tlv-type {
                                  type Stlv;
                                  description
                                    "Type of sub TLV";
                                }
    
                                leaf sub-tlv-length {
                                  type uint16;
                                  description
                                    "Length of sub TLV";
                                }
    
                                leaf sub-tlv-value {
                                  type yang:hex-string;
                                  description
                                    "Value of sub TLV";
                                }
                              }  // list te-link-sub-tlv
                            }  // list tlv
                          }  // container opaque-ep-lsa-type
    
                          container opaque-el-lsa-type {
                            when
                              "../internal-lsa-type = 'mgmt-opq-ell-type'" {
                              description
                                "../InternalLSAType = 'MGMT_OPQ_ELL_TYPE'";
                            }
                            description
                              "Extended Link LSA type";
                            list tlv {
                              description
                                "List of TLVs";
                              leaf tlv-type {
                                type uint16;
                                description
                                  "Type of top-level TLV";
                              }
    
                              leaf tlv-length {
                                type uint16;
                                description
                                  "Length of top-level TLV";
                              }
    
                              leaf mpls-router-id {
                                type inet:ipv4-address;
                                description
                                  "MPLS-TE Router ID";
                              }
    
                              leaf mpls-dste-link {
                                type boolean;
                                description
                                  "MPLS DS-TE supported";
                              }
    
                              leaf tlv-data {
                                type yang:hex-string;
                                description
                                  "TLV direct data";
                              }
    
                              list te-link-sub-tlv {
                                description
                                  "List of Sub-TLVs";
                                leaf sub-tlv-type {
                                  type Stlv;
                                  description
                                    "Type of sub TLV";
                                }
    
                                leaf sub-tlv-length {
                                  type uint16;
                                  description
                                    "Length of sub TLV";
                                }
    
                                leaf sub-tlv-value {
                                  type yang:hex-string;
                                  description
                                    "Value of sub TLV";
                                }
                              }  // list te-link-sub-tlv
                            }  // list tlv
                          }  // container opaque-el-lsa-type
    
                          leaf internal-lsa-type {
                            type Ospf-internal-lsa-types;
                            description
                              "InternalLSAType";
                          }
                        }  // container lsa-internal-data
                      }  // list lsa
                    }  // container lsas
    
                    container lsa-summaries {
                      description
                        "Link state advertisement summary table";
                      list lsa-summary {
                        description
                          "LSA summary information";
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description "Area ID";
                        }
    
                        leaf ls-type {
                          type Ospf-ls;
                          description
                            "Link state type";
                        }
    
                        leaf ls-id {
                          type inet:ipv4-address-no-zone;
                          description
                            "Link state ID";
                        }
    
                        leaf advertising-router {
                          type inet:ipv4-address-no-zone;
                          description
                            "Router ID of the Advertising Router";
                        }
    
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        container lsa-header {
                          description
                            "LSA header information";
                          leaf ls-type {
                            type Lsa;
                            description
                              "LSA type";
                          }
    
                          leaf lsid {
                            type inet:ipv4-address;
                            description "LS ID";
                          }
    
                          leaf advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of Advertising Router";
                          }
    
                          leaf lsa-area-id {
                            type string {
                              length "0..16";
                            }
                            description
                              "Area ID in decimal or dotted-decimal format";
                          }
    
                          leaf lsa-age {
                            type uint16;
                            description
                              "LSA's Age (s)";
                          }
    
                          leaf dn-age-lsa {
                            type boolean;
                            description
                              "If true, Do Not Age this LSA";
                          }
    
                          leaf nsf {
                            type boolean;
                            description
                              "If true,  LSA received from neighbor during NSF";
                          }
    
                          leaf sequence-number {
                            type uint32;
                            description
                              "Current Sequence number";
                          }
    
                          leaf checksum {
                            type uint16;
                            description
                              "Checksum value";
                          }
                        }  // container lsa-header
    
                        leaf external-tag {
                          type uint32;
                          description
                            "Route Tag";
                        }
    
                        leaf link-count {
                          type uint16;
                          description
                            "Number of links";
                        }
                      }  // list lsa-summary
                    }  // container lsa-summaries
                  }  // container database
    
                  container summary-prefixes {
                    description
                      "Summary prefix table";
                    list summary-prefix {
                      description
                        "Summary prefix information";
                      leaf prefix {
                        type inet:ipv4-address-no-zone;
                        description
                          "Summary Prefix";
                      }
    
                      leaf netmask {
                        type inet:ipv4-address-no-zone;
                        description
                          "Summary Mask";
                      }
    
                      leaf summary-prefix {
                        type inet:ipv4-address;
                        description
                          "Ipv4 Summary prefix";
                      }
    
                      leaf summary-mask {
                        type inet:ipv4-address;
                        description
                          "subnet mask of Summary prefix";
                      }
    
                      leaf summary-metric {
                        type uint32;
                        description
                          "Cost of Summary";
                      }
    
                      leaf summary-metric-type {
                        type Ex-metric;
                        description
                          "Type of Metric";
                      }
    
                      leaf summary-tag {
                        type uint32;
                        description
                          "Tag associated with this summary prefix";
                      }
                    }  // list summary-prefix
                  }  // container summary-prefixes
    
                  container ospf-summary {
                    description
                      "Fast-reroute topology information";
                    leaf num-nbrs {
                      type uint32;
                      description
                        "Count of neighbors";
                    }
    
                    leaf num-nbrs-up {
                      type uint32;
                      description
                        "Count of neighbors that are UP";
                    }
    
                    leaf num-interfaces {
                      type uint32;
                      description
                        "Count of interfaces";
                    }
    
                    leaf num-interfaces-up {
                      type uint32;
                      description
                        "Count of interfaces that are UP";
                    }
    
                    leaf num-virtual-intfaces-up {
                      type uint32;
                      description
                        "Count of virtual interfaces that are UP";
                    }
    
                    leaf num-shamlink-interfaces-up {
                      type uint32;
                      description
                        "Count of shamlinks that are UP";
                    }
    
                    leaf num-areas {
                      type uint32;
                      description
                        "Count of areas";
                    }
    
                    leaf num-router-lsas {
                      type uint32;
                      description
                        "Count of Router LSAs";
                    }
    
                    leaf num-network-lsas {
                      type uint32;
                      description
                        "Count of Network LSAs";
                    }
    
                    leaf num-network-summary-lsas {
                      type uint32;
                      description
                        "Count of Network Summary LSAs";
                    }
    
                    leaf num-asbr-summary-lsas {
                      type uint32;
                      description
                        "Count of ASBR Summary LSAs";
                    }
    
                    leaf num-as-external-lsas {
                      type uint32;
                      description
                        "Count of AS External LSAs";
                    }
    
                    leaf num-mospf-lsas {
                      type uint32;
                      description
                        "Count of MOSPF LSAs";
                    }
    
                    leaf num-nssa-external-lsas {
                      type uint32;
                      description
                        "Count of NSSA External LSAs";
                    }
    
                    leaf num-ignored-type8-lsas {
                      type uint32;
                      description
                        "Count of ignored Type 8 LSAs";
                    }
    
                    leaf num-opaque-link-lsas {
                      type uint32;
                      description
                        "Count of Opaque link-scoped LSAs";
                    }
    
                    leaf num-opaque-area-lsas {
                      type uint32;
                      description
                        "Count of Opaque area-scoped LSAs";
                    }
    
                    leaf num-opaque-as-lsas {
                      type uint32;
                      description
                        "Count of Opaque AS-scoped LSAs";
                    }
                  }  // container ospf-summary
    
                  container fast-reroute {
                    description
                      "Container for FastReroute";
                    container topologies {
                      description
                        "Fast-reroute topology information table";
                      list topology {
                        key "remote-router-id area-id";
                        description
                          "Fast-reroute topology information";
                        leaf remote-router-id {
                          type inet:ipv4-address-no-zone;
                          description
                            "Remote Node Router ID";
                        }
    
                        leaf area-id {
                          type uint32 {
                            range
                              "0..4294967295";
                          }
                          description "Area ID";
                        }
    
                        leaf ipfrr-topo-area-id {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted decimal
    format";
                        }
    
                        leaf ipfrr-local-router-id {
                          type inet:ipv4-address;
                          description
                            "OSPF Local Node Router ID";
                        }
    
                        leaf ipfrr-area-revision {
                          type uint32;
                          description
                            "IPFRR Topology Revision";
                        }
    
                        list ipfrr-topo {
                          description
                            "IPFRR Topology entries";
                          leaf node-id {
                            type inet:ipv4-address;
                            description
                              "IPFRR Topology Node ID";
                          }
    
                          leaf distance {
                            type uint32;
                            description
                              "IPFRR Topology Distance";
                          }
    
                          leaf distance-reverse {
                            type uint32;
                            description
                              "IPFRR Topology Reverse Distance";
                          }
    
                          leaf type4 {
                            type boolean;
                            description
                              "IPFRR Topoogy Type-4 entry";
                          }
    
                          leaf revision {
                            type uint32;
                            description
                              "IPFRR Topology Revision";
                          }
    
                          leaf neighbor-sourced {
                            type boolean;
                            description
                              "IPFRR Topology Neighbor Sourced";
                          }
    
                          leaf dr {
                            type boolean;
                            description
                              "IPFRR Topology DR entry";
                          }
    
                          leaf poison {
                            type boolean;
                            description
                              "IPFRR Topology rSPT poison";
                          }
                        }  // list ipfrr-topo
                      }  // list topology
                    }  // container topologies
                  }  // container fast-reroute
                }  // list vrf
              }  // container vrfs
    
              container srms {
                description
                  "Segment Routing Mapping Server operational
    data";
                container policy {
                  description
                    "Policy operational data";
                  container policy-ipv4 {
                    description
                      "IPv4 policy operational data";
                    container policy-ipv4-backup {
                      description
                        "IPv4 backup policy operational data";
                      list policy-mi {
                        key "mi-id";
                        description
                          "Mapping Item";
                        leaf mi-id {
                          type xr:Cisco-ios-xr-string;
                          description
                            "Mapping Item ID (0, 1, 2, ...)";
                        }
    
                        container addr {
                          description
                            "Ipv4 address";
                          leaf af {
                            type Srms-mi-af-e-b;
                            description "AF";
                          }
    
                          leaf ipv4 {
                            when
                              "../af = 'ipv4'" {
                              description
                                "../AF = 'IPv4'";
                            }
                            type inet:ipv4-address;
                            description "IPv4";
                          }
    
                          leaf ipv6 {
                            when
                              "../af = 'ipv6'" {
                              description
                                "../AF = 'IPv6'";
                            }
                            type In6-addr-t-b;
                            description "IPv6";
                          }
                        }  // container addr
    
                        leaf src {
                          type Srms-mi-src-e-b;
                          description
                            "Source of this prefix, whether local or remote";
                        }
    
                        leaf router {
                          type string {
                            length "0..30";
                          }
                          description
                            "Router ID";
                        }
    
                        leaf area {
                          type string {
                            length "0..30";
                          }
                          description
                            "Area (OSPF) or Level (ISIS)";
                        }
    
                        leaf prefixlen {
                          type uint8;
                          description
                            "Prefix length";
                        }
    
                        leaf sid-start {
                          type uint32;
                          description
                            "Starting SID";
                        }
    
                        leaf sid-count {
                          type uint32;
                          description
                            "SID range";
                        }
    
                        leaf last-prefix {
                          type string {
                            length "0..50";
                          }
                          description
                            "Last IP Prefix";
                        }
    
                        leaf last-sid-index {
                          type uint32;
                          description
                            "Last SID Index";
                        }
    
                        leaf flag-attached {
                          type Srms-mi-flag-e-b;
                          description
                            "Attached flag";
                        }
                      }  // list policy-mi
                    }  // container policy-ipv4-backup
    
                    container policy-ipv4-active {
                      description
                        "IPv4 active policy operational data";
                      list policy-mi {
                        key "mi-id";
                        description
                          "Mapping Item";
                        leaf mi-id {
                          type xr:Cisco-ios-xr-string;
                          description
                            "Mapping Item ID (0, 1, 2, ...)";
                        }
    
                        container addr {
                          description
                            "Ipv4 address";
                          leaf af {
                            type Srms-mi-af-e-b;
                            description "AF";
                          }
    
                          leaf ipv4 {
                            when
                              "../af = 'ipv4'" {
                              description
                                "../AF = 'IPv4'";
                            }
                            type inet:ipv4-address;
                            description "IPv4";
                          }
    
                          leaf ipv6 {
                            when
                              "../af = 'ipv6'" {
                              description
                                "../AF = 'IPv6'";
                            }
                            type In6-addr-t-b;
                            description "IPv6";
                          }
                        }  // container addr
    
                        leaf src {
                          type Srms-mi-src-e-b;
                          description
                            "Source of this prefix, whether local or remote";
                        }
    
                        leaf router {
                          type string {
                            length "0..30";
                          }
                          description
                            "Router ID";
                        }
    
                        leaf area {
                          type string {
                            length "0..30";
                          }
                          description
                            "Area (OSPF) or Level (ISIS)";
                        }
    
                        leaf prefixlen {
                          type uint8;
                          description
                            "Prefix length";
                        }
    
                        leaf sid-start {
                          type uint32;
                          description
                            "Starting SID";
                        }
    
                        leaf sid-count {
                          type uint32;
                          description
                            "SID range";
                        }
    
                        leaf last-prefix {
                          type string {
                            length "0..50";
                          }
                          description
                            "Last IP Prefix";
                        }
    
                        leaf last-sid-index {
                          type uint32;
                          description
                            "Last SID Index";
                        }
    
                        leaf flag-attached {
                          type Srms-mi-flag-e-b;
                          description
                            "Attached flag";
                        }
                      }  // list policy-mi
                    }  // container policy-ipv4-active
                  }  // container policy-ipv4
                }  // container policy
              }  // container srms
    
              container default-vrf {
                description
                  "Operational data for the default VRF
    (instance) in the OSPF process";
                container srlgs {
                  description
                    "Container for Weighted SRLG information";
                  list srlg {
                    key "srlg-name";
                    description
                      "Information for a particular SRLG";
                    leaf srlg-name {
                      type xr:Cisco-ios-xr-string;
                      description
                        "Name of SRLG configured";
                    }
    
                    leaf name {
                      type string;
                      description "SRLG Name";
                    }
    
                    leaf value {
                      type uint32;
                      description "SRLG Value";
                    }
    
                    leaf admin-weight {
                      type uint32;
                      description
                        "Weight used for this SRLG";
                    }
    
                    leaf admin-weight-set {
                      type boolean;
                      description
                        "Whether weight is set for this SRLG";
                    }
    
                    leaf value-set {
                      type boolean;
                      description
                        "Whether value is set for this SRLG";
                    }
    
                    leaf ospf-config {
                      type boolean;
                      description
                        "Whether OSPF configuration is present for this
    SRLG";
                    }
    
                    leaf global-config {
                      type boolean;
                      description
                        "Whether global configuration is present for this
    SRLG";
                    }
                  }  // list srlg
                }  // container srlgs
    
                container flood-list-table {
                  description
                    "List of LSAs being flooded";
                  list flood {
                    key "interface-name";
                    description
                      "Flooding information for a specific interface";
                    leaf interface-name {
                      type xr:Interface-name;
                      description
                        "Name of the Interface";
                    }
    
                    leaf flood-interface-name {
                      type xr:Interface-name;
                      description
                        "Name of the Interface for which flood list is
    retrieved";
                    }
    
                    leaf flood-pacing-timer {
                      type uint32;
                      description
                        "Time until next LS update due (ms)";
                    }
    
                    leaf flood-lsa-count {
                      type uint32;
                      description
                        "Number of LSAs currently being flooded";
                    }
    
                    list area-flood {
                      description
                        "Area scope floodlist";
                      leaf header-lsa-type {
                        type Lsa;
                        description "LSA Type";
                      }
    
                      leaf header-lsa-age {
                        type uint16;
                        description
                          "Age of the LSA (s)";
                      }
    
                      leaf header-ls-id {
                        type inet:ipv4-address;
                        description "LSA ID";
                      }
    
                      leaf header-advertising-router {
                        type inet:ipv4-address;
                        description
                          "Router ID of the Advertising Router";
                      }
    
                      leaf header-sequence-number {
                        type uint32;
                        description
                          "Current LSA sequence number";
                      }
    
                      leaf header-lsa-checksum {
                        type uint16;
                        description
                          "Checksum of the LSA";
                      }
                    }  // list area-flood
    
                    list as-flood {
                      description
                        "AS scope floodlist";
                      leaf header-lsa-type {
                        type Lsa;
                        description "LSA Type";
                      }
    
                      leaf header-lsa-age {
                        type uint16;
                        description
                          "Age of the LSA (s)";
                      }
    
                      leaf header-ls-id {
                        type inet:ipv4-address;
                        description "LSA ID";
                      }
    
                      leaf header-advertising-router {
                        type inet:ipv4-address;
                        description
                          "Router ID of the Advertising Router";
                      }
    
                      leaf header-sequence-number {
                        type uint32;
                        description
                          "Current LSA sequence number";
                      }
    
                      leaf header-lsa-checksum {
                        type uint16;
                        description
                          "Checksum of the LSA";
                      }
                    }  // list as-flood
                  }  // list flood
                }  // container flood-list-table
    
                container segment-routing {
                  description
                    "Container for Segment Routing";
                  container adjacency-sids {
                    description
                      "Container for SR Adjacency SIDs";
                    list adjacency-sid {
                      key "adj-sid";
                      description
                        "SR Adj SID Bag";
                      leaf adj-sid {
                        type uint32 {
                          range "0..1048575";
                        }
                        description
                          "Adjacency SID";
                      }
    
                      leaf sr-adjacency-sid {
                        type uint32;
                        description
                          "SR Adjacency SID";
                      }
    
                      leaf sr-adj-sid-is-configured {
                        type boolean;
                        description
                          "SR Adj SID is configured";
                      }
    
                      leaf is-deleted-adjacency-protected {
                        type boolean;
                        description
                          "Is this adj-sid being protected after adjacency
    deleted";
                      }
    
                      leaf deleted-adjacency-protection-timer {
                        type uint32;
                        description
                          "Remaining time for deleted adjacency protection
    (sec)";
                      }
    
                      list sr-adj-sid-neighbor {
                        description
                          "SR Adj SID Neighbor List";
                        container primary-path-info {
                          description
                            "SR Adj SID Primary path info";
                          leaf interface-handle {
                            type xr:Interface-name;
                            description
                              "SR Adj SID Interface Handle";
                          }
    
                          leaf nexthop-ip-address {
                            type inet:ipv4-address;
                            description
                              "SR Adj SID Nexthop Neighbor IP Address";
                          }
    
                          leaf load-metric {
                            type uint32;
                            description
                              "SR Adj SID Path metric";
                          }
    
                          list label-stack {
                            description
                              "SR Adj SID Label Stack";
                            leaf entry {
                              type uint32;
                              description
                                "SR Adj SID Label Stack";
                            }
                          }  // list label-stack
                        }  // container primary-path-info
    
                        container backup-path-info {
                          description
                            "SR Adj SID Backup path info";
                          leaf interface-handle {
                            type xr:Interface-name;
                            description
                              "SR Adj SID Interface Handle";
                          }
    
                          leaf nexthop-ip-address {
                            type inet:ipv4-address;
                            description
                              "SR Adj SID Nexthop Neighbor IP Address";
                          }
    
                          leaf load-metric {
                            type uint32;
                            description
                              "SR Adj SID Path metric";
                          }
    
                          list label-stack {
                            description
                              "SR Adj SID Label Stack";
                            leaf entry {
                              type uint32;
                              description
                                "SR Adj SID Label Stack";
                            }
                          }  // list label-stack
                        }  // container backup-path-info
    
                        leaf neighbor-id {
                          type inet:ipv4-address;
                          description
                            "SR Adj SID Neighbor ID";
                        }
    
                        leaf sr-adj-sid-is-protected {
                          type boolean;
                          description
                            "SR Adj SID is protected";
                        }
    
                        leaf sr-adj-sid-has-backup {
                          type boolean;
                          description
                            "SR Adj SID has backup path";
                        }
                      }  // list sr-adj-sid-neighbor
                    }  // list adjacency-sid
                  }  // container adjacency-sids
    
                  container sr-endpoint-policies {
                    description
                      "Container for SR Policies";
                    list sr-endpoint-policy {
                      key "endpoint-ip";
                      description
                        "SR Endpoint Policy Bag";
                      leaf endpoint-ip {
                        type inet:ip-address-no-zone;
                        description
                          "Endpoint IP Address";
                      }
    
                      leaf sr-endpoint {
                        type inet:ipv4-address;
                        description
                          "SR Endpoint Address";
                      }
    
                      leaf sr-router-id {
                        type uint32;
                        description
                          "SR Endpoint Router ID";
                      }
    
                      leaf sr-area-id-string {
                        type string;
                        description
                          "SR Endpoint Area ID";
                      }
    
                      leaf sr-policy-count {
                        type uint32;
                        description
                          "Count of SR Policies";
                      }
    
                      leaf sr-valid-policy-count {
                        type uint32;
                        description
                          "Count of Valid SR Policies";
                      }
    
                      leaf sr-endp-state-is-valid {
                        type boolean;
                        description
                          "Whether SR Endpoint state is valid";
                      }
    
                      leaf sr-endp-state-is-stale {
                        type boolean;
                        description
                          "Whether SR Endpoint state is stale";
                      }
    
                      leaf sr-endp-state-is-unres {
                        type boolean;
                        description
                          "Whether SR Endpoint state is unresolved";
                      }
    
                      leaf sr-endp-resolution-fail-reason {
                        type Ospf-sr-endp-res-fail-reason;
                        description
                          "Reason for SR Endpoint resolution failure";
                      }
    
                      list sr-policy {
                        description
                          "List of SR Policies";
                        leaf policy-name {
                          type string;
                          description
                            "Name of the SR Policy";
                        }
    
                        leaf policy-if-handle {
                          type xr:Interface-name;
                          description
                            "Interface handle of the SR Policy";
                        }
    
                        leaf policy-metric {
                          type int32;
                          description
                            "Metric of the SR Policy";
                        }
    
                        leaf policy-bsid {
                          type uint32;
                          description
                            "Bsid of the SR Policy";
                        }
    
                        leaf policy-metric-mode {
                          type Ospf-sr-pol-metric-mode;
                          description
                            "Metric mode of the SR Policy";
                        }
    
                        leaf policy-is-sspf {
                          type boolean;
                          description
                            "Whether SR Policy is Strict SPF";
                        }
    
                        leaf policy-is-autoroute-include {
                          type boolean;
                          description
                            "Whether SR Policy is autoroute Include";
                        }
    
                        leaf policy-state-is-valid {
                          type boolean;
                          description
                            "Whether SR Policy State is valid";
                        }
    
                        leaf policy-state-is-stale {
                          type boolean;
                          description
                            "Whether SR Policy State is stale";
                        }
    
                        leaf policy-state-is-ifh-error {
                          type boolean;
                          description
                            "Whether SR Policy State is IF Handle error";
                        }
    
                        leaf policy-state-is-idb-pending {
                          type boolean;
                          description
                            "Whether SR Policy State is IDB pending";
                        }
    
                        leaf policy-update-timestamp {
                          type uint32;
                          description
                            "Timestamp when SR Policy was updated";
                        }
                      }  // list sr-policy
                    }  // list sr-endpoint-policy
                  }  // container sr-endpoint-policies
                }  // container segment-routing
    
                container mpls-te {
                  description
                    "Container for MPLS TE";
                  container mpls-te-links {
                    description
                      "MPLS TE link information table";
                    list mpls-te-link {
                      key "area-id";
                      description
                        "MPLS TE link information";
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description "Area ID";
                      }
    
                      leaf mpls-te-router-id {
                        type inet:ipv4-address;
                        description
                          "OSPF MPLS-TE router ID";
                      }
    
                      leaf mpls-te-enabled {
                        type boolean;
                        description
                          "If true, MPLS-TE enabled in area";
                      }
    
                      leaf mpls-te-initialized {
                        type boolean;
                        description
                          "If true, MPLS-TE initialized in the area";
                      }
    
                      leaf mpls-te-area-id {
                        type string {
                          length "0..16";
                        }
                        description
                          "Area ID string in decimal or dotted decimal
    format";
                      }
    
                      leaf mpls-te-area-instance {
                        type uint32;
                        description
                          "Area information instance";
                      }
    
                      leaf mpls-te-router-address {
                        type inet:ipv4-address;
                        description
                          "MPLS-TE router address";
                      }
    
                      leaf mpls-te-next-fragment-id {
                        type uint32;
                        description
                          "Next MPLS-TE fragment ID";
                      }
    
                      leaf spacious-fragment {
                        type boolean;
                        description
                          "If true, fragment has space for next link";
                      }
    
                      list mpls-te-link {
                        description
                          "MPLS-TE links in the area";
                        container global-unreserve-bw-per-priority {
                          description
                            "Global pool unreserved bandwidth for each
    priority (bytes/s)";
                          list bw-per-priority {
                            max-elements 8;
                            description
                              "Unreserved bandwidth for each priority (bytes/s)";
                            leaf entry {
                              type uint64;
                              units "byte/s";
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                            }
                          }  // list bw-per-priority
                        }  // container global-unreserve-bw-per-priority
    
                        container sub-pool-unreserve-bw-per-priority {
                          description
                            "Sub pool unreserved bandwidth for each priority
    (bytes/s)";
                          list bw-per-priority {
                            max-elements 8;
                            description
                              "Unreserved bandwidth for each priority (bytes/s)";
                            leaf entry {
                              type uint64;
                              units "byte/s";
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                            }
                          }  // list bw-per-priority
                        }  // container sub-pool-unreserve-bw-per-priority
    
                        container link-protocol-priority-capability {
                          description
                            "Link protocol and protocol priority capability
    details";
                          leaf link-protocol-capability {
                            type uint8;
                            description
                              "Protocol capability value of the link";
                          }
    
                          leaf link-protocol-priority {
                            type uint8;
                            description
                              "Protocol priority value of the link";
                          }
                        }  // container link-protocol-priority-capability
    
                        container link-sw-capability {
                          description
                            "Link switching capability";
                          leaf link-switching-capability {
                            type uint8;
                            description
                              "Link Switching Capability value";
                          }
    
                          leaf link-encoding {
                            type uint8;
                            description
                              "Link Encoding value";
                          }
    
                          leaf minimum-lsp-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Minimum LSP bandwidth (bytes/s)";
                          }
    
                          leaf link-mtu {
                            type uint16;
                            units "byte";
                            description
                              "Link MTU size (bytes)";
                          }
    
                          list maximum-lsp-bw-per-priority {
                            max-elements 8;
                            description
                              "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                            leaf entry {
                              type uint64;
                              units "byte/s";
                              description
                                "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                            }
                          }  // list maximum-lsp-bw-per-priority
                        }  // container link-sw-capability
    
                        container extended-admin-group-list {
                          description
                            "Extended Admin Group";
                          leaf extended-admin-size {
                            type uint32;
                            description
                              "Size of the extended admin group";
                          }
    
                          list ext-admin-data {
                            description
                              "Value of Extended Admin Group";
                            leaf entry {
                              type uint32;
                              description
                                "Value of Extended Admin Group";
                            }
                          }  // list ext-admin-data
                        }  // container extended-admin-group-list
    
                        leaf new-link {
                          type boolean;
                          description
                            "If true, Link is new";
                        }
    
                        leaf fragment-id {
                          type uint32;
                          description
                            "Fragment ID for this link";
                        }
    
                        leaf mpls-link-instance {
                          type uint32;
                          description
                            "Link instance";
                        }
    
                        leaf mpls-link-type {
                          type Link-subnet;
                          description
                            "Type of link";
                        }
    
                        leaf neighbor-link-id {
                          type inet:ipv4-address;
                          description
                            "Link ID of the neighbor";
                        }
    
                        leaf link-address {
                          type inet:ipv4-address;
                          description
                            "The local interface address";
                        }
    
                        leaf neighbor-ip-address {
                          type inet:ipv4-address;
                          description
                            "IP address of the neighbor";
                        }
    
                        leaf igp-metric {
                          type uint32;
                          description
                            "Link IGP metric";
                        }
    
                        leaf te-metric {
                          type uint32;
                          description
                            "Link TE metric";
                        }
    
                        leaf maximum-link-bw {
                          type uint64;
                          units "byte/s";
                          description
                            "Maximum link bandwidth (bytes/s)";
                        }
    
                        leaf maximum-link-reservable-bw {
                          type uint64;
                          units "byte/s";
                          description
                            "Maximum link global pool reservable bandwidth
    (bytes/s)";
                        }
    
                        leaf maximum-link-sub-reservable-bw {
                          type uint64;
                          units "byte/s";
                          description
                            "Maximum link subpool reservable bandwidth
    (bytes/s)";
                        }
    
                        leaf priority-count {
                          type int32;
                          description
                            "Number of priorities.";
                        }
    
                        leaf affinity {
                          type uint32;
                          description
                            "Affinity bits";
                        }
    
                        leaf output-interface-id {
                          type uint32;
                          description
                            "Outgoing interface ID";
                        }
    
                        leaf input-interface-id {
                          type uint32;
                          description
                            "Incoming interface ID";
                        }
    
                        leaf dste-in-use {
                          type boolean;
                          description
                            "A DS-TE Allocation Model in use";
                        }
    
                        leaf dste-allocation-model-id {
                          type Igpte-lib-bw-model;
                          description
                            "DS-TE Allocation Model ID";
                        }
    
                        leaf number-of-optional-tl-vs {
                          type uint8;
                          description
                            "Number of Optional TLVs";
                        }
    
                        list mplste-link-opt-tlv {
                          description
                            "List of Optional TLVs";
                          leaf mplste-link-opt-tlv-type {
                            type Mpls-te-opt-tlv;
                            description
                              "Type of Opt TLV";
                          }
    
                          leaf mplste-link-opt-tlv-len {
                            type uint16;
                            description
                              "Length of Opt TLV";
                          }
    
                          list mplste-link-opt-tlv-value {
                            description
                              "Value of Opt TLV";
                            container bctlv-value {
                              when
                                "../opaque-tlv-type = 'mpls-te-opt-tlv-type-bc'" {
                                description
                                  "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_BC'";
                              }
                              description
                                "Value of Bandwidth Constraints TLV";
                              leaf model-id {
                                type uint8;
                                description
                                  "Allocation Model ID";
                              }
    
                              leaf num-b-cs {
                                type uint32;
                                description
                                  "Number of BC TLVs";
                              }
    
                              list mplste-link-bc-bandwidth {
                                description
                                  "Value of BC TLV";
                                leaf entry {
                                  type uint64;
                                  description
                                    "Value of BC TLV";
                                }
                              }  // list mplste-link-bc-bandwidth
                            }  // container bctlv-value
    
                            container srlgtlv-value {
                              when
                                "../opaque-tlv-type = 'mpls-te-opt-tlv-type-srlg'" {
                                description
                                  "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_SRLG'";
                              }
                              description
                                "Value of SRLG TLV";
                              leaf srlg-len {
                                type uint32;
                                description
                                  "Length of SRLG TLV";
                              }
    
                              leaf num-srl-gs {
                                type uint32;
                                description
                                  "Number of SRLG TLVs";
                              }
    
                              list mplste-link-srlg-data {
                                description
                                  "Value of SRLG TLV";
                                leaf entry {
                                  type uint32;
                                  description
                                    "Value of SRLG TLV";
                                }
                              }  // list mplste-link-srlg-data
                            }  // container srlgtlv-value
    
                            container ixcdtlv-value {
                              when
                                "../opaque-tlv-type = 'mpls-te-opt-tlv-type-ixcd'" {
                                description
                                  "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_IXCD'";
                              }
                              description
                                "Value of IXCD TLV";
                              container ixcd-switching-cap-type {
                                description
                                  "Switching Cap type";
                                container ixcdpsc-info {
                                  when
                                    "../switching-cap-type = 'rrr-proto-l-switch-cap-psc4'" {
                                    description
                                      "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_PSC4'";
                                  }
                                  description
                                    "IXCD PSC information";
                                  leaf min-lsp-bandwidth {
                                    type uint64;
                                    description
                                      "Min LSP bandwidth";
                                  }
    
                                  leaf psc-interface-mtu {
                                    type uint16;
                                    description
                                      " Interface MTU";
                                  }
                                }  // container ixcdpsc-info
    
                                container ixcdbw-sub-tlv {
                                  when
                                    "../switching-cap-type = 'rrr-proto-l-switch-cap-otn-tdm'" {
                                    description
                                      "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_OTN_TDM'";
                                  }
                                  description
                                    "Sub TLVs";
                                  list arr-bw-sub-tlv {
                                    description
                                      "Array of sub tlvs";
                                    container bw-sub-tlv-value {
                                      description
                                        "Value of BW Sub TLV";
                                      container fixed-bw-sub-tlv-value {
                                        when
                                          "../ixcdbw-sub-tlv-type = '1'" {
                                          description
                                            "../IXCDBWSubTLVType = '1'";
                                        }
                                        description
                                          "Value of Fixed Sub TLV";
                                        container fixed-sub-tlv-value {
                                          description
                                            "Value of Fixed Sub TLV";
                                          leaf signal-type {
                                            type uint8;
                                            description
                                              "Signal Type value";
                                          }
    
                                          leaf num-stages {
                                            type uint8;
                                            description
                                              "Number of stages";
                                          }
    
                                          leaf tbit {
                                            type uint8;
                                            description
                                              "T Bit";
                                          }
    
                                          leaf sbit {
                                            type uint8;
                                            description
                                              "S Bit";
                                          }
    
                                          leaf tsg {
                                            type uint8;
                                            description
                                              "TSG";
                                          }
    
                                          leaf res {
                                            type uint8;
                                            description
                                              "Res";
                                          }
    
                                          leaf priority-bit0 {
                                            type uint8;
                                            description
                                              "Priority 0";
                                          }
    
                                          leaf priority-bit1 {
                                            type uint8;
                                            description
                                              "Priority 1";
                                          }
    
                                          leaf priority-bit2 {
                                            type uint8;
                                            description
                                              "Priority 2";
                                          }
    
                                          leaf priority-bit3 {
                                            type uint8;
                                            description
                                              "Priority 3";
                                          }
    
                                          leaf priority-bit4 {
                                            type uint8;
                                            description
                                              "Priority 4";
                                          }
    
                                          leaf priority-bit5 {
                                            type uint8;
                                            description
                                              "Priority 5";
                                          }
    
                                          leaf priority-bit6 {
                                            type uint8;
                                            description
                                              "Priority 6";
                                          }
    
                                          leaf priority-bit7 {
                                            type uint8;
                                            description
                                              "Priority 7";
                                          }
    
                                          leaf stage {
                                            type yang:hex-string;
                                            description
                                              "Array of Stages";
                                          }
                                        }  // container fixed-sub-tlv-value
    
                                        list unres-oduj-prio {
                                          max-elements
                                            8;
                                          description
                                            "Array of Unres Oduj Prio";
                                          leaf entry {
                                            type uint32;
                                            description
                                              "Array of Unres Oduj Prio";
                                          }
                                        }  // list unres-oduj-prio
                                      }  // container fixed-bw-sub-tlv-value
    
                                      container flex-bw-sub-tlv-value {
                                        when
                                          "../ixcdbw-sub-tlv-type = '2'" {
                                          description
                                            "../IXCDBWSubTLVType = '2'";
                                        }
                                        description
                                          "Value of Flex Sub TLV";
                                        container flex-sub-tlv-value-common {
                                          description
                                            "Flex Sub TLV Value";
                                          leaf signal-type {
                                            type uint8;
                                            description
                                              "Signal Type value";
                                          }
    
                                          leaf num-stages {
                                            type uint8;
                                            description
                                              "Number of stages";
                                          }
    
                                          leaf tbit {
                                            type uint8;
                                            description
                                              "T Bit";
                                          }
    
                                          leaf sbit {
                                            type uint8;
                                            description
                                              "S Bit";
                                          }
    
                                          leaf tsg {
                                            type uint8;
                                            description
                                              "TSG";
                                          }
    
                                          leaf res {
                                            type uint8;
                                            description
                                              "Res";
                                          }
    
                                          leaf priority-bit0 {
                                            type uint8;
                                            description
                                              "Priority 0";
                                          }
    
                                          leaf priority-bit1 {
                                            type uint8;
                                            description
                                              "Priority 1";
                                          }
    
                                          leaf priority-bit2 {
                                            type uint8;
                                            description
                                              "Priority 2";
                                          }
    
                                          leaf priority-bit3 {
                                            type uint8;
                                            description
                                              "Priority 3";
                                          }
    
                                          leaf priority-bit4 {
                                            type uint8;
                                            description
                                              "Priority 4";
                                          }
    
                                          leaf priority-bit5 {
                                            type uint8;
                                            description
                                              "Priority 5";
                                          }
    
                                          leaf priority-bit6 {
                                            type uint8;
                                            description
                                              "Priority 6";
                                          }
    
                                          leaf priority-bit7 {
                                            type uint8;
                                            description
                                              "Priority 7";
                                          }
    
                                          leaf stage {
                                            type yang:hex-string;
                                            description
                                              "Array of Stages";
                                          }
                                        }  // container flex-sub-tlv-value-common
    
                                        list unres-lspbw {
                                          max-elements
                                            8;
                                          description
                                            "Array of Unres LSP BW";
                                          leaf entry {
                                            type uint64;
                                            description
                                              "Array of Unres LSP BW";
                                          }
                                        }  // list unres-lspbw
    
                                        list max-lspbw {
                                          max-elements
                                            8;
                                          description
                                            "Max LSP BW Array";
                                          leaf entry {
                                            type uint64;
                                            description
                                              "Max LSP BW Array";
                                          }
                                        }  // list max-lspbw
                                      }  // container flex-bw-sub-tlv-value
    
                                      leaf ixcdbw-sub-tlv-type {
                                        type uint16;
                                        description
                                          "IXCDBWSubTLVType";
                                      }
                                    }  // container bw-sub-tlv-value
    
                                    leaf bw-sub-tlv-type {
                                      type uint16;
                                      description
                                        "Type of Sub TLV";
                                    }
    
                                    leaf bw-sub-tlv-length {
                                      type uint16;
                                      description
                                        "Length of BW Sub TLV";
                                    }
                                  }  // list arr-bw-sub-tlv
                                }  // container ixcdbw-sub-tlv
    
                                leaf switching-cap-type {
                                  type uint8;
                                  description
                                    "SwitchingCapType";
                                }
                              }  // container ixcd-switching-cap-type
    
                              leaf switching-cap {
                                type uint8;
                                description
                                  "SCap";
                              }
    
                              leaf rile-len-code {
                                type uint8;
                                description
                                  "Rile LenCode";
                              }
    
                              leaf fixed-scsi-count {
                                type uint32;
                                description
                                  "Fixed SCSI count";
                              }
    
                              leaf flex-scsi-count {
                                type uint32;
                                description
                                  "Flexible SCSI count";
                              }
    
                              list max-lspbw {
                                max-elements 8;
                                description
                                  "Max LSP bandwidth array";
                                leaf entry {
                                  type int64;
                                  description
                                    "Max LSP bandwidth array";
                                }
                              }  // list max-lspbw
                            }  // container ixcdtlv-value
    
                            container unidtlv-value {
                              when
                                "../opaque-tlv-type = 'mpls-te-opt-tlv-type-uni-delay'" {
                                description
                                  "../OpaqueTLVType =
    'MPLS_TE_OPT_TLV_TYPE_UNI_DELAY'";
                              }
                              description
                                "Value of Uni Delay TLV";
                              leaf uni-dir-delay {
                                type uint32;
                                description
                                  "Uni Dir Delay";
                              }
                            }  // container unidtlv-value
    
                            leaf opaque-tlv-type {
                              type Mpls-te-opt-tlv;
                              description
                                "OpaqueTLVType";
                            }
                          }  // list mplste-link-opt-tlv-value
                        }  // list mplste-link-opt-tlv
                      }  // list mpls-te-link
    
                      list mpls-te-fragment {
                        description
                          "MPLS TE fragments in the area";
                        leaf fragment-instance {
                          type uint32;
                          description
                            "Fragment instance number";
                        }
    
                        leaf fragment-id {
                          type uint32;
                          description
                            "Fragment ID value";
                        }
    
                        leaf dste-model-id {
                          type uint8;
                          description
                            "DS-TE Allocation Model ID";
                        }
    
                        leaf same-fragment-count {
                          type uint8;
                          description
                            "Number of fragment links which haven't changed
    since the last update";
                        }
    
                        list mpls-te-link {
                          description
                            "List of fragment links";
                          container global-unreserve-bw-per-priority {
                            description
                              "Global pool unreserved bandwidth for each
    priority (bytes/s)";
                            list bw-per-priority {
                              max-elements 8;
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                              }
                            }  // list bw-per-priority
                          }  // container global-unreserve-bw-per-priority
    
                          container sub-pool-unreserve-bw-per-priority {
                            description
                              "Sub pool unreserved bandwidth for each priority
    (bytes/s)";
                            list bw-per-priority {
                              max-elements 8;
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                              }
                            }  // list bw-per-priority
                          }  // container sub-pool-unreserve-bw-per-priority
    
                          container link-protocol-priority-capability {
                            description
                              "Link protocol and protocol priority capability
    details";
                            leaf link-protocol-capability {
                              type uint8;
                              description
                                "Protocol capability value of the link";
                            }
    
                            leaf link-protocol-priority {
                              type uint8;
                              description
                                "Protocol priority value of the link";
                            }
                          }  // container link-protocol-priority-capability
    
                          container link-sw-capability {
                            description
                              "Link switching capability";
                            leaf link-switching-capability {
                              type uint8;
                              description
                                "Link Switching Capability value";
                            }
    
                            leaf link-encoding {
                              type uint8;
                              description
                                "Link Encoding value";
                            }
    
                            leaf minimum-lsp-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Minimum LSP bandwidth (bytes/s)";
                            }
    
                            leaf link-mtu {
                              type uint16;
                              units "byte";
                              description
                                "Link MTU size (bytes)";
                            }
    
                            list maximum-lsp-bw-per-priority {
                              max-elements 8;
                              description
                                "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                              }
                            }  // list maximum-lsp-bw-per-priority
                          }  // container link-sw-capability
    
                          container extended-admin-group-list {
                            description
                              "Extended Admin Group";
                            leaf extended-admin-size {
                              type uint32;
                              description
                                "Size of the extended admin group";
                            }
    
                            list ext-admin-data {
                              description
                                "Value of Extended Admin Group";
                              leaf entry {
                                type uint32;
                                description
                                  "Value of Extended Admin Group";
                              }
                            }  // list ext-admin-data
                          }  // container extended-admin-group-list
    
                          leaf new-link {
                            type boolean;
                            description
                              "If true, Link is new";
                          }
    
                          leaf fragment-id {
                            type uint32;
                            description
                              "Fragment ID for this link";
                          }
    
                          leaf mpls-link-instance {
                            type uint32;
                            description
                              "Link instance";
                          }
    
                          leaf mpls-link-type {
                            type Link-subnet;
                            description
                              "Type of link";
                          }
    
                          leaf neighbor-link-id {
                            type inet:ipv4-address;
                            description
                              "Link ID of the neighbor";
                          }
    
                          leaf link-address {
                            type inet:ipv4-address;
                            description
                              "The local interface address";
                          }
    
                          leaf neighbor-ip-address {
                            type inet:ipv4-address;
                            description
                              "IP address of the neighbor";
                          }
    
                          leaf igp-metric {
                            type uint32;
                            description
                              "Link IGP metric";
                          }
    
                          leaf te-metric {
                            type uint32;
                            description
                              "Link TE metric";
                          }
    
                          leaf maximum-link-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link bandwidth (bytes/s)";
                          }
    
                          leaf maximum-link-reservable-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link global pool reservable bandwidth
    (bytes/s)";
                          }
    
                          leaf maximum-link-sub-reservable-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link subpool reservable bandwidth
    (bytes/s)";
                          }
    
                          leaf priority-count {
                            type int32;
                            description
                              "Number of priorities.";
                          }
    
                          leaf affinity {
                            type uint32;
                            description
                              "Affinity bits";
                          }
    
                          leaf output-interface-id {
                            type uint32;
                            description
                              "Outgoing interface ID";
                          }
    
                          leaf input-interface-id {
                            type uint32;
                            description
                              "Incoming interface ID";
                          }
    
                          leaf dste-in-use {
                            type boolean;
                            description
                              "A DS-TE Allocation Model in use";
                          }
    
                          leaf dste-allocation-model-id {
                            type Igpte-lib-bw-model;
                            description
                              "DS-TE Allocation Model ID";
                          }
    
                          leaf number-of-optional-tl-vs {
                            type uint8;
                            description
                              "Number of Optional TLVs";
                          }
    
                          list mplste-link-opt-tlv {
                            description
                              "List of Optional TLVs";
                            leaf mplste-link-opt-tlv-type {
                              type Mpls-te-opt-tlv;
                              description
                                "Type of Opt TLV";
                            }
    
                            leaf mplste-link-opt-tlv-len {
                              type uint16;
                              description
                                "Length of Opt TLV";
                            }
    
                            list mplste-link-opt-tlv-value {
                              description
                                "Value of Opt TLV";
                              container bctlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-bc'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_BC'";
                                }
                                description
                                  "Value of Bandwidth Constraints TLV";
                                leaf model-id {
                                  type uint8;
                                  description
                                    "Allocation Model ID";
                                }
    
                                leaf num-b-cs {
                                  type uint32;
                                  description
                                    "Number of BC TLVs";
                                }
    
                                list mplste-link-bc-bandwidth {
                                  description
                                    "Value of BC TLV";
                                  leaf entry {
                                    type uint64;
                                    description
                                      "Value of BC TLV";
                                  }
                                }  // list mplste-link-bc-bandwidth
                              }  // container bctlv-value
    
                              container srlgtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-srlg'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_SRLG'";
                                }
                                description
                                  "Value of SRLG TLV";
                                leaf srlg-len {
                                  type uint32;
                                  description
                                    "Length of SRLG TLV";
                                }
    
                                leaf num-srl-gs {
                                  type uint32;
                                  description
                                    "Number of SRLG TLVs";
                                }
    
                                list mplste-link-srlg-data {
                                  description
                                    "Value of SRLG TLV";
                                  leaf entry {
                                    type uint32;
                                    description
                                      "Value of SRLG TLV";
                                  }
                                }  // list mplste-link-srlg-data
                              }  // container srlgtlv-value
    
                              container ixcdtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-ixcd'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_IXCD'";
                                }
                                description
                                  "Value of IXCD TLV";
                                container ixcd-switching-cap-type {
                                  description
                                    "Switching Cap type";
                                  container ixcdpsc-info {
                                    when
                                      "../switching-cap-type = 'rrr-proto-l-switch-cap-psc4'" {
                                      description
                                        "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_PSC4'";
                                    }
                                    description
                                      "IXCD PSC information";
                                    leaf min-lsp-bandwidth {
                                      type uint64;
                                      description
                                        "Min LSP bandwidth";
                                    }
    
                                    leaf psc-interface-mtu {
                                      type uint16;
                                      description
                                        " Interface MTU";
                                    }
                                  }  // container ixcdpsc-info
    
                                  container ixcdbw-sub-tlv {
                                    when
                                      "../switching-cap-type = 'rrr-proto-l-switch-cap-otn-tdm'" {
                                      description
                                        "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_OTN_TDM'";
                                    }
                                    description
                                      "Sub TLVs";
                                    list arr-bw-sub-tlv {
                                      description
                                        "Array of sub tlvs";
                                      container bw-sub-tlv-value {
                                        description
                                          "Value of BW Sub TLV";
                                        container fixed-bw-sub-tlv-value {
                                          when
                                            "../ixcdbw-sub-tlv-type = '1'" {
                                            description
                                              "../IXCDBWSubTLVType = '1'";
                                          }
                                          description
                                            "Value of Fixed Sub TLV";
                                          container fixed-sub-tlv-value {
                                            description
                                              "Value of Fixed Sub TLV";
                                            leaf signal-type {
                                              type uint8;
                                              description
                                                "Signal Type value";
                                            }
    
                                            leaf num-stages {
                                              type uint8;
                                              description
                                                "Number of stages";
                                            }
    
                                            leaf tbit {
                                              type uint8;
                                              description
                                                "T Bit";
                                            }
    
                                            leaf sbit {
                                              type uint8;
                                              description
                                                "S Bit";
                                            }
    
                                            leaf tsg {
                                              type uint8;
                                              description
                                                "TSG";
                                            }
    
                                            leaf res {
                                              type uint8;
                                              description
                                                "Res";
                                            }
    
                                            leaf priority-bit0 {
                                              type uint8;
                                              description
                                                "Priority 0";
                                            }
    
                                            leaf priority-bit1 {
                                              type uint8;
                                              description
                                                "Priority 1";
                                            }
    
                                            leaf priority-bit2 {
                                              type uint8;
                                              description
                                                "Priority 2";
                                            }
    
                                            leaf priority-bit3 {
                                              type uint8;
                                              description
                                                "Priority 3";
                                            }
    
                                            leaf priority-bit4 {
                                              type uint8;
                                              description
                                                "Priority 4";
                                            }
    
                                            leaf priority-bit5 {
                                              type uint8;
                                              description
                                                "Priority 5";
                                            }
    
                                            leaf priority-bit6 {
                                              type uint8;
                                              description
                                                "Priority 6";
                                            }
    
                                            leaf priority-bit7 {
                                              type uint8;
                                              description
                                                "Priority 7";
                                            }
    
                                            leaf stage {
                                              type yang:hex-string;
                                              description
                                                "Array of Stages";
                                            }
                                          }  // container fixed-sub-tlv-value
    
                                          list unres-oduj-prio {
                                            max-elements
                                              8;
                                            description
                                              "Array of Unres Oduj Prio";
                                            leaf entry {
                                              type uint32;
                                              description
                                                "Array of Unres Oduj Prio";
                                            }
                                          }  // list unres-oduj-prio
                                        }  // container fixed-bw-sub-tlv-value
    
                                        container flex-bw-sub-tlv-value {
                                          when
                                            "../ixcdbw-sub-tlv-type = '2'" {
                                            description
                                              "../IXCDBWSubTLVType = '2'";
                                          }
                                          description
                                            "Value of Flex Sub TLV";
                                          container flex-sub-tlv-value-common {
                                            description
                                              "Flex Sub TLV Value";
                                            leaf signal-type {
                                              type uint8;
                                              description
                                                "Signal Type value";
                                            }
    
                                            leaf num-stages {
                                              type uint8;
                                              description
                                                "Number of stages";
                                            }
    
                                            leaf tbit {
                                              type uint8;
                                              description
                                                "T Bit";
                                            }
    
                                            leaf sbit {
                                              type uint8;
                                              description
                                                "S Bit";
                                            }
    
                                            leaf tsg {
                                              type uint8;
                                              description
                                                "TSG";
                                            }
    
                                            leaf res {
                                              type uint8;
                                              description
                                                "Res";
                                            }
    
                                            leaf priority-bit0 {
                                              type uint8;
                                              description
                                                "Priority 0";
                                            }
    
                                            leaf priority-bit1 {
                                              type uint8;
                                              description
                                                "Priority 1";
                                            }
    
                                            leaf priority-bit2 {
                                              type uint8;
                                              description
                                                "Priority 2";
                                            }
    
                                            leaf priority-bit3 {
                                              type uint8;
                                              description
                                                "Priority 3";
                                            }
    
                                            leaf priority-bit4 {
                                              type uint8;
                                              description
                                                "Priority 4";
                                            }
    
                                            leaf priority-bit5 {
                                              type uint8;
                                              description
                                                "Priority 5";
                                            }
    
                                            leaf priority-bit6 {
                                              type uint8;
                                              description
                                                "Priority 6";
                                            }
    
                                            leaf priority-bit7 {
                                              type uint8;
                                              description
                                                "Priority 7";
                                            }
    
                                            leaf stage {
                                              type yang:hex-string;
                                              description
                                                "Array of Stages";
                                            }
                                          }  // container flex-sub-tlv-value-common
    
                                          list unres-lspbw {
                                            max-elements
                                              8;
                                            description
                                              "Array of Unres LSP BW";
                                            leaf entry {
                                              type uint64;
                                              description
                                                "Array of Unres LSP BW";
                                            }
                                          }  // list unres-lspbw
    
                                          list max-lspbw {
                                            max-elements
                                              8;
                                            description
                                              "Max LSP BW Array";
                                            leaf entry {
                                              type uint64;
                                              description
                                                "Max LSP BW Array";
                                            }
                                          }  // list max-lspbw
                                        }  // container flex-bw-sub-tlv-value
    
                                        leaf ixcdbw-sub-tlv-type {
                                          type uint16;
                                          description
                                            "IXCDBWSubTLVType";
                                        }
                                      }  // container bw-sub-tlv-value
    
                                      leaf bw-sub-tlv-type {
                                        type uint16;
                                        description
                                          "Type of Sub TLV";
                                      }
    
                                      leaf bw-sub-tlv-length {
                                        type uint16;
                                        description
                                          "Length of BW Sub TLV";
                                      }
                                    }  // list arr-bw-sub-tlv
                                  }  // container ixcdbw-sub-tlv
    
                                  leaf switching-cap-type {
                                    type uint8;
                                    description
                                      "SwitchingCapType";
                                  }
                                }  // container ixcd-switching-cap-type
    
                                leaf switching-cap {
                                  type uint8;
                                  description
                                    "SCap";
                                }
    
                                leaf rile-len-code {
                                  type uint8;
                                  description
                                    "Rile LenCode";
                                }
    
                                leaf fixed-scsi-count {
                                  type uint32;
                                  description
                                    "Fixed SCSI count";
                                }
    
                                leaf flex-scsi-count {
                                  type uint32;
                                  description
                                    "Flexible SCSI count";
                                }
    
                                list max-lspbw {
                                  max-elements
                                    8;
                                  description
                                    "Max LSP bandwidth array";
                                  leaf entry {
                                    type int64;
                                    description
                                      "Max LSP bandwidth array";
                                  }
                                }  // list max-lspbw
                              }  // container ixcdtlv-value
    
                              container unidtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-uni-delay'" {
                                  description
                                    "../OpaqueTLVType =
    'MPLS_TE_OPT_TLV_TYPE_UNI_DELAY'";
                                }
                                description
                                  "Value of Uni Delay TLV";
                                leaf uni-dir-delay {
                                  type uint32;
                                  description
                                    "Uni Dir Delay";
                                }
                              }  // container unidtlv-value
    
                              leaf opaque-tlv-type {
                                type Mpls-te-opt-tlv;
                                description
                                  "OpaqueTLVType";
                              }
                            }  // list mplste-link-opt-tlv-value
                          }  // list mplste-link-opt-tlv
                        }  // list mpls-te-link
                      }  // list mpls-te-fragment
                    }  // list mpls-te-link
                  }  // container mpls-te-links
    
                  container mpls-te-fragments {
                    description
                      "MPLS TE Fragment information table";
                    list mpls-te-fragment {
                      key "area-id";
                      description
                        "MPLS TE Fragment";
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description "Area ID";
                      }
    
                      leaf mpls-te-router-id {
                        type inet:ipv4-address;
                        description
                          "OSPF MPLS-TE router ID";
                      }
    
                      leaf mpls-te-enabled {
                        type boolean;
                        description
                          "If true, MPLS-TE enabled in area";
                      }
    
                      leaf mpls-te-initialized {
                        type boolean;
                        description
                          "If true, MPLS-TE initialized in the area";
                      }
    
                      leaf mpls-te-area-id {
                        type string {
                          length "0..16";
                        }
                        description
                          "Area ID string in decimal or dotted decimal
    format";
                      }
    
                      leaf mpls-te-area-instance {
                        type uint32;
                        description
                          "Area information instance";
                      }
    
                      leaf mpls-te-router-address {
                        type inet:ipv4-address;
                        description
                          "MPLS-TE router address";
                      }
    
                      leaf mpls-te-next-fragment-id {
                        type uint32;
                        description
                          "Next MPLS-TE fragment ID";
                      }
    
                      leaf spacious-fragment {
                        type boolean;
                        description
                          "If true, fragment has space for next link";
                      }
    
                      list mpls-te-link {
                        description
                          "MPLS-TE links in the area";
                        container global-unreserve-bw-per-priority {
                          description
                            "Global pool unreserved bandwidth for each
    priority (bytes/s)";
                          list bw-per-priority {
                            max-elements 8;
                            description
                              "Unreserved bandwidth for each priority (bytes/s)";
                            leaf entry {
                              type uint64;
                              units "byte/s";
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                            }
                          }  // list bw-per-priority
                        }  // container global-unreserve-bw-per-priority
    
                        container sub-pool-unreserve-bw-per-priority {
                          description
                            "Sub pool unreserved bandwidth for each priority
    (bytes/s)";
                          list bw-per-priority {
                            max-elements 8;
                            description
                              "Unreserved bandwidth for each priority (bytes/s)";
                            leaf entry {
                              type uint64;
                              units "byte/s";
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                            }
                          }  // list bw-per-priority
                        }  // container sub-pool-unreserve-bw-per-priority
    
                        container link-protocol-priority-capability {
                          description
                            "Link protocol and protocol priority capability
    details";
                          leaf link-protocol-capability {
                            type uint8;
                            description
                              "Protocol capability value of the link";
                          }
    
                          leaf link-protocol-priority {
                            type uint8;
                            description
                              "Protocol priority value of the link";
                          }
                        }  // container link-protocol-priority-capability
    
                        container link-sw-capability {
                          description
                            "Link switching capability";
                          leaf link-switching-capability {
                            type uint8;
                            description
                              "Link Switching Capability value";
                          }
    
                          leaf link-encoding {
                            type uint8;
                            description
                              "Link Encoding value";
                          }
    
                          leaf minimum-lsp-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Minimum LSP bandwidth (bytes/s)";
                          }
    
                          leaf link-mtu {
                            type uint16;
                            units "byte";
                            description
                              "Link MTU size (bytes)";
                          }
    
                          list maximum-lsp-bw-per-priority {
                            max-elements 8;
                            description
                              "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                            leaf entry {
                              type uint64;
                              units "byte/s";
                              description
                                "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                            }
                          }  // list maximum-lsp-bw-per-priority
                        }  // container link-sw-capability
    
                        container extended-admin-group-list {
                          description
                            "Extended Admin Group";
                          leaf extended-admin-size {
                            type uint32;
                            description
                              "Size of the extended admin group";
                          }
    
                          list ext-admin-data {
                            description
                              "Value of Extended Admin Group";
                            leaf entry {
                              type uint32;
                              description
                                "Value of Extended Admin Group";
                            }
                          }  // list ext-admin-data
                        }  // container extended-admin-group-list
    
                        leaf new-link {
                          type boolean;
                          description
                            "If true, Link is new";
                        }
    
                        leaf fragment-id {
                          type uint32;
                          description
                            "Fragment ID for this link";
                        }
    
                        leaf mpls-link-instance {
                          type uint32;
                          description
                            "Link instance";
                        }
    
                        leaf mpls-link-type {
                          type Link-subnet;
                          description
                            "Type of link";
                        }
    
                        leaf neighbor-link-id {
                          type inet:ipv4-address;
                          description
                            "Link ID of the neighbor";
                        }
    
                        leaf link-address {
                          type inet:ipv4-address;
                          description
                            "The local interface address";
                        }
    
                        leaf neighbor-ip-address {
                          type inet:ipv4-address;
                          description
                            "IP address of the neighbor";
                        }
    
                        leaf igp-metric {
                          type uint32;
                          description
                            "Link IGP metric";
                        }
    
                        leaf te-metric {
                          type uint32;
                          description
                            "Link TE metric";
                        }
    
                        leaf maximum-link-bw {
                          type uint64;
                          units "byte/s";
                          description
                            "Maximum link bandwidth (bytes/s)";
                        }
    
                        leaf maximum-link-reservable-bw {
                          type uint64;
                          units "byte/s";
                          description
                            "Maximum link global pool reservable bandwidth
    (bytes/s)";
                        }
    
                        leaf maximum-link-sub-reservable-bw {
                          type uint64;
                          units "byte/s";
                          description
                            "Maximum link subpool reservable bandwidth
    (bytes/s)";
                        }
    
                        leaf priority-count {
                          type int32;
                          description
                            "Number of priorities.";
                        }
    
                        leaf affinity {
                          type uint32;
                          description
                            "Affinity bits";
                        }
    
                        leaf output-interface-id {
                          type uint32;
                          description
                            "Outgoing interface ID";
                        }
    
                        leaf input-interface-id {
                          type uint32;
                          description
                            "Incoming interface ID";
                        }
    
                        leaf dste-in-use {
                          type boolean;
                          description
                            "A DS-TE Allocation Model in use";
                        }
    
                        leaf dste-allocation-model-id {
                          type Igpte-lib-bw-model;
                          description
                            "DS-TE Allocation Model ID";
                        }
    
                        leaf number-of-optional-tl-vs {
                          type uint8;
                          description
                            "Number of Optional TLVs";
                        }
    
                        list mplste-link-opt-tlv {
                          description
                            "List of Optional TLVs";
                          leaf mplste-link-opt-tlv-type {
                            type Mpls-te-opt-tlv;
                            description
                              "Type of Opt TLV";
                          }
    
                          leaf mplste-link-opt-tlv-len {
                            type uint16;
                            description
                              "Length of Opt TLV";
                          }
    
                          list mplste-link-opt-tlv-value {
                            description
                              "Value of Opt TLV";
                            container bctlv-value {
                              when
                                "../opaque-tlv-type = 'mpls-te-opt-tlv-type-bc'" {
                                description
                                  "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_BC'";
                              }
                              description
                                "Value of Bandwidth Constraints TLV";
                              leaf model-id {
                                type uint8;
                                description
                                  "Allocation Model ID";
                              }
    
                              leaf num-b-cs {
                                type uint32;
                                description
                                  "Number of BC TLVs";
                              }
    
                              list mplste-link-bc-bandwidth {
                                description
                                  "Value of BC TLV";
                                leaf entry {
                                  type uint64;
                                  description
                                    "Value of BC TLV";
                                }
                              }  // list mplste-link-bc-bandwidth
                            }  // container bctlv-value
    
                            container srlgtlv-value {
                              when
                                "../opaque-tlv-type = 'mpls-te-opt-tlv-type-srlg'" {
                                description
                                  "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_SRLG'";
                              }
                              description
                                "Value of SRLG TLV";
                              leaf srlg-len {
                                type uint32;
                                description
                                  "Length of SRLG TLV";
                              }
    
                              leaf num-srl-gs {
                                type uint32;
                                description
                                  "Number of SRLG TLVs";
                              }
    
                              list mplste-link-srlg-data {
                                description
                                  "Value of SRLG TLV";
                                leaf entry {
                                  type uint32;
                                  description
                                    "Value of SRLG TLV";
                                }
                              }  // list mplste-link-srlg-data
                            }  // container srlgtlv-value
    
                            container ixcdtlv-value {
                              when
                                "../opaque-tlv-type = 'mpls-te-opt-tlv-type-ixcd'" {
                                description
                                  "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_IXCD'";
                              }
                              description
                                "Value of IXCD TLV";
                              container ixcd-switching-cap-type {
                                description
                                  "Switching Cap type";
                                container ixcdpsc-info {
                                  when
                                    "../switching-cap-type = 'rrr-proto-l-switch-cap-psc4'" {
                                    description
                                      "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_PSC4'";
                                  }
                                  description
                                    "IXCD PSC information";
                                  leaf min-lsp-bandwidth {
                                    type uint64;
                                    description
                                      "Min LSP bandwidth";
                                  }
    
                                  leaf psc-interface-mtu {
                                    type uint16;
                                    description
                                      " Interface MTU";
                                  }
                                }  // container ixcdpsc-info
    
                                container ixcdbw-sub-tlv {
                                  when
                                    "../switching-cap-type = 'rrr-proto-l-switch-cap-otn-tdm'" {
                                    description
                                      "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_OTN_TDM'";
                                  }
                                  description
                                    "Sub TLVs";
                                  list arr-bw-sub-tlv {
                                    description
                                      "Array of sub tlvs";
                                    container bw-sub-tlv-value {
                                      description
                                        "Value of BW Sub TLV";
                                      container fixed-bw-sub-tlv-value {
                                        when
                                          "../ixcdbw-sub-tlv-type = '1'" {
                                          description
                                            "../IXCDBWSubTLVType = '1'";
                                        }
                                        description
                                          "Value of Fixed Sub TLV";
                                        container fixed-sub-tlv-value {
                                          description
                                            "Value of Fixed Sub TLV";
                                          leaf signal-type {
                                            type uint8;
                                            description
                                              "Signal Type value";
                                          }
    
                                          leaf num-stages {
                                            type uint8;
                                            description
                                              "Number of stages";
                                          }
    
                                          leaf tbit {
                                            type uint8;
                                            description
                                              "T Bit";
                                          }
    
                                          leaf sbit {
                                            type uint8;
                                            description
                                              "S Bit";
                                          }
    
                                          leaf tsg {
                                            type uint8;
                                            description
                                              "TSG";
                                          }
    
                                          leaf res {
                                            type uint8;
                                            description
                                              "Res";
                                          }
    
                                          leaf priority-bit0 {
                                            type uint8;
                                            description
                                              "Priority 0";
                                          }
    
                                          leaf priority-bit1 {
                                            type uint8;
                                            description
                                              "Priority 1";
                                          }
    
                                          leaf priority-bit2 {
                                            type uint8;
                                            description
                                              "Priority 2";
                                          }
    
                                          leaf priority-bit3 {
                                            type uint8;
                                            description
                                              "Priority 3";
                                          }
    
                                          leaf priority-bit4 {
                                            type uint8;
                                            description
                                              "Priority 4";
                                          }
    
                                          leaf priority-bit5 {
                                            type uint8;
                                            description
                                              "Priority 5";
                                          }
    
                                          leaf priority-bit6 {
                                            type uint8;
                                            description
                                              "Priority 6";
                                          }
    
                                          leaf priority-bit7 {
                                            type uint8;
                                            description
                                              "Priority 7";
                                          }
    
                                          leaf stage {
                                            type yang:hex-string;
                                            description
                                              "Array of Stages";
                                          }
                                        }  // container fixed-sub-tlv-value
    
                                        list unres-oduj-prio {
                                          max-elements
                                            8;
                                          description
                                            "Array of Unres Oduj Prio";
                                          leaf entry {
                                            type uint32;
                                            description
                                              "Array of Unres Oduj Prio";
                                          }
                                        }  // list unres-oduj-prio
                                      }  // container fixed-bw-sub-tlv-value
    
                                      container flex-bw-sub-tlv-value {
                                        when
                                          "../ixcdbw-sub-tlv-type = '2'" {
                                          description
                                            "../IXCDBWSubTLVType = '2'";
                                        }
                                        description
                                          "Value of Flex Sub TLV";
                                        container flex-sub-tlv-value-common {
                                          description
                                            "Flex Sub TLV Value";
                                          leaf signal-type {
                                            type uint8;
                                            description
                                              "Signal Type value";
                                          }
    
                                          leaf num-stages {
                                            type uint8;
                                            description
                                              "Number of stages";
                                          }
    
                                          leaf tbit {
                                            type uint8;
                                            description
                                              "T Bit";
                                          }
    
                                          leaf sbit {
                                            type uint8;
                                            description
                                              "S Bit";
                                          }
    
                                          leaf tsg {
                                            type uint8;
                                            description
                                              "TSG";
                                          }
    
                                          leaf res {
                                            type uint8;
                                            description
                                              "Res";
                                          }
    
                                          leaf priority-bit0 {
                                            type uint8;
                                            description
                                              "Priority 0";
                                          }
    
                                          leaf priority-bit1 {
                                            type uint8;
                                            description
                                              "Priority 1";
                                          }
    
                                          leaf priority-bit2 {
                                            type uint8;
                                            description
                                              "Priority 2";
                                          }
    
                                          leaf priority-bit3 {
                                            type uint8;
                                            description
                                              "Priority 3";
                                          }
    
                                          leaf priority-bit4 {
                                            type uint8;
                                            description
                                              "Priority 4";
                                          }
    
                                          leaf priority-bit5 {
                                            type uint8;
                                            description
                                              "Priority 5";
                                          }
    
                                          leaf priority-bit6 {
                                            type uint8;
                                            description
                                              "Priority 6";
                                          }
    
                                          leaf priority-bit7 {
                                            type uint8;
                                            description
                                              "Priority 7";
                                          }
    
                                          leaf stage {
                                            type yang:hex-string;
                                            description
                                              "Array of Stages";
                                          }
                                        }  // container flex-sub-tlv-value-common
    
                                        list unres-lspbw {
                                          max-elements
                                            8;
                                          description
                                            "Array of Unres LSP BW";
                                          leaf entry {
                                            type uint64;
                                            description
                                              "Array of Unres LSP BW";
                                          }
                                        }  // list unres-lspbw
    
                                        list max-lspbw {
                                          max-elements
                                            8;
                                          description
                                            "Max LSP BW Array";
                                          leaf entry {
                                            type uint64;
                                            description
                                              "Max LSP BW Array";
                                          }
                                        }  // list max-lspbw
                                      }  // container flex-bw-sub-tlv-value
    
                                      leaf ixcdbw-sub-tlv-type {
                                        type uint16;
                                        description
                                          "IXCDBWSubTLVType";
                                      }
                                    }  // container bw-sub-tlv-value
    
                                    leaf bw-sub-tlv-type {
                                      type uint16;
                                      description
                                        "Type of Sub TLV";
                                    }
    
                                    leaf bw-sub-tlv-length {
                                      type uint16;
                                      description
                                        "Length of BW Sub TLV";
                                    }
                                  }  // list arr-bw-sub-tlv
                                }  // container ixcdbw-sub-tlv
    
                                leaf switching-cap-type {
                                  type uint8;
                                  description
                                    "SwitchingCapType";
                                }
                              }  // container ixcd-switching-cap-type
    
                              leaf switching-cap {
                                type uint8;
                                description
                                  "SCap";
                              }
    
                              leaf rile-len-code {
                                type uint8;
                                description
                                  "Rile LenCode";
                              }
    
                              leaf fixed-scsi-count {
                                type uint32;
                                description
                                  "Fixed SCSI count";
                              }
    
                              leaf flex-scsi-count {
                                type uint32;
                                description
                                  "Flexible SCSI count";
                              }
    
                              list max-lspbw {
                                max-elements 8;
                                description
                                  "Max LSP bandwidth array";
                                leaf entry {
                                  type int64;
                                  description
                                    "Max LSP bandwidth array";
                                }
                              }  // list max-lspbw
                            }  // container ixcdtlv-value
    
                            container unidtlv-value {
                              when
                                "../opaque-tlv-type = 'mpls-te-opt-tlv-type-uni-delay'" {
                                description
                                  "../OpaqueTLVType =
    'MPLS_TE_OPT_TLV_TYPE_UNI_DELAY'";
                              }
                              description
                                "Value of Uni Delay TLV";
                              leaf uni-dir-delay {
                                type uint32;
                                description
                                  "Uni Dir Delay";
                              }
                            }  // container unidtlv-value
    
                            leaf opaque-tlv-type {
                              type Mpls-te-opt-tlv;
                              description
                                "OpaqueTLVType";
                            }
                          }  // list mplste-link-opt-tlv-value
                        }  // list mplste-link-opt-tlv
                      }  // list mpls-te-link
    
                      list mpls-te-fragment {
                        description
                          "MPLS TE fragments in the area";
                        leaf fragment-instance {
                          type uint32;
                          description
                            "Fragment instance number";
                        }
    
                        leaf fragment-id {
                          type uint32;
                          description
                            "Fragment ID value";
                        }
    
                        leaf dste-model-id {
                          type uint8;
                          description
                            "DS-TE Allocation Model ID";
                        }
    
                        leaf same-fragment-count {
                          type uint8;
                          description
                            "Number of fragment links which haven't changed
    since the last update";
                        }
    
                        list mpls-te-link {
                          description
                            "List of fragment links";
                          container global-unreserve-bw-per-priority {
                            description
                              "Global pool unreserved bandwidth for each
    priority (bytes/s)";
                            list bw-per-priority {
                              max-elements 8;
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                              }
                            }  // list bw-per-priority
                          }  // container global-unreserve-bw-per-priority
    
                          container sub-pool-unreserve-bw-per-priority {
                            description
                              "Sub pool unreserved bandwidth for each priority
    (bytes/s)";
                            list bw-per-priority {
                              max-elements 8;
                              description
                                "Unreserved bandwidth for each priority (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Unreserved bandwidth for each priority (bytes/s)";
                              }
                            }  // list bw-per-priority
                          }  // container sub-pool-unreserve-bw-per-priority
    
                          container link-protocol-priority-capability {
                            description
                              "Link protocol and protocol priority capability
    details";
                            leaf link-protocol-capability {
                              type uint8;
                              description
                                "Protocol capability value of the link";
                            }
    
                            leaf link-protocol-priority {
                              type uint8;
                              description
                                "Protocol priority value of the link";
                            }
                          }  // container link-protocol-priority-capability
    
                          container link-sw-capability {
                            description
                              "Link switching capability";
                            leaf link-switching-capability {
                              type uint8;
                              description
                                "Link Switching Capability value";
                            }
    
                            leaf link-encoding {
                              type uint8;
                              description
                                "Link Encoding value";
                            }
    
                            leaf minimum-lsp-bw {
                              type uint64;
                              units "byte/s";
                              description
                                "Minimum LSP bandwidth (bytes/s)";
                            }
    
                            leaf link-mtu {
                              type uint16;
                              units "byte";
                              description
                                "Link MTU size (bytes)";
                            }
    
                            list maximum-lsp-bw-per-priority {
                              max-elements 8;
                              description
                                "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                              leaf entry {
                                type uint64;
                                units "byte/s";
                                description
                                  "Maximum LSP bandwidth for each priority
    
    (bytes/s)";
                              }
                            }  // list maximum-lsp-bw-per-priority
                          }  // container link-sw-capability
    
                          container extended-admin-group-list {
                            description
                              "Extended Admin Group";
                            leaf extended-admin-size {
                              type uint32;
                              description
                                "Size of the extended admin group";
                            }
    
                            list ext-admin-data {
                              description
                                "Value of Extended Admin Group";
                              leaf entry {
                                type uint32;
                                description
                                  "Value of Extended Admin Group";
                              }
                            }  // list ext-admin-data
                          }  // container extended-admin-group-list
    
                          leaf new-link {
                            type boolean;
                            description
                              "If true, Link is new";
                          }
    
                          leaf fragment-id {
                            type uint32;
                            description
                              "Fragment ID for this link";
                          }
    
                          leaf mpls-link-instance {
                            type uint32;
                            description
                              "Link instance";
                          }
    
                          leaf mpls-link-type {
                            type Link-subnet;
                            description
                              "Type of link";
                          }
    
                          leaf neighbor-link-id {
                            type inet:ipv4-address;
                            description
                              "Link ID of the neighbor";
                          }
    
                          leaf link-address {
                            type inet:ipv4-address;
                            description
                              "The local interface address";
                          }
    
                          leaf neighbor-ip-address {
                            type inet:ipv4-address;
                            description
                              "IP address of the neighbor";
                          }
    
                          leaf igp-metric {
                            type uint32;
                            description
                              "Link IGP metric";
                          }
    
                          leaf te-metric {
                            type uint32;
                            description
                              "Link TE metric";
                          }
    
                          leaf maximum-link-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link bandwidth (bytes/s)";
                          }
    
                          leaf maximum-link-reservable-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link global pool reservable bandwidth
    (bytes/s)";
                          }
    
                          leaf maximum-link-sub-reservable-bw {
                            type uint64;
                            units "byte/s";
                            description
                              "Maximum link subpool reservable bandwidth
    (bytes/s)";
                          }
    
                          leaf priority-count {
                            type int32;
                            description
                              "Number of priorities.";
                          }
    
                          leaf affinity {
                            type uint32;
                            description
                              "Affinity bits";
                          }
    
                          leaf output-interface-id {
                            type uint32;
                            description
                              "Outgoing interface ID";
                          }
    
                          leaf input-interface-id {
                            type uint32;
                            description
                              "Incoming interface ID";
                          }
    
                          leaf dste-in-use {
                            type boolean;
                            description
                              "A DS-TE Allocation Model in use";
                          }
    
                          leaf dste-allocation-model-id {
                            type Igpte-lib-bw-model;
                            description
                              "DS-TE Allocation Model ID";
                          }
    
                          leaf number-of-optional-tl-vs {
                            type uint8;
                            description
                              "Number of Optional TLVs";
                          }
    
                          list mplste-link-opt-tlv {
                            description
                              "List of Optional TLVs";
                            leaf mplste-link-opt-tlv-type {
                              type Mpls-te-opt-tlv;
                              description
                                "Type of Opt TLV";
                            }
    
                            leaf mplste-link-opt-tlv-len {
                              type uint16;
                              description
                                "Length of Opt TLV";
                            }
    
                            list mplste-link-opt-tlv-value {
                              description
                                "Value of Opt TLV";
                              container bctlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-bc'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_BC'";
                                }
                                description
                                  "Value of Bandwidth Constraints TLV";
                                leaf model-id {
                                  type uint8;
                                  description
                                    "Allocation Model ID";
                                }
    
                                leaf num-b-cs {
                                  type uint32;
                                  description
                                    "Number of BC TLVs";
                                }
    
                                list mplste-link-bc-bandwidth {
                                  description
                                    "Value of BC TLV";
                                  leaf entry {
                                    type uint64;
                                    description
                                      "Value of BC TLV";
                                  }
                                }  // list mplste-link-bc-bandwidth
                              }  // container bctlv-value
    
                              container srlgtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-srlg'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_SRLG'";
                                }
                                description
                                  "Value of SRLG TLV";
                                leaf srlg-len {
                                  type uint32;
                                  description
                                    "Length of SRLG TLV";
                                }
    
                                leaf num-srl-gs {
                                  type uint32;
                                  description
                                    "Number of SRLG TLVs";
                                }
    
                                list mplste-link-srlg-data {
                                  description
                                    "Value of SRLG TLV";
                                  leaf entry {
                                    type uint32;
                                    description
                                      "Value of SRLG TLV";
                                  }
                                }  // list mplste-link-srlg-data
                              }  // container srlgtlv-value
    
                              container ixcdtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-ixcd'" {
                                  description
                                    "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_IXCD'";
                                }
                                description
                                  "Value of IXCD TLV";
                                container ixcd-switching-cap-type {
                                  description
                                    "Switching Cap type";
                                  container ixcdpsc-info {
                                    when
                                      "../switching-cap-type = 'rrr-proto-l-switch-cap-psc4'" {
                                      description
                                        "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_PSC4'";
                                    }
                                    description
                                      "IXCD PSC information";
                                    leaf min-lsp-bandwidth {
                                      type uint64;
                                      description
                                        "Min LSP bandwidth";
                                    }
    
                                    leaf psc-interface-mtu {
                                      type uint16;
                                      description
                                        " Interface MTU";
                                    }
                                  }  // container ixcdpsc-info
    
                                  container ixcdbw-sub-tlv {
                                    when
                                      "../switching-cap-type = 'rrr-proto-l-switch-cap-otn-tdm'" {
                                      description
                                        "../SwitchingCapType =
    'RRR_PROTO_LSWITCH_CAP_OTN_TDM'";
                                    }
                                    description
                                      "Sub TLVs";
                                    list arr-bw-sub-tlv {
                                      description
                                        "Array of sub tlvs";
                                      container bw-sub-tlv-value {
                                        description
                                          "Value of BW Sub TLV";
                                        container fixed-bw-sub-tlv-value {
                                          when
                                            "../ixcdbw-sub-tlv-type = '1'" {
                                            description
                                              "../IXCDBWSubTLVType = '1'";
                                          }
                                          description
                                            "Value of Fixed Sub TLV";
                                          container fixed-sub-tlv-value {
                                            description
                                              "Value of Fixed Sub TLV";
                                            leaf signal-type {
                                              type uint8;
                                              description
                                                "Signal Type value";
                                            }
    
                                            leaf num-stages {
                                              type uint8;
                                              description
                                                "Number of stages";
                                            }
    
                                            leaf tbit {
                                              type uint8;
                                              description
                                                "T Bit";
                                            }
    
                                            leaf sbit {
                                              type uint8;
                                              description
                                                "S Bit";
                                            }
    
                                            leaf tsg {
                                              type uint8;
                                              description
                                                "TSG";
                                            }
    
                                            leaf res {
                                              type uint8;
                                              description
                                                "Res";
                                            }
    
                                            leaf priority-bit0 {
                                              type uint8;
                                              description
                                                "Priority 0";
                                            }
    
                                            leaf priority-bit1 {
                                              type uint8;
                                              description
                                                "Priority 1";
                                            }
    
                                            leaf priority-bit2 {
                                              type uint8;
                                              description
                                                "Priority 2";
                                            }
    
                                            leaf priority-bit3 {
                                              type uint8;
                                              description
                                                "Priority 3";
                                            }
    
                                            leaf priority-bit4 {
                                              type uint8;
                                              description
                                                "Priority 4";
                                            }
    
                                            leaf priority-bit5 {
                                              type uint8;
                                              description
                                                "Priority 5";
                                            }
    
                                            leaf priority-bit6 {
                                              type uint8;
                                              description
                                                "Priority 6";
                                            }
    
                                            leaf priority-bit7 {
                                              type uint8;
                                              description
                                                "Priority 7";
                                            }
    
                                            leaf stage {
                                              type yang:hex-string;
                                              description
                                                "Array of Stages";
                                            }
                                          }  // container fixed-sub-tlv-value
    
                                          list unres-oduj-prio {
                                            max-elements
                                              8;
                                            description
                                              "Array of Unres Oduj Prio";
                                            leaf entry {
                                              type uint32;
                                              description
                                                "Array of Unres Oduj Prio";
                                            }
                                          }  // list unres-oduj-prio
                                        }  // container fixed-bw-sub-tlv-value
    
                                        container flex-bw-sub-tlv-value {
                                          when
                                            "../ixcdbw-sub-tlv-type = '2'" {
                                            description
                                              "../IXCDBWSubTLVType = '2'";
                                          }
                                          description
                                            "Value of Flex Sub TLV";
                                          container flex-sub-tlv-value-common {
                                            description
                                              "Flex Sub TLV Value";
                                            leaf signal-type {
                                              type uint8;
                                              description
                                                "Signal Type value";
                                            }
    
                                            leaf num-stages {
                                              type uint8;
                                              description
                                                "Number of stages";
                                            }
    
                                            leaf tbit {
                                              type uint8;
                                              description
                                                "T Bit";
                                            }
    
                                            leaf sbit {
                                              type uint8;
                                              description
                                                "S Bit";
                                            }
    
                                            leaf tsg {
                                              type uint8;
                                              description
                                                "TSG";
                                            }
    
                                            leaf res {
                                              type uint8;
                                              description
                                                "Res";
                                            }
    
                                            leaf priority-bit0 {
                                              type uint8;
                                              description
                                                "Priority 0";
                                            }
    
                                            leaf priority-bit1 {
                                              type uint8;
                                              description
                                                "Priority 1";
                                            }
    
                                            leaf priority-bit2 {
                                              type uint8;
                                              description
                                                "Priority 2";
                                            }
    
                                            leaf priority-bit3 {
                                              type uint8;
                                              description
                                                "Priority 3";
                                            }
    
                                            leaf priority-bit4 {
                                              type uint8;
                                              description
                                                "Priority 4";
                                            }
    
                                            leaf priority-bit5 {
                                              type uint8;
                                              description
                                                "Priority 5";
                                            }
    
                                            leaf priority-bit6 {
                                              type uint8;
                                              description
                                                "Priority 6";
                                            }
    
                                            leaf priority-bit7 {
                                              type uint8;
                                              description
                                                "Priority 7";
                                            }
    
                                            leaf stage {
                                              type yang:hex-string;
                                              description
                                                "Array of Stages";
                                            }
                                          }  // container flex-sub-tlv-value-common
    
                                          list unres-lspbw {
                                            max-elements
                                              8;
                                            description
                                              "Array of Unres LSP BW";
                                            leaf entry {
                                              type uint64;
                                              description
                                                "Array of Unres LSP BW";
                                            }
                                          }  // list unres-lspbw
    
                                          list max-lspbw {
                                            max-elements
                                              8;
                                            description
                                              "Max LSP BW Array";
                                            leaf entry {
                                              type uint64;
                                              description
                                                "Max LSP BW Array";
                                            }
                                          }  // list max-lspbw
                                        }  // container flex-bw-sub-tlv-value
    
                                        leaf ixcdbw-sub-tlv-type {
                                          type uint16;
                                          description
                                            "IXCDBWSubTLVType";
                                        }
                                      }  // container bw-sub-tlv-value
    
                                      leaf bw-sub-tlv-type {
                                        type uint16;
                                        description
                                          "Type of Sub TLV";
                                      }
    
                                      leaf bw-sub-tlv-length {
                                        type uint16;
                                        description
                                          "Length of BW Sub TLV";
                                      }
                                    }  // list arr-bw-sub-tlv
                                  }  // container ixcdbw-sub-tlv
    
                                  leaf switching-cap-type {
                                    type uint8;
                                    description
                                      "SwitchingCapType";
                                  }
                                }  // container ixcd-switching-cap-type
    
                                leaf switching-cap {
                                  type uint8;
                                  description
                                    "SCap";
                                }
    
                                leaf rile-len-code {
                                  type uint8;
                                  description
                                    "Rile LenCode";
                                }
    
                                leaf fixed-scsi-count {
                                  type uint32;
                                  description
                                    "Fixed SCSI count";
                                }
    
                                leaf flex-scsi-count {
                                  type uint32;
                                  description
                                    "Flexible SCSI count";
                                }
    
                                list max-lspbw {
                                  max-elements
                                    8;
                                  description
                                    "Max LSP bandwidth array";
                                  leaf entry {
                                    type int64;
                                    description
                                      "Max LSP bandwidth array";
                                  }
                                }  // list max-lspbw
                              }  // container ixcdtlv-value
    
                              container unidtlv-value {
                                when
                                  "../opaque-tlv-type = 'mpls-te-opt-tlv-type-uni-delay'" {
                                  description
                                    "../OpaqueTLVType =
    'MPLS_TE_OPT_TLV_TYPE_UNI_DELAY'";
                                }
                                description
                                  "Value of Uni Delay TLV";
                                leaf uni-dir-delay {
                                  type uint32;
                                  description
                                    "Uni Dir Delay";
                                }
                              }  // container unidtlv-value
    
                              leaf opaque-tlv-type {
                                type Mpls-te-opt-tlv;
                                description
                                  "OpaqueTLVType";
                              }
                            }  // list mplste-link-opt-tlv-value
                          }  // list mplste-link-opt-tlv
                        }  // list mpls-te-link
                      }  // list mpls-te-fragment
                    }  // list mpls-te-fragment
                  }  // container mpls-te-fragments
                }  // container mpls-te
    
                container statistics {
                  description
                    "Container for Statistics";
                  container spf-stats {
                    description
                      "OSPF SPF statistics";
                    container spf-header {
                      description
                        "SPF Header information";
                      leaf router-id {
                        type inet:ipv4-address;
                        description
                          "OSPF router identifier";
                      }
    
                      leaf spf-count {
                        type uint32;
                        description
                          "Count of SPFs in this area";
                      }
    
                      list area-summ {
                        description
                          "SPF details of the area";
                        leaf area-id {
                          type uint32;
                          description
                            "Area ID in OSPF";
                        }
    
                        leaf spf-count {
                          type uint32;
                          description
                            "Count of SPFs in this area";
                        }
                      }  // list area-summ
                    }  // container spf-header
    
                    list runtime {
                      description
                        "Time taken for the Intra-area SPF run";
                      container start-time {
                        description
                          "Time elapsed since last Intra SPF run";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container start-time
    
                      container duration {
                        description
                          "Time taken for the this Intra SPF calculation";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container duration
    
                      leaf area-id {
                        type string;
                        description
                          "Area ID in OSPF";
                      }
    
                      leaf change-flags {
                        type uint16;
                        description
                          "Flags indicating changes that triggered this SPF";
                      }
                    }  // list runtime
    
                    list summary-runtime {
                      description
                        "Time taken for the summary calculation";
                      container start-time {
                        description
                          "Time elapsed since last Partial SPF run";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container start-time
    
                      container duration {
                        description
                          "Time taken for the this Partial SPF calculation";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container duration
    
                      leaf advertising-router-id {
                        type uint32;
                        description
                          "Advertising Router ID of the changed LSA that
    triggered this partial SPF";
                      }
    
                      leaf destination-count {
                        type uint32;
                        description
                          "Number of LSAs changed by this advertising
    router that is being handled in this partial SPF";
                      }
    
                      leaf destination-address {
                        type uint32;
                        description
                          "Route prefix changed in this partial SPF";
                      }
                    }  // list summary-runtime
    
                    list external-runtime {
                      description
                        "Time taken for the external calculation";
                      container start-time {
                        description
                          "Time elapsed since last Partial SPF run";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container start-time
    
                      container duration {
                        description
                          "Time taken for the this Partial SPF calculation";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container duration
    
                      leaf advertising-router-id {
                        type uint32;
                        description
                          "Advertising Router ID of the changed LSA that
    triggered this partial SPF";
                      }
    
                      leaf destination-count {
                        type uint32;
                        description
                          "Number of LSAs changed by this advertising
    router that is being handled in this partial SPF";
                      }
    
                      leaf destination-address {
                        type uint32;
                        description
                          "Route prefix changed in this partial SPF";
                      }
                    }  // list external-runtime
    
                    list total-runtime {
                      description
                        "Time taken for entire route calculation";
                      container gbl-spf-time {
                        description
                          "Time taken for SPF";
                        leaf time-taken-dijkstra {
                          type uint32;
                          description
                            "Time taken for executing  Dijkstra Algorithm";
                        }
    
                        leaf time-taken-intra-prefix {
                          type uint32;
                          description
                            "Time taken for Intra Area Prefix calculations";
                        }
    
                        leaf time-taken-intra-prefix-deletion {
                          type uint32;
                          description
                            "Time taken for Intra Area Prefix deletions";
                        }
    
                        leaf time-taken-inter-prefix {
                          type uint32;
                          description
                            "Time taken for Inter Area Prefix calculations";
                        }
    
                        leaf time-taken-inter-prefix-deletion {
                          type uint32;
                          description
                            "Time taken for Inter Area Prefix deletions";
                        }
    
                        leaf time-taken-external-prefix {
                          type uint32;
                          description
                            "Time taken for Type 5/7 Prefix calculations";
                        }
    
                        leaf time-taken-external-prefix-deletion {
                          type uint32;
                          description
                            "Time taken for Type 5/7 Prefix deletions";
                        }
                      }  // container gbl-spf-time
    
                      leaf spf-start-time {
                        type uint32;
                        description
                          "Time when SPF started";
                      }
    
                      leaf lsa-change-count {
                        type int16;
                        description
                          "Count of changed LSAs";
                      }
    
                      leaf spf-number {
                        type uint8;
                        description "SPF ID";
                      }
    
                      list lsa-info {
                        max-elements 5;
                        description
                          "Details of changed LSAs";
                        leaf area-id {
                          type uint32;
                          description
                            "Area where LSA got changed";
                        }
    
                        leaf advertising-router {
                          type inet:ipv4-address;
                          description
                            "Advertising Router of the changed LSA";
                        }
    
                        leaf ls-id {
                          type inet:ipv4-address;
                          description
                            "LS ID of the changed LSA";
                        }
    
                        leaf ls-type {
                          type uint8;
                          description
                            "Type of the changed LSA";
                        }
    
                        leaf is-flush {
                          type boolean;
                          description
                            "Whether it is a flushed LSA";
                        }
                      }  // list lsa-info
    
                      list area-stat {
                        description
                          "SPF Statistics of this area";
                        container spf-time {
                          description
                            "Time taken for various stages of SPF";
                          leaf time-taken-dijkstra {
                            type uint32;
                            description
                              "Time taken for executing  Dijkstra Algorithm";
                          }
    
                          leaf time-taken-intra-prefix {
                            type uint32;
                            description
                              "Time taken for Intra Area Prefix calculations";
                          }
    
                          leaf time-taken-intra-prefix-deletion {
                            type uint32;
                            description
                              "Time taken for Intra Area Prefix deletions";
                          }
    
                          leaf time-taken-inter-prefix {
                            type uint32;
                            description
                              "Time taken for Inter Area Prefix calculations";
                          }
    
                          leaf time-taken-inter-prefix-deletion {
                            type uint32;
                            description
                              "Time taken for Inter Area Prefix deletions";
                          }
    
                          leaf time-taken-external-prefix {
                            type uint32;
                            description
                              "Time taken for Type 5/7 Prefix calculations";
                          }
    
                          leaf time-taken-external-prefix-deletion {
                            type uint32;
                            description
                              "Time taken for Type 5/7 Prefix deletions";
                          }
                        }  // container spf-time
    
                        leaf area-id {
                          type uint32;
                          description
                            "OSPF area id";
                        }
    
                        list lsa-type-count {
                          max-elements 7;
                          description
                            "Array of Count of LSA changes indexed by LSA
    
    Type";
                          leaf entry {
                            type uint32;
                            description
                              "Array of Count of LSA changes indexed by LSA
    
    Type";
                          }
                        }  // list lsa-type-count
                      }  // list area-stat
                    }  // list total-runtime
                  }  // container spf-stats
    
                  container rib-batch-stats {
                    description
                      "Stats concerning RIB route updates using the
    Batching API";
                    list priority-batch {
                      max-elements 8;
                      description
                        "RIB interaction statistics for various priority
    levels";
                      leaf batches-sent {
                        type uint32;
                        description
                          "Number of batches sent to RIB ";
                      }
    
                      leaf routes-sent {
                        type uint32;
                        description
                          "Number of routes updates sent to RIB ";
                      }
    
                      leaf routes-pending {
                        type uint32;
                        description
                          "Number of routes waiting to be sent to RIB";
                      }
    
                      leaf max-routes {
                        type uint32;
                        description
                          "Max number of routes in a batch";
                      }
    
                      leaf paths-sent {
                        type uint32;
                        description
                          "Number of paths (add+delete) sent to RIB";
                      }
    
                      leaf paths-pending {
                        type uint32;
                        description
                          "Number of paths waiting to be sent to RIB";
                      }
    
                      leaf paths-added {
                        type uint32;
                        description
                          "Number of paths added (pending+sent) to RIB ";
                      }
    
                      leaf path-add-errors {
                        type uint32;
                        description
                          "Number of paths add errors";
                      }
    
                      leaf path-deletions {
                        type uint32;
                        description
                          "Number of paths deletions (pending+sent) to RIB";
                      }
    
                      leaf path-deletion-errors {
                        type uint32;
                        description
                          "Number of paths deletion errors";
                      }
    
                      leaf lfas-pending {
                        type uint32;
                        description
                          "Number of LFAs waiting to be sent to RIB";
                      }
    
                      leaf lfas-added {
                        type uint32;
                        description
                          "Number of LFAs added to the RIB";
                      }
    
                      leaf lfa-deletions {
                        type uint32;
                        description
                          "Number of LFAs deleted from RIB";
                      }
    
                      leaf lfas-sent {
                        type uint32;
                        description
                          "Number of LFAs sent to the RIB";
                      }
    
                      leaf priority-level {
                        type string {
                          length "0..40";
                        }
                        description
                          "Priority Level Name string";
                      }
                    }  // list priority-batch
                  }  // container rib-batch-stats
    
                  container issu-stats {
                    description
                      "OSPF ISSU statistics";
                    container nsr-thread-scheduler-stats {
                      description
                        "NSR thread scheduler statistics information";
                      leaf nsr-pulse-quantum {
                        type int32;
                        description
                          "Number of events processed per pulse";
                      }
    
                      leaf nsr-events-pending {
                        type uint32;
                        description
                          "Total events pending processing across all
    priority buckets";
                      }
    
                      leaf nsr-events-tx {
                        type uint64;
                        description
                          "Number of events queued to the thread";
                      }
    
                      leaf nsr-events-rx {
                        type uint64;
                        description
                          "Number of events processed in the thread";
                      }
    
                      leaf nsr-bad-pulses-rx {
                        type uint64;
                        description
                          "Spurious pulses received in the the thread";
                      }
    
                      leaf nsr-good-pulses-rx {
                        type uint64;
                        description
                          "Good pulses received in the the thread";
                      }
    
                      leaf nsr-pulses-tx {
                        type uint64;
                        description
                          "Number of pulses sent to the thread";
                      }
    
                      leaf nsr-pulses-tx-fails {
                        type uint64;
                        description
                          "Number of pulse send fails";
                      }
    
                      list nsr-priority {
                        max-elements 3;
                        description
                          "Statistics for each priority queue";
                        leaf nsr-priority {
                          type uint32;
                          description
                            "Priority value";
                        }
    
                        leaf nsr-quantum {
                          type uint8;
                          description
                            "Number of events processed per pulse for this
    priority";
                        }
    
                        leaf nsr-remaining-quantum {
                          type uint8;
                          description
                            "Number of events remaining to be processed";
                        }
    
                        leaf nsr-events-in-queue {
                          type uint16;
                          description
                            "Number of events queued to the thread for this
    priority";
                        }
    
                        leaf nsr-max-events {
                          type uint16;
                          description
                            "Max cap on the number of pending events";
                        }
    
                        leaf nsr-peak-queue-length {
                          type uint16;
                          description
                            "Queue length of pending events peak value so far
    for this priority";
                        }
    
                        leaf nsr-events-queued {
                          type uint64;
                          description
                            "Number of events queued on this priority since
    start/clear";
                        }
    
                        leaf nsr-enqueue-fails {
                          type uint64;
                          description
                            "Number of enqueue failures since start/clear";
                        }
    
                        leaf nsr-events-dequeued {
                          type uint64;
                          description
                            "Number of events dequeued on this pri since
    start/clear";
                        }
                      }  // list nsr-priority
                    }  // container nsr-thread-scheduler-stats
    
                    container nsr-router-thread-scheduler-stats {
                      description
                        "NSR Router thread scheduler statistics
    information";
                      leaf nsr-pulse-quantum {
                        type int32;
                        description
                          "Number of events processed per pulse";
                      }
    
                      leaf nsr-events-pending {
                        type uint32;
                        description
                          "Total events pending processing across all
    priority buckets";
                      }
    
                      leaf nsr-events-tx {
                        type uint64;
                        description
                          "Number of events queued to the thread";
                      }
    
                      leaf nsr-events-rx {
                        type uint64;
                        description
                          "Number of events processed in the thread";
                      }
    
                      leaf nsr-bad-pulses-rx {
                        type uint64;
                        description
                          "Spurious pulses received in the the thread";
                      }
    
                      leaf nsr-good-pulses-rx {
                        type uint64;
                        description
                          "Good pulses received in the the thread";
                      }
    
                      leaf nsr-pulses-tx {
                        type uint64;
                        description
                          "Number of pulses sent to the thread";
                      }
    
                      leaf nsr-pulses-tx-fails {
                        type uint64;
                        description
                          "Number of pulse send fails";
                      }
    
                      list nsr-priority {
                        max-elements 3;
                        description
                          "Statistics for each priority queue";
                        leaf nsr-priority {
                          type uint32;
                          description
                            "Priority value";
                        }
    
                        leaf nsr-quantum {
                          type uint8;
                          description
                            "Number of events processed per pulse for this
    priority";
                        }
    
                        leaf nsr-remaining-quantum {
                          type uint8;
                          description
                            "Number of events remaining to be processed";
                        }
    
                        leaf nsr-events-in-queue {
                          type uint16;
                          description
                            "Number of events queued to the thread for this
    priority";
                        }
    
                        leaf nsr-max-events {
                          type uint16;
                          description
                            "Max cap on the number of pending events";
                        }
    
                        leaf nsr-peak-queue-length {
                          type uint16;
                          description
                            "Queue length of pending events peak value so far
    for this priority";
                        }
    
                        leaf nsr-events-queued {
                          type uint64;
                          description
                            "Number of events queued on this priority since
    start/clear";
                        }
    
                        leaf nsr-enqueue-fails {
                          type uint64;
                          description
                            "Number of enqueue failures since start/clear";
                        }
    
                        leaf nsr-events-dequeued {
                          type uint64;
                          description
                            "Number of events dequeued on this pri since
    start/clear";
                        }
                      }  // list nsr-priority
                    }  // container nsr-router-thread-scheduler-stats
    
                    leaf nsr-revision {
                      type int32;
                      description
                        "NSR Revision number";
                    }
    
                    leaf nsr-fsm-state {
                      type int32;
                      description
                        "Current state of NSR";
                    }
    
                    leaf nsr-version {
                      type uint32;
                      description
                        "Version Number of NSR";
                    }
    
                    leaf nsr-node-id {
                      type uint32;
                      description "Node ID";
                    }
    
                    leaf nsr-peer-version {
                      type uint32;
                      description
                        "Peer version of NSR";
                    }
    
                    leaf nsr-peer-node-id {
                      type uint32;
                      description
                        "Node ID of the peer";
                    }
    
                    leaf nsr-peer-end-point-length {
                      type uint32;
                      description
                        "Length of the endpoint retrieved from peer";
                    }
    
                    leaf nsr-peer-end-point-version {
                      type uint32;
                      description
                        "Version of the endpoint retrieved from peer";
                    }
    
                    leaf nsr-local-end-point-length {
                      type uint32;
                      description
                        "Length of local endpoint";
                    }
    
                    leaf nsr-local-end-point-version {
                      type uint32;
                      description
                        "Version of local endpoint";
                    }
    
                    leaf nsr-fabric-mtu {
                      type uint32;
                      description
                        "MTU of Fabric";
                    }
    
                    leaf nsr-neighbor-qad-queue-id {
                      type uint32;
                      description
                        "QAD Queue ID for Neighbor information";
                    }
    
                    leaf nsr-lsa-qad-queue-id {
                      type uint32;
                      description
                        "QAD Queue ID for LSA information";
                    }
    
                    leaf nsr-neighbor-qad-meta-data-count {
                      type uint32;
                      description
                        "QAD metadata Information for Neighbor";
                    }
    
                    leaf nsr-lsa-qad-meta-data-count {
                      type uint32;
                      description
                        "QAD metadata Information for LSA";
                    }
    
                    leaf nsr-neighbor-init-sync-pend-count {
                      type int32;
                      description
                        "Pending message count for Initial neighbor
    synchronization";
                    }
    
                    leaf nsr-lsa-init-sync-pend-count {
                      type int32;
                      description
                        "Pending message count for Initial lsa
    synchronization";
                    }
    
                    leaf nsr-neighbor-seq-no {
                      type uint32;
                      description
                        "Sequence number used for neighbor
    synchronization";
                    }
    
                    leaf nsr-interface-seq-no {
                      type uint32;
                      description
                        "Sequence number used for interface
    synchronization";
                    }
    
                    leaf nsr-timerquantum {
                      type int32;
                      description
                        "Number of expired timers to process per event
    manager call";
                    }
    
                    leaf nsr-peer-end-point-handle {
                      type uint64;
                      description
                        "Remote endpoint handle";
                    }
    
                    leaf nsr-local-endpoint-handle {
                      type uint64;
                      description
                        "Handle/id of local endpoint";
                    }
    
                    leaf nsr-connect-attempts {
                      type uint64;
                      description
                        "Count of LWN connection attempts";
                    }
    
                    leaf nsr-connect-failures {
                      type uint64;
                      description
                        "Count of LWN connection failures";
                    }
    
                    leaf nsr-open-event-count {
                      type uint64;
                      description
                        "Count of LWN connection open events";
                    }
    
                    leaf nsr-close-event-count {
                      type uint64;
                      description
                        "Count of LWN connection close events";
                    }
    
                    leaf nsr-error-event-count {
                      type uint64;
                      description
                        "Count of LWN connection error events";
                    }
    
                    leaf nsr-peer-end-points {
                      type yang:hex-string;
                      description
                        "Array of remote endpoints";
                    }
    
                    leaf nsr-local-end-points {
                      type yang:hex-string;
                      description
                        "Array of local endpoints";
                    }
    
                    list nsr-fsm-flag {
                      description
                        "Nsr Fsm Flags information";
                      leaf entry {
                        type Ospf-string-array;
                        description
                          "Nsr Fsm Flags information";
                      }
                    }  // list nsr-fsm-flag
    
                    list nsr-fsm-running-timer {
                      description
                        "Nsr Fsm Running Timers";
                      leaf entry {
                        type Ospf-string-array;
                        description
                          "Nsr Fsm Running Timers";
                      }
                    }  // list nsr-fsm-running-timer
    
                    list nsr-issu-milestone {
                      description
                        "Nsr Issu Milestones information";
                      leaf milestone-name {
                        type string;
                        description
                          "Name of the milestone achieved";
                      }
    
                      leaf milestone-status {
                        type string;
                        description
                          "Status of the milestone achieved";
                      }
                    }  // list nsr-issu-milestone
    
                    list nsr-err-history {
                      description
                        "Nsr Error History List information";
                      leaf nsr-revisionversion {
                        type uint32;
                        description
                          "Current Revision version of NSR";
                      }
    
                      leaf total-errors {
                        type int32;
                        description
                          "Total errors for this nsr revision version";
                      }
    
                      list nsr-error-info {
                        description
                          "List of erros";
                        container last-err-time {
                          description
                            "Time this error was last hit";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container last-err-time
    
                        leaf err-count {
                          type int32;
                          description
                            "Count this error hit during the Nsr Revision";
                        }
    
                        leaf err-info-string {
                          type string;
                          description
                            "Error Information";
                        }
                      }  // list nsr-error-info
                    }  // list nsr-err-history
                  }  // container issu-stats
    
                  container rib-lc-stats {
                    description
                      "OSPF RIB Linecard node information";
                    leaf node-count {
                      type uint8;
                      description
                        "Number of nodes";
                    }
    
                    list nodes {
                      max-elements 64;
                      description
                        "Array of RIB Node info";
                      leaf node-id {
                        type uint32;
                        description
                          "node ID of the Line Card";
                      }
    
                      leaf intf-count {
                        type uint16;
                        description
                          "Number of OSPF Interfaces";
                      }
    
                      leaf notif-count {
                        type uint8;
                        description
                          "RIB notification count";
                      }
    
                      leaf ugmerge {
                        type boolean;
                        description
                          "RIB UG merge state of the LC";
                      }
    
                      leaf node-death {
                        type boolean;
                        description
                          "RIB node death state of LC";
                      }
    
                      leaf rib-event {
                        type boolean;
                        description
                          "RIB event received for LC";
                      }
                    }  // list nodes
                  }  // container rib-lc-stats
    
                  container rib-thread-stats {
                    description
                      "OSPF RIB thread statistics";
                    container internal-work-queue {
                      description
                        "Router to RIB thread queue";
                      container rib-base-time {
                        description
                          "Base time stamp needed to calculate the current
    time ";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container rib-base-time
    
                      container spf-suspend-time-start {
                        description
                          "Last time SPF suspended start time";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container spf-suspend-time-start
    
                      container spf-suspend-time-stop {
                        description
                          "Last time SPF suspended Stop time";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container spf-suspend-time-stop
    
                      leaf is-thread-active {
                        type boolean;
                        description
                          "RIB thread active indicator";
                      }
    
                      leaf last-dequeue-time {
                        type uint64;
                        description
                          "Timestamp of last dequeue of RIB work queue";
                      }
    
                      leaf first-enqueue-time {
                        type uint64;
                        description
                          "Timestamp of first enqueue of RIB work queue";
                      }
    
                      leaf current-queue-length {
                        type int32;
                        description
                          "Work queue length at this instance";
                      }
    
                      leaf peak-queue-length {
                        type int32;
                        description
                          "Largest work queue length so far";
                      }
    
                      leaf total-queued-msg {
                        type uint32;
                        description
                          "Total number of queued messages";
                      }
    
                      leaf total-dqueued-msg {
                        type uint32;
                        description
                          "Total number of dequeued messages";
                      }
    
                      leaf rib-version {
                        type uint32;
                        description
                          "Rib version, indicating the number of times OSPF
    has connected with RIB. The value will be
    greater than 1 if any disconnect and reconnect
    happened.";
                      }
    
                      leaf rib-packets-sent {
                        type uint32;
                        description
                          "Total number of batches sent to RIB";
                      }
    
                      leaf rib-signals {
                        type uint32;
                        description
                          "Number of signals for RIB thread";
                      }
    
                      leaf rib-send-errors {
                        type uint32;
                        description
                          "Number of RIB batch send errors";
                      }
    
                      leaf rib-queue-errors {
                        type uint32;
                        description
                          "Number of RIB batch queueing errors";
                      }
    
                      leaf rib-prefix-limit-errors {
                        type uint32;
                        description
                          "Number of RIB batch prefix limit errors";
                      }
    
                      leaf rib-dequeue-errors {
                        type uint32;
                        description
                          "Number of RIB batch dequeueing errors";
                      }
    
                      leaf rib-empty-batches {
                        type uint32;
                        description
                          "Number of RIB of empty batches";
                      }
    
                      leaf rib-drops-before-sending {
                        type uint32;
                        description
                          "Number of RIB batches dropped before sending";
                      }
    
                      leaf rib-drops-after-sending {
                        type uint32;
                        description
                          "Number of RIB batches dropped after sending";
                      }
    
                      leaf rib-connection-drops {
                        type uint32;
                        description
                          "Number of RIB batches dropped";
                      }
    
                      leaf rib-forward-references {
                        type uint32;
                        description
                          "Number of forward tbl. references";
                      }
    
                      leaf priority-level {
                        type string {
                          length "0..40";
                        }
                        description
                          "Priority of these batches";
                      }
    
                      leaf rib-base-clock {
                        type uint64;
                        description
                          "Base clock stamp needed to calculate the current
    time";
                      }
    
                      leaf spf-suspend-count {
                        type uint32;
                        description
                          "Number of times SPF suspended";
                      }
                    }  // container internal-work-queue
    
                    list rib-queue {
                      max-elements 8;
                      description
                        "Primary work queues";
                      container rib-base-time {
                        description
                          "Base time stamp needed to calculate the current
    time ";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container rib-base-time
    
                      container spf-suspend-time-start {
                        description
                          "Last time SPF suspended start time";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container spf-suspend-time-start
    
                      container spf-suspend-time-stop {
                        description
                          "Last time SPF suspended Stop time";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container spf-suspend-time-stop
    
                      leaf is-thread-active {
                        type boolean;
                        description
                          "RIB thread active indicator";
                      }
    
                      leaf last-dequeue-time {
                        type uint64;
                        description
                          "Timestamp of last dequeue of RIB work queue";
                      }
    
                      leaf first-enqueue-time {
                        type uint64;
                        description
                          "Timestamp of first enqueue of RIB work queue";
                      }
    
                      leaf current-queue-length {
                        type int32;
                        description
                          "Work queue length at this instance";
                      }
    
                      leaf peak-queue-length {
                        type int32;
                        description
                          "Largest work queue length so far";
                      }
    
                      leaf total-queued-msg {
                        type uint32;
                        description
                          "Total number of queued messages";
                      }
    
                      leaf total-dqueued-msg {
                        type uint32;
                        description
                          "Total number of dequeued messages";
                      }
    
                      leaf rib-version {
                        type uint32;
                        description
                          "Rib version, indicating the number of times OSPF
    has connected with RIB. The value will be
    greater than 1 if any disconnect and reconnect
    happened.";
                      }
    
                      leaf rib-packets-sent {
                        type uint32;
                        description
                          "Total number of batches sent to RIB";
                      }
    
                      leaf rib-signals {
                        type uint32;
                        description
                          "Number of signals for RIB thread";
                      }
    
                      leaf rib-send-errors {
                        type uint32;
                        description
                          "Number of RIB batch send errors";
                      }
    
                      leaf rib-queue-errors {
                        type uint32;
                        description
                          "Number of RIB batch queueing errors";
                      }
    
                      leaf rib-prefix-limit-errors {
                        type uint32;
                        description
                          "Number of RIB batch prefix limit errors";
                      }
    
                      leaf rib-dequeue-errors {
                        type uint32;
                        description
                          "Number of RIB batch dequeueing errors";
                      }
    
                      leaf rib-empty-batches {
                        type uint32;
                        description
                          "Number of RIB of empty batches";
                      }
    
                      leaf rib-drops-before-sending {
                        type uint32;
                        description
                          "Number of RIB batches dropped before sending";
                      }
    
                      leaf rib-drops-after-sending {
                        type uint32;
                        description
                          "Number of RIB batches dropped after sending";
                      }
    
                      leaf rib-connection-drops {
                        type uint32;
                        description
                          "Number of RIB batches dropped";
                      }
    
                      leaf rib-forward-references {
                        type uint32;
                        description
                          "Number of forward tbl. references";
                      }
    
                      leaf priority-level {
                        type string {
                          length "0..40";
                        }
                        description
                          "Priority of these batches";
                      }
    
                      leaf rib-base-clock {
                        type uint64;
                        description
                          "Base clock stamp needed to calculate the current
    time";
                      }
    
                      leaf spf-suspend-count {
                        type uint32;
                        description
                          "Number of times SPF suspended";
                      }
                    }  // list rib-queue
                  }  // container rib-thread-stats
    
                  container nsr-pl-stats {
                    description
                      "OSPF NSR packet library statistics";
                    list npl-priority {
                      max-elements 2;
                      description
                        "NPL Library statistics for each priority level";
                      leaf prio-queue-level {
                        type string {
                          length "0..32";
                        }
                        description
                          "npl priority queue level";
                      }
    
                      list num-sent {
                        max-elements 5;
                        description "Total sent";
                        leaf entry {
                          type uint64;
                          description
                            "Total sent";
                        }
                      }  // list num-sent
    
                      list num-recv {
                        max-elements 6;
                        description
                          "Total recvd";
                        leaf entry {
                          type uint64;
                          description
                            "Total recvd";
                        }
                      }  // list num-recv
    
                      list num-sent-drop {
                        max-elements 5;
                        description
                          "Sent Error/drops";
                        list nsr-pl-send-drop-array {
                          max-elements 7;
                          description
                            "nsr pl send drop array";
                          leaf entry {
                            type uint32;
                            description "entry";
                          }
                        }  // list nsr-pl-send-drop-array
                      }  // list num-sent-drop
    
                      list num-recv-drop {
                        max-elements 6;
                        description
                          "Recv Errors/drops";
                        list nsr-pl-recv-drop-array {
                          max-elements 16;
                          description
                            "nsr pl recv drop array";
                          leaf entry {
                            type uint32;
                            description "entry";
                          }
                        }  // list nsr-pl-recv-drop-array
                      }  // list num-recv-drop
                    }  // list npl-priority
                  }  // container nsr-pl-stats
    
                  container nsr-stats {
                    description
                      "OSPF NSR thread statistics";
                    container nsr-thread-scheduler-stats {
                      description
                        "NSR thread scheduler statistics information";
                      leaf nsr-pulse-quantum {
                        type int32;
                        description
                          "Number of events processed per pulse";
                      }
    
                      leaf nsr-events-pending {
                        type uint32;
                        description
                          "Total events pending processing across all
    priority buckets";
                      }
    
                      leaf nsr-events-tx {
                        type uint64;
                        description
                          "Number of events queued to the thread";
                      }
    
                      leaf nsr-events-rx {
                        type uint64;
                        description
                          "Number of events processed in the thread";
                      }
    
                      leaf nsr-bad-pulses-rx {
                        type uint64;
                        description
                          "Spurious pulses received in the the thread";
                      }
    
                      leaf nsr-good-pulses-rx {
                        type uint64;
                        description
                          "Good pulses received in the the thread";
                      }
    
                      leaf nsr-pulses-tx {
                        type uint64;
                        description
                          "Number of pulses sent to the thread";
                      }
    
                      leaf nsr-pulses-tx-fails {
                        type uint64;
                        description
                          "Number of pulse send fails";
                      }
    
                      list nsr-priority {
                        max-elements 3;
                        description
                          "Statistics for each priority queue";
                        leaf nsr-priority {
                          type uint32;
                          description
                            "Priority value";
                        }
    
                        leaf nsr-quantum {
                          type uint8;
                          description
                            "Number of events processed per pulse for this
    priority";
                        }
    
                        leaf nsr-remaining-quantum {
                          type uint8;
                          description
                            "Number of events remaining to be processed";
                        }
    
                        leaf nsr-events-in-queue {
                          type uint16;
                          description
                            "Number of events queued to the thread for this
    priority";
                        }
    
                        leaf nsr-max-events {
                          type uint16;
                          description
                            "Max cap on the number of pending events";
                        }
    
                        leaf nsr-peak-queue-length {
                          type uint16;
                          description
                            "Queue length of pending events peak value so far
    for this priority";
                        }
    
                        leaf nsr-events-queued {
                          type uint64;
                          description
                            "Number of events queued on this priority since
    start/clear";
                        }
    
                        leaf nsr-enqueue-fails {
                          type uint64;
                          description
                            "Number of enqueue failures since start/clear";
                        }
    
                        leaf nsr-events-dequeued {
                          type uint64;
                          description
                            "Number of events dequeued on this pri since
    start/clear";
                        }
                      }  // list nsr-priority
                    }  // container nsr-thread-scheduler-stats
    
                    container nsr-router-thread-scheduler-stats {
                      description
                        "NSR Router thread scheduler statistics
    information";
                      leaf nsr-pulse-quantum {
                        type int32;
                        description
                          "Number of events processed per pulse";
                      }
    
                      leaf nsr-events-pending {
                        type uint32;
                        description
                          "Total events pending processing across all
    priority buckets";
                      }
    
                      leaf nsr-events-tx {
                        type uint64;
                        description
                          "Number of events queued to the thread";
                      }
    
                      leaf nsr-events-rx {
                        type uint64;
                        description
                          "Number of events processed in the thread";
                      }
    
                      leaf nsr-bad-pulses-rx {
                        type uint64;
                        description
                          "Spurious pulses received in the the thread";
                      }
    
                      leaf nsr-good-pulses-rx {
                        type uint64;
                        description
                          "Good pulses received in the the thread";
                      }
    
                      leaf nsr-pulses-tx {
                        type uint64;
                        description
                          "Number of pulses sent to the thread";
                      }
    
                      leaf nsr-pulses-tx-fails {
                        type uint64;
                        description
                          "Number of pulse send fails";
                      }
    
                      list nsr-priority {
                        max-elements 3;
                        description
                          "Statistics for each priority queue";
                        leaf nsr-priority {
                          type uint32;
                          description
                            "Priority value";
                        }
    
                        leaf nsr-quantum {
                          type uint8;
                          description
                            "Number of events processed per pulse for this
    priority";
                        }
    
                        leaf nsr-remaining-quantum {
                          type uint8;
                          description
                            "Number of events remaining to be processed";
                        }
    
                        leaf nsr-events-in-queue {
                          type uint16;
                          description
                            "Number of events queued to the thread for this
    priority";
                        }
    
                        leaf nsr-max-events {
                          type uint16;
                          description
                            "Max cap on the number of pending events";
                        }
    
                        leaf nsr-peak-queue-length {
                          type uint16;
                          description
                            "Queue length of pending events peak value so far
    for this priority";
                        }
    
                        leaf nsr-events-queued {
                          type uint64;
                          description
                            "Number of events queued on this priority since
    start/clear";
                        }
    
                        leaf nsr-enqueue-fails {
                          type uint64;
                          description
                            "Number of enqueue failures since start/clear";
                        }
    
                        leaf nsr-events-dequeued {
                          type uint64;
                          description
                            "Number of events dequeued on this pri since
    start/clear";
                        }
                      }  // list nsr-priority
                    }  // container nsr-router-thread-scheduler-stats
    
                    leaf nsr-revision {
                      type int32;
                      description
                        "NSR Revision number";
                    }
    
                    leaf nsr-fsm-state {
                      type int32;
                      description
                        "Current state of NSR";
                    }
    
                    leaf nsr-version {
                      type uint32;
                      description
                        "Version Number of NSR";
                    }
    
                    leaf nsr-node-id {
                      type uint32;
                      description "Node ID";
                    }
    
                    leaf nsr-peer-version {
                      type uint32;
                      description
                        "Peer version of NSR";
                    }
    
                    leaf nsr-peer-node-id {
                      type uint32;
                      description
                        "Node ID of the peer";
                    }
    
                    leaf nsr-peer-end-point-length {
                      type uint32;
                      description
                        "Length of the endpoint retrieved from peer";
                    }
    
                    leaf nsr-peer-end-point-version {
                      type uint32;
                      description
                        "Version of the endpoint retrieved from peer";
                    }
    
                    leaf nsr-local-end-point-length {
                      type uint32;
                      description
                        "Length of local endpoint";
                    }
    
                    leaf nsr-local-end-point-version {
                      type uint32;
                      description
                        "Version of local endpoint";
                    }
    
                    leaf nsr-fabric-mtu {
                      type uint32;
                      description
                        "MTU of Fabric";
                    }
    
                    leaf nsr-neighbor-qad-queue-id {
                      type uint32;
                      description
                        "QAD Queue ID for Neighbor information";
                    }
    
                    leaf nsr-lsa-qad-queue-id {
                      type uint32;
                      description
                        "QAD Queue ID for LSA information";
                    }
    
                    leaf nsr-neighbor-qad-meta-data-count {
                      type uint32;
                      description
                        "QAD metadata Information for Neighbor";
                    }
    
                    leaf nsr-lsa-qad-meta-data-count {
                      type uint32;
                      description
                        "QAD metadata Information for LSA";
                    }
    
                    leaf nsr-neighbor-init-sync-pend-count {
                      type int32;
                      description
                        "Pending message count for Initial neighbor
    synchronization";
                    }
    
                    leaf nsr-lsa-init-sync-pend-count {
                      type int32;
                      description
                        "Pending message count for Initial lsa
    synchronization";
                    }
    
                    leaf nsr-neighbor-seq-no {
                      type uint32;
                      description
                        "Sequence number used for neighbor
    synchronization";
                    }
    
                    leaf nsr-interface-seq-no {
                      type uint32;
                      description
                        "Sequence number used for interface
    synchronization";
                    }
    
                    leaf nsr-timerquantum {
                      type int32;
                      description
                        "Number of expired timers to process per event
    manager call";
                    }
    
                    leaf nsr-peer-end-point-handle {
                      type uint64;
                      description
                        "Remote endpoint handle";
                    }
    
                    leaf nsr-local-endpoint-handle {
                      type uint64;
                      description
                        "Handle/id of local endpoint";
                    }
    
                    leaf nsr-connect-attempts {
                      type uint64;
                      description
                        "Count of LWN connection attempts";
                    }
    
                    leaf nsr-connect-failures {
                      type uint64;
                      description
                        "Count of LWN connection failures";
                    }
    
                    leaf nsr-open-event-count {
                      type uint64;
                      description
                        "Count of LWN connection open events";
                    }
    
                    leaf nsr-close-event-count {
                      type uint64;
                      description
                        "Count of LWN connection close events";
                    }
    
                    leaf nsr-error-event-count {
                      type uint64;
                      description
                        "Count of LWN connection error events";
                    }
    
                    leaf nsr-peer-end-points {
                      type yang:hex-string;
                      description
                        "Array of remote endpoints";
                    }
    
                    leaf nsr-local-end-points {
                      type yang:hex-string;
                      description
                        "Array of local endpoints";
                    }
    
                    list nsr-fsm-flag {
                      description
                        "Nsr Fsm Flags information";
                      leaf entry {
                        type Ospf-string-array;
                        description
                          "Nsr Fsm Flags information";
                      }
                    }  // list nsr-fsm-flag
    
                    list nsr-fsm-running-timer {
                      description
                        "Nsr Fsm Running Timers";
                      leaf entry {
                        type Ospf-string-array;
                        description
                          "Nsr Fsm Running Timers";
                      }
                    }  // list nsr-fsm-running-timer
    
                    list nsr-issu-milestone {
                      description
                        "Nsr Issu Milestones information";
                      leaf milestone-name {
                        type string;
                        description
                          "Name of the milestone achieved";
                      }
    
                      leaf milestone-status {
                        type string;
                        description
                          "Status of the milestone achieved";
                      }
                    }  // list nsr-issu-milestone
    
                    list nsr-err-history {
                      description
                        "Nsr Error History List information";
                      leaf nsr-revisionversion {
                        type uint32;
                        description
                          "Current Revision version of NSR";
                      }
    
                      leaf total-errors {
                        type int32;
                        description
                          "Total errors for this nsr revision version";
                      }
    
                      list nsr-error-info {
                        description
                          "List of erros";
                        container last-err-time {
                          description
                            "Time this error was last hit";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container last-err-time
    
                        leaf err-count {
                          type int32;
                          description
                            "Count this error hit during the Nsr Revision";
                        }
    
                        leaf err-info-string {
                          type string;
                          description
                            "Error Information";
                        }
                      }  // list nsr-error-info
                    }  // list nsr-err-history
                  }  // container nsr-stats
    
                  container frr-stats {
                    description
                      "OSPF fast-reroute statistics";
                    leaf fs-paths {
                      type uint32;
                      description
                        "Number of IPFRR paths";
                    }
    
                    leaf fs-paths-eligible {
                      type uint32;
                      description
                        "Number of paths enabled for protection";
                    }
    
                    leaf fs-paths-protected {
                      type uint32;
                      description
                        "Number of paths protected";
                    }
                  }  // container frr-stats
    
                  container te-stats {
                    description
                      "OSPF TE IO statistics";
                    leaf te-connected {
                      type boolean;
                      description
                        "Whether connection to TE is up or not";
                    }
    
                    leaf control-disconnects {
                      type uint32;
                      description
                        "Count of Control disconnects";
                    }
    
                    leaf te-disconnects {
                      type uint32;
                      description
                        "Count of Control disconnects";
                    }
    
                    leaf adj-gets {
                      type uint32;
                      description
                        "Count of Adjacencies received";
                    }
    
                    leaf link-floods {
                      type uint32;
                      description
                        "Count of Link floods received";
                    }
    
                    leaf link-fragment-floods {
                      type uint32;
                      description
                        "Count of Link fragments received";
                    }
    
                    leaf lsp-gets {
                      type uint32;
                      description
                        "Count of LSP Gets received";
                    }
    
                    leaf tunnel-announces {
                      type uint32;
                      description
                        "Count of tunnels announced";
                    }
    
                    leaf total-tunnels {
                      type uint32;
                      description
                        "Total count of tunnels";
                    }
    
                    leaf control-batch-reads {
                      type uint32;
                      description
                        "Count of reads of control batch";
                    }
    
                    leaf control-batch-writes {
                      type uint32;
                      description
                        "Count of writes of control batch";
                    }
    
                    leaf link-batch-reads {
                      type uint32;
                      description
                        "Count of reads of link batch";
                    }
    
                    leaf link-batch-writes {
                      type uint32;
                      description
                        "Count of writes of link batch";
                    }
    
                    leaf adj-changes {
                      type uint32;
                      description
                        "Count of adjacency changes";
                    }
    
                    leaf fragment-deletes {
                      type uint32;
                      description
                        "Count of deleted fragments";
                    }
    
                    leaf fragment-announces {
                      type uint32;
                      description
                        "Count of fragments announced";
                    }
    
                    leaf data-transfer-completes {
                      type uint32;
                      description
                        "Count of data transfer complete event";
                    }
    
                    leaf pce-listen {
                      type uint32;
                      description
                        "Count of PCE listen TRUE events ";
                    }
    
                    leaf pce-stoplisten {
                      type uint32;
                      description
                        "Count of PCE listen FALSE events ";
                    }
    
                    leaf pce-flood {
                      type uint32;
                      description
                        "Count of PCE flood events";
                    }
    
                    leaf pce-get {
                      type uint32;
                      description
                        "Count of PCE get events";
                    }
    
                    leaf pce-border-router-lookup {
                      type uint32;
                      description
                        "Count of PCE Border Router Lookup requests";
                    }
    
                    leaf pce-border-router-lookup-destinations {
                      type uint32;
                      description
                        "Count of destinations looked up by PCE Border
    Router Lookup requests";
                    }
    
                    leaf pce-failure-responses {
                      type uint32;
                      description
                        "Count of PCE failures encountered";
                    }
    
                    leaf pce-node-announce-batches {
                      type uint32;
                      description
                        "Count of PCE Node Announce batches";
                    }
    
                    leaf pce-node-delete-batches {
                      type uint32;
                      description
                        "Count of PCE Node Announce batches";
                    }
    
                    leaf pce-node-announce {
                      type uint32;
                      description
                        "Count of total PCE Node Announces";
                    }
    
                    leaf pce-node-delete {
                      type uint32;
                      description
                        "Count of total PCE Node Deletions";
                    }
    
                    leaf pce-node-send-fails {
                      type uint32;
                      description
                        "Count of PCE send failures";
                    }
    
                    leaf te-sr-path-reg-idt-received {
                      type boolean;
                      description
                        "Whether IDT registrations received for SR TE
    paths";
                    }
    
                    leaf te-sr-idt-sent {
                      type boolean;
                      description
                        "Whether IDT message is sent for SR TE";
                    }
    
                    leaf sr-area-enabled {
                      type uint32;
                      description
                        "Count of SR enabled areas";
                    }
                  }  // container te-stats
    
                  container protocol-stats {
                    description
                      "OSPF Protocol statistics";
                    leaf inputs {
                      type uint32;
                      description
                        "Total count of incoming packets";
                    }
    
                    leaf input-hello {
                      type uint32;
                      description
                        "Total count of incoming hello packets";
                    }
    
                    leaf input-db-descriptions {
                      type uint32;
                      description
                        "Total count of incoming Database description
    packets";
                    }
    
                    leaf input-db-descriptions-lsa {
                      type uint32;
                      description
                        "Total count of incoming Database description
    packets with LSA headers";
                    }
    
                    leaf input-requests {
                      type uint32;
                      description
                        "Total count of incoming Request packets";
                    }
    
                    leaf input-requests-lsa {
                      type uint32;
                      description
                        "Total count of incoming Request packets with LSA
    headers";
                    }
    
                    leaf input-ls-updates {
                      type uint32;
                      description
                        "Total count of incoming LS Update packets";
                    }
    
                    leaf input-ls-updates-lsa {
                      type uint32;
                      description
                        "Total count of incoming LS Update packets with
    LSA headers";
                    }
    
                    leaf input-ls-acks {
                      type uint32;
                      description
                        "Total count of incoming LS Acknowledgement
    packets";
                    }
    
                    leaf input-ls-acks-lsa {
                      type uint32;
                      description
                        "Total count of incoming LS Acknowledgement
    packets with LSA headers";
                    }
    
                    leaf checksum-errors {
                      type uint32;
                      description
                        "Total count of incoming packets with checksum
    errors";
                    }
    
                    leaf input-auth-error {
                      type uint32;
                      description
                        "Total count of incoming packets with
    authentication errors";
                    }
    
                    leaf outputs {
                      type uint32;
                      description
                        "Total count of outgoing packets";
                    }
    
                    leaf output-hellos {
                      type uint32;
                      description
                        "Total count of outgoing hello packets";
                    }
    
                    leaf output-db-descriptions {
                      type uint32;
                      description
                        "Total count of outgoing Database description
    packets";
                    }
    
                    leaf output-db-descriptions-lsa {
                      type uint32;
                      description
                        "Total count of outgoing Database description
    packets with LSA headers";
                    }
    
                    leaf output-requests {
                      type uint32;
                      description
                        "Total count of outgoing Request packets";
                    }
    
                    leaf output-requests-lsa {
                      type uint32;
                      description
                        "Total count of outgoing Request packets with LSA
    headers";
                    }
    
                    leaf output-ls-updates {
                      type uint32;
                      description
                        "Total count of outgoing LS Update packets";
                    }
    
                    leaf output-ls-updates-lsa {
                      type uint32;
                      description
                        "Total count of outgoing LS Update packets with
    LSA headers";
                    }
    
                    leaf output-ls-acks {
                      type uint32;
                      description
                        "Total count of outgoing LS Acknowledgement
    packets";
                    }
    
                    leaf output-ls-acks-lsa {
                      type uint32;
                      description
                        "Total count of outgoing LS Acknowledgement
    packets with LSA headers";
                    }
    
                    leaf outputs-auth-error {
                      type uint32;
                      description
                        "Total count of outgoing packets with
    authentication errors";
                    }
    
                    leaf input-hello-db-descriptions {
                      type uint32;
                      description
                        "Total count of incoming Database description
    packets received on hello thread";
                    }
    
                    leaf input-hello-ls-requests {
                      type uint32;
                      description
                        "Total count of incoming Request packets received
    on hello thread";
                    }
    
                    leaf input-hello-ls-updates {
                      type uint32;
                      description
                        "Total count of incoming LS Update packets
    received on hello thread";
                    }
    
                    leaf input-hello-ls-acks {
                      type uint32;
                      description
                        "Total count of incoming LS Acknowledgement
    packets received on hello thread";
                    }
                  }  // container protocol-stats
    
                  container raw-io-stats {
                    description
                      "OSPF RAW IO statistics";
                    leaf out-sent {
                      type uint32;
                      description
                        "Count of packets sent out on raw socket";
                    }
    
                    leaf bytes-sent {
                      type uint32;
                      units "byte";
                      description
                        "Count of bytes sent out on raw socket";
                    }
    
                    leaf out-discarded-no-connection {
                      type uint32;
                      description
                        "Count of outgoing packets discarded due to
    connection issues";
                    }
    
                    leaf out-null-src-discarded {
                      type uint32;
                      description
                        "Count of outgoing packets discarded due to
    source address or packet length issues";
                    }
    
                    leaf out-no-pakbuf-discarded {
                      type uint32;
                      description
                        "Count of outgoing packets discarded due to
    packet buffer issues";
                    }
    
                    leaf out-ipv4-hdr-error-discarded {
                      type uint32;
                      description
                        "Count of outgoing packets discarded due to ipv4
    deader construction failure";
                    }
    
                    leaf out-send-pak-error-discarded {
                      type uint32;
                      description
                        "Count of outgoing packets discarded due to send
    failure";
                    }
    
                    leaf in-received {
                      type uint32;
                      description
                        "Count of packets received on raw socket";
                    }
    
                    leaf bytes-received {
                      type uint32;
                      units "byte";
                      description
                        "Count of bytes received on raw socket";
                    }
    
                    leaf short-msg-received {
                      type uint32;
                      description
                        "Count of received packets discarded due to
    packet size too small";
                    }
    
                    leaf in-no-memory-discarded {
                      type uint32;
                      description
                        "Count of received packets discarded due to
    malloc failure";
                    }
    
                    leaf in-raw-events {
                      type uint32;
                      description
                        "Count of incoming raw events";
                    }
    
                    leaf disconnects {
                      type uint32;
                      description
                        "Count of raw sockets disconnected";
                    }
    
                    leaf in-standby-discarded {
                      type uint32;
                      description
                        "Count of received packets discarded since
    received on standby";
                    }
    
                    leaf nsr-not-ready-discarded {
                      type uint32;
                      description
                        "Count of received packets discarded since NSR
    not ready";
                    }
    
                    leaf raw-connected {
                      type boolean;
                      description
                        "Whether raw socket connection is up";
                    }
    
                    leaf shamlink-raw-connected {
                      type boolean;
                      description
                        "Whether shamlink raw socket connection is up";
                    }
                  }  // container raw-io-stats
    
                  container interface-stats-entries {
                    description
                      "Statistics innformation Interface table";
                    list interface-stats-entry {
                      key "interface-name";
                      description
                        "Statistics information for a specific interface";
                      leaf interface-name {
                        type xr:Interface-name;
                        description
                          "Name of the Interface";
                      }
    
                      leaf handle {
                        type xr:Interface-name;
                        description
                          "interface handle type";
                      }
    
                      leaf if-name-str {
                        type string;
                        description
                          "interface name";
                      }
    
                      list if-entry {
                        description
                          "interface entry";
                        leaf madj-intf {
                          type boolean;
                          description
                            "OSPF madj interface";
                        }
    
                        leaf area-id {
                          type uint32;
                          description
                            "OSPF area id";
                        }
    
                        leaf area-id-str {
                          type string;
                          description
                            "OSPF aread id string";
                        }
    
                        list if-stat {
                          description
                            "OSPF interface statistics";
                          leaf entry {
                            type uint32;
                            description
                              "OSPF interface statistics";
                          }
                        }  // list if-stat
                      }  // list if-entry
                    }  // list interface-stats-entry
                  }  // container interface-stats-entries
                }  // container statistics
    
                container adjacency-information {
                  description
                    "Container for OSPF Interfaces";
                  container neighbors {
                    description "Neighbor table";
                    list neighbor {
                      description
                        "Neighbor information";
                      leaf interface-name {
                        type xr:Interface-name;
                        description
                          "Name of the Interface";
                      }
    
                      leaf neighbor-address {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 address of the neighbor";
                      }
    
                      container neighbor-bfd-information {
                        description
                          "BFD related information of the neighbor";
                        leaf bfd-intf-enable-mode {
                          type uint32;
                          description
                            "BFD enable mode - Default/Strict";
                        }
    
                        leaf bfd-status-flag {
                          type uint8;
                          description
                            "Status of the BFD Session";
                        }
                      }  // container neighbor-bfd-information
    
                      leaf neighbor-id {
                        type inet:ipv4-address;
                        description
                          "Neighbor ID";
                      }
    
                      leaf neighbor-ip-address {
                        type inet:ipv4-address;
                        description
                          "Neighbor IP Address";
                      }
    
                      leaf neighbor-interface-name {
                        type xr:Interface-name;
                        description
                          "Interface via which the neighbor is seen";
                      }
    
                      leaf neighbor-dr-priority {
                        type uint8;
                        description
                          "DR priority of the neighbor";
                      }
    
                      leaf neighbor-state {
                        type Neighbor-state;
                        description
                          "NFSM state of the neighbor";
                      }
    
                      leaf dr-bdr-state {
                        type Dr-bdr-state;
                        description
                          "IFSM state of the neighbor";
                      }
    
                      leaf neighbor-dead-timer {
                        type uint32;
                        description
                          "Time until neighbor's dead timer expires (s)";
                      }
    
                      leaf neighbor-up-time {
                        type uint32;
                        description
                          "Amount of time since the adjacency is up (s)";
                      }
    
                      leaf neighbor-madj-interface {
                        type boolean;
                        description
                          "Interface is MADJ";
                      }
                    }  // list neighbor
                  }  // container neighbors
    
                  container requests {
                    description
                      "Request List table";
                    list request {
                      description
                        "Request list for a particular adjacency";
                      leaf interface-name {
                        type xr:Interface-name;
                        description "Interface";
                      }
    
                      leaf neighbor-address {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 address of the neighbor";
                      }
    
                      leaf request-neighbor-id {
                        type inet:ipv4-address;
                        description
                          "Neighbor ID";
                      }
    
                      leaf request-neighbor-address {
                        type inet:ipv4-address;
                        description
                          "Neighbor IP address";
                      }
    
                      leaf request-interface-name {
                        type xr:Interface-name;
                        description
                          "Request list interface";
                      }
    
                      list request {
                        description
                          "List of request list entries";
                        leaf header-lsa-type {
                          type Lsa;
                          description "LSA Type";
                        }
    
                        leaf header-lsa-age {
                          type uint16;
                          description
                            "Age of the LSA (s)";
                        }
    
                        leaf header-ls-id {
                          type inet:ipv4-address;
                          description "LSA ID";
                        }
    
                        leaf header-advertising-router {
                          type inet:ipv4-address;
                          description
                            "Router ID of the Advertising Router";
                        }
    
                        leaf header-sequence-number {
                          type uint32;
                          description
                            "Current LSA sequence number";
                        }
    
                        leaf header-lsa-checksum {
                          type uint16;
                          description
                            "Checksum of the LSA";
                        }
                      }  // list request
                    }  // list request
                  }  // container requests
    
                  container retransmissions {
                    description
                      "Retransmission list table";
                    list retransmission {
                      description
                        "Retransmission list for a particular adjacency";
                      leaf interface-name {
                        type xr:Interface-name;
                        description
                          "Name of the Interface";
                      }
    
                      leaf neighbor-address {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 address of the neighbor";
                      }
    
                      leaf retransmission-neighbor-id {
                        type inet:ipv4-address;
                        description
                          "Neighbor ID";
                      }
    
                      leaf retransmission-neighbor-ip-address {
                        type inet:ipv4-address;
                        description
                          "Neighbor IP Address";
                      }
    
                      leaf retransmission-interface-name {
                        type xr:Interface-name;
                        description
                          "Retransmission list interface";
                      }
    
                      leaf retransmission-timer {
                        type uint32;
                        description
                          "Amount of time remaining on retransmission timer
    (ms)";
                      }
    
                      leaf retransmission-count {
                        type uint32;
                        description
                          "Retransmission queue length";
                      }
    
                      list retransmission-area-db {
                        description
                          "List of Area scope entries";
                        leaf header-lsa-type {
                          type Lsa;
                          description "LSA Type";
                        }
    
                        leaf header-lsa-age {
                          type uint16;
                          description
                            "Age of the LSA (s)";
                        }
    
                        leaf header-ls-id {
                          type inet:ipv4-address;
                          description "LSA ID";
                        }
    
                        leaf header-advertising-router {
                          type inet:ipv4-address;
                          description
                            "Router ID of the Advertising Router";
                        }
    
                        leaf header-sequence-number {
                          type uint32;
                          description
                            "Current LSA sequence number";
                        }
    
                        leaf header-lsa-checksum {
                          type uint16;
                          description
                            "Checksum of the LSA";
                        }
                      }  // list retransmission-area-db
    
                      list retransmission-asdb {
                        description
                          "List of AS Scope entries";
                        leaf header-lsa-type {
                          type Lsa;
                          description "LSA Type";
                        }
    
                        leaf header-lsa-age {
                          type uint16;
                          description
                            "Age of the LSA (s)";
                        }
    
                        leaf header-ls-id {
                          type inet:ipv4-address;
                          description "LSA ID";
                        }
    
                        leaf header-advertising-router {
                          type inet:ipv4-address;
                          description
                            "Router ID of the Advertising Router";
                        }
    
                        leaf header-sequence-number {
                          type uint32;
                          description
                            "Current LSA sequence number";
                        }
    
                        leaf header-lsa-checksum {
                          type uint16;
                          description
                            "Checksum of the LSA";
                        }
                      }  // list retransmission-asdb
                    }  // list retransmission
                  }  // container retransmissions
    
                  container neighbor-details {
                    description
                      "Neighbor detail table";
                    list neighbor-detail {
                      description
                        "A single neighbor's detail information";
                      leaf interface-name {
                        type xr:Interface-name;
                        description
                          "Name of the Interface";
                      }
    
                      leaf neighbor-address {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 address of the neighbor";
                      }
    
                      container neighbor-summary {
                        description
                          "Neighbor summary information";
                        container neighbor-bfd-information {
                          description
                            "BFD related information of the neighbor";
                          leaf bfd-intf-enable-mode {
                            type uint32;
                            description
                              "BFD enable mode - Default/Strict";
                          }
    
                          leaf bfd-status-flag {
                            type uint8;
                            description
                              "Status of the BFD Session";
                          }
                        }  // container neighbor-bfd-information
    
                        leaf neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor ID";
                        }
    
                        leaf neighbor-ip-address {
                          type inet:ipv4-address;
                          description
                            "Neighbor IP Address";
                        }
    
                        leaf neighbor-interface-name {
                          type xr:Interface-name;
                          description
                            "Interface via which the neighbor is seen";
                        }
    
                        leaf neighbor-dr-priority {
                          type uint8;
                          description
                            "DR priority of the neighbor";
                        }
    
                        leaf neighbor-state {
                          type Neighbor-state;
                          description
                            "NFSM state of the neighbor";
                        }
    
                        leaf dr-bdr-state {
                          type Dr-bdr-state;
                          description
                            "IFSM state of the neighbor";
                        }
    
                        leaf neighbor-dead-timer {
                          type uint32;
                          description
                            "Time until neighbor's dead timer expires (s)";
                        }
    
                        leaf neighbor-up-time {
                          type uint32;
                          description
                            "Amount of time since the adjacency is up (s)";
                        }
    
                        leaf neighbor-madj-interface {
                          type boolean;
                          description
                            "Interface is MADJ";
                        }
                      }  // container neighbor-summary
    
                      container neighbor-bfd-information {
                        description
                          "BFD related information of the neighbor";
                        leaf bfd-intf-enable-mode {
                          type uint32;
                          description
                            "BFD enable mode - Default/Strict";
                        }
    
                        leaf bfd-status-flag {
                          type uint8;
                          description
                            "Status of the BFD Session";
                        }
                      }  // container neighbor-bfd-information
    
                      container neighbor-retransmission-information {
                        description
                          "Retransmission information with this neighbor";
                        leaf dbd-retransmission-count {
                          type uint32;
                          description
                            "Number of DBD retransmissions during last
    exchange";
                        }
    
                        leaf dbd-retransmission-total-count {
                          type uint32;
                          description
                            "Total number of DBD retransmissions for this
    neighbor";
                        }
    
                        leaf area-flooding-index {
                          type uint32;
                          description
                            "Area scope LSA's flood index";
                        }
    
                        leaf as-flood-index {
                          type uint32;
                          description
                            "AS scope LSA's flood index";
                        }
    
                        leaf neighbor-retransmission-count {
                          type uint32;
                          description
                            "Retransmission queue length";
                        }
    
                        leaf number-of-retransmissions {
                          type uint32;
                          description
                            "Number of retransmissions for this neighbor";
                        }
    
                        leaf area-first-flood-information {
                          type uint32;
                          description
                            "First flood item for area scope LSAs";
                        }
    
                        leaf area-first-flood-information-index {
                          type uint32;
                          description
                            "Index of the first flood item for area scope
    LSAs";
                        }
    
                        leaf as-first-flood-information {
                          type uint32;
                          description
                            "First flood item for AS scope LSAs";
                        }
    
                        leaf as-first-flood-information-index {
                          type uint32;
                          description
                            "Index for first flood item for AS scope LSAs";
                        }
    
                        leaf area-next-flood-information {
                          type uint32;
                          description
                            "Next flood item for area scope LSAs";
                        }
    
                        leaf area-next-flood-information-index {
                          type uint32;
                          description
                            "Index of next flood item for Area scope LSAs";
                        }
    
                        leaf as-next-flood-information {
                          type uint32;
                          description
                            "Next flood item for AS scope LSAs";
                        }
    
                        leaf as-next-flood-information-index {
                          type uint32;
                          description
                            "Index of next flood item for AS scope LSAs";
                        }
    
                        leaf last-retransmission-length {
                          type uint32;
                          description
                            "Number of LSAs sent in last retransmission";
                        }
    
                        leaf maximum-retransmission-length {
                          type uint32;
                          description
                            "Maximum number of LSAs sent in a retransmission";
                        }
    
                        leaf last-retransmission-time {
                          type uint32;
                          description
                            "Time taken for retransmission in the last
    attempt (ms)";
                        }
    
                        leaf maximum-retransmission-time {
                          type uint32;
                          description
                            "Maximum time taken for retransmission (ms)";
                        }
    
                        leaf lsa-retransmission-timer {
                          type uint32;
                          description
                            "Time until next LSA retransmission (ms)";
                        }
                      }  // container neighbor-retransmission-information
    
                      leaf neighbor-area-id {
                        type string {
                          length "0..16";
                        }
                        description
                          "Area ID string in decimal or dotted-decimal
    format";
                      }
    
                      leaf state-change-count {
                        type uint16;
                        description
                          "Number of state changes";
                      }
    
                      leaf neighbor-cost {
                        type uint16;
                        description
                          "Cost of path to this neighbor";
                      }
    
                      leaf neighbor-filter {
                        type boolean;
                        description
                          "If true, filter outgoing LSAs";
                      }
    
                      leaf neighbor-designated-router-address {
                        type inet:ipv4-address;
                        description
                          "Address of designated router";
                      }
    
                      leaf neighbor-backup-designated-router-address {
                        type inet:ipv4-address;
                        description
                          "Address of backup designated router";
                      }
    
                      leaf interface-type {
                        type Interface;
                        description
                          "Type of the interface, whether it is p2p,
    broadcast, nbma or p2mp";
                      }
    
                      leaf poll-interval {
                        type uint32;
                        description
                          "Poll interval (s)";
                      }
    
                      leaf next-poll-interval {
                        type uint32;
                        units "second";
                        description
                          "For NBMA networks, amount of time remaining in
    seconds before the next poll interval expires
    and Hello is sent (s)";
                      }
    
                      leaf neighbor-option {
                        type uint8;
                        description
                          " This is bitmaks of neighbor's option field
    received";
                      }
    
                      leaf pending-events {
                        type uint16;
                        description
                          "Number of pending events";
                      }
    
                      leaf neighbor-lls-option {
                        type uint32;
                        description
                          "This is a bitmask of Link Local signalling
    options received from the neighbor";
                      }
    
                      leaf oob-resynchronization {
                        type boolean;
                        description
                          "Out-Of-Bound resynchronization in progress";
                      }
    
                      leaf nsf-router-state {
                        type Nsf-rtr;
                        description
                          "For cisco NSF, the router is either Requester or
    Receiver";
                      }
    
                      leaf last-oob-time {
                        type uint32;
                        units "second";
                        description
                          "The amount of time in seconds since last time
    Out-Of-Band resynchronization was done with this
    neighbor";
                      }
    
                      leaf lfa-interface {
                        type xr:Interface-name;
                        description
                          "LFA Interface";
                      }
    
                      leaf lfa-next-hop {
                        type inet:ipv4-address;
                        description
                          "LFA Next Hop";
                      }
    
                      leaf lfa-neighbor-id {
                        type inet:ipv4-address;
                        description
                          "LFA Neighbor ID";
                      }
    
                      leaf lfa-neighbor-revision {
                        type uint32;
                        description
                          "LFA Neighbor Revision";
                      }
    
                      leaf neighbor-ack-list-count {
                        type uint32;
                        description
                          "Ack List Count";
                      }
    
                      leaf neighbor-ack-list-high-watermark {
                        type uint32;
                        description
                          "Ack List High Watermark";
                      }
    
                      leaf neighbor-interface-id {
                        type uint16;
                        description
                          "Interface ID of neighbor recived via LLS";
                      }
    
                      list adjacency-sid {
                        description
                          "List of SR Adjacency SIDs";
                        leaf adj-sid-label {
                          type uint32;
                          description
                            "Adjacency SID Label";
                        }
    
                        leaf protected-adj-sid {
                          type boolean;
                          description
                            "Adjacency SID Protection";
                        }
    
                        leaf adj-sid-has-backup {
                          type boolean;
                          description
                            "Adjacency SID has backup protection";
                        }
    
                        leaf configured-adj-sid {
                          type boolean;
                          description
                            "Configured Adjacency SID";
                        }
                      }  // list adjacency-sid
                    }  // list neighbor-detail
                  }  // container neighbor-details
                }  // container adjacency-information
    
                container route-information {
                  description
                    "Container for OSPF routing tables";
                  container backup-routes {
                    description
                      "OSPF Route Table Including Backup Paths";
                    list backup-route {
                      description
                        "OSPF route including backup paths";
                      leaf prefix {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 Prefix";
                      }
    
                      leaf prefix-length {
                        type Ospf-prefix-length;
                        description
                          "Length of the subnet prefix";
                      }
    
                      container route-info {
                        description
                          "Route information";
                        container route-update-time {
                          description
                            "Last time updated";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-update-time
    
                        container route-fail-time {
                          description
                            "Last time update failed";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-fail-time
    
                        leaf route-area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf route-te-metric {
                          type uint32;
                          description
                            "TE metric";
                        }
    
                        leaf route-rib-version {
                          type uint32;
                          description
                            "RIB version";
                        }
    
                        leaf route-spf-version {
                          type uint64;
                          description
                            "SPF version";
                        }
    
                        leaf route-forward-distance {
                          type uint32;
                          description
                            "Forward distance";
                        }
    
                        leaf route-source {
                          type uint16;
                          description
                            "Protocol source";
                        }
    
                        leaf route-spf-priority {
                          type uint8;
                          description
                            "SPF priority";
                        }
    
                        leaf route-auto-excluded {
                          type boolean;
                          description
                            "If true, exclude from TE paths";
                        }
    
                        leaf route-srte-prefix-registered {
                          type boolean;
                          description
                            "If true, SRTE registered prefix route";
                        }
    
                        leaf route-srte-nbr-registered {
                          type uint16;
                          description
                            "SRTE registered neigbhor count on route";
                        }
    
                        leaf route-label-type {
                          type uint8;
                          description
                            "Type of route label";
                        }
    
                        leaf route-label {
                          type uint32;
                          description
                            "The route SPF label";
                        }
    
                        leaf route-sspf-label {
                          type uint32;
                          description
                            "The route SSPF label";
                        }
                      }  // container route-info
    
                      leaf route-prefix {
                        type inet:ipv4-address;
                        description
                          "IPv4 Route Prefix";
                      }
    
                      leaf route-prefix-length {
                        type uint32;
                        description
                          "Prefix length";
                      }
    
                      leaf route-metric {
                        type uint32;
                        description "Metric";
                      }
    
                      leaf route-type {
                        type Ospf-route;
                        description
                          "OSPF route type, whether intra-area, inter-area
    or external route";
                      }
    
                      leaf route-connected {
                        type boolean;
                        description
                          "If true, connected route";
                      }
    
                      list route-path {
                        description
                          "List of paths to this route";
                        container route-backup-path {
                          description
                            "Backup Path Info";
                          leaf backup-route-interface-name {
                            type xr:Interface-name;
                            description
                              "Next hop Interface";
                          }
    
                          leaf backup-route-next-hop-address {
                            type inet:ipv4-address;
                            description
                              "Nexthop IP address";
                          }
    
                          leaf backup-route-source {
                            type inet:ipv4-address;
                            description
                              "IP address of source of route";
                          }
    
                          leaf backup-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf primary-path {
                            type boolean;
                            description
                              "Whether this is also a Primary Path";
                          }
    
                          leaf line-card-disjoint {
                            type boolean;
                            description
                              "Whether this is a Line Card Disjoint path";
                          }
    
                          leaf downstream {
                            type boolean;
                            description
                              "Whether this is a downstream path";
                          }
    
                          leaf node-protect {
                            type boolean;
                            description
                              "Whether this is a Node Protect path";
                          }
    
                          leaf srlg-disjoint {
                            type boolean;
                            description
                              "Whether this is a SRLG Disjoint path";
                          }
    
                          leaf weighted-srlg {
                            type boolean;
                            description
                              "Whether this is a Weighted SRLG path";
                          }
    
                          leaf lfa-type {
                            type Lfa;
                            description
                              "LFA type";
                          }
    
                          leaf backup-remote-lfa {
                            type inet:ipv4-address;
                            description
                              "IP address of remote LFA";
                          }
    
                          leaf backup-repair-list-size {
                            type uint32;
                            description
                              "Repair List Size";
                          }
    
                          leaf backup-tunnel-interface-name {
                            type xr:Interface-name;
                            description
                              "Backup Tunnel Interface";
                          }
    
                          leaf interface-disjoint {
                            type boolean;
                            description
                              "Whether this is a Interface Disjoint path";
                          }
    
                          list backup-repair {
                            max-elements 12;
                            description
                              "Backup Repair List";
                            leaf repair-element-id {
                              type inet:ipv4-address;
                              description
                                "ID of the Repair Element";
                            }
    
                            leaf repair-label {
                              type uint32;
                              description
                                "Label of Repair Element";
                            }
    
                            leaf repair-element-type {
                              type uint32;
                              description
                                "Type of the Repair Element";
                            }
                          }  // list backup-repair
                        }  // container route-backup-path
    
                        container sr-microloop-avoidance-path {
                          description
                            "SR Microloop avoidance Path Info";
                          leaf microloop-repair-list-size {
                            type uint32;
                            description
                              "Repair List Size for Microloop";
                          }
    
                          leaf microloop-tunnel-interface-name {
                            type xr:Interface-name;
                            description
                              "Tunnel Interface name for Microloop";
                          }
    
                          leaf microloop-strict-spf {
                            type boolean;
                            description
                              "Strict SPF SID for Microloop";
                          }
    
                          list microloop-repair {
                            max-elements 12;
                            description
                              "Repair List for Microloop";
                            leaf repair-element-id {
                              type inet:ipv4-address;
                              description
                                "ID of the Repair Element";
                            }
    
                            leaf repair-label {
                              type uint32;
                              description
                                "Label of Repair Element";
                            }
    
                            leaf repair-element-type {
                              type uint32;
                              description
                                "Type of the Repair Element";
                            }
                          }  // list microloop-repair
                        }  // container sr-microloop-avoidance-path
    
                        leaf route-interface-name {
                          type xr:Interface-name;
                          description
                            "Next hop Interface";
                        }
    
                        leaf route-interface-snmp-index {
                          type uint32;
                          description
                            "SNMP index of the Interface";
                        }
    
                        leaf route-next-hop-address {
                          type inet:ipv4-address;
                          description
                            "Nexthop IP address";
                        }
    
                        leaf route-source {
                          type inet:ipv4-address;
                          description
                            "IP address of source of route";
                        }
    
                        leaf route-lsaid {
                          type inet:ipv4-address;
                          description
                            "LSA ID, see RFC2328";
                        }
    
                        leaf route-path-is-mcast-intact {
                          type boolean;
                          description
                            "Multicast-intact path";
                        }
    
                        leaf route-path-is-ucmp-path {
                          type boolean;
                          description
                            "UCMP path";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf route-path-id {
                          type uint32;
                          description
                            "Path ID of path";
                        }
    
                        leaf lsa-type {
                          type uint8;
                          description
                            "LSA type, see RFC2328 etc.";
                        }
    
                        leaf area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf area-format {
                          type boolean;
                          description
                            "Area format IP or uint32";
                        }
    
                        leaf route-path-is-rsvp-te-path {
                          type boolean;
                          description
                            "RSVP-TE path";
                        }
    
                        leaf route-path-is-sr-te-path {
                          type boolean;
                          description
                            "SR-TE path";
                        }
    
                        leaf route-path-is-sr-excl-path {
                          type boolean;
                          description
                            "SR Excl TE path";
                        }
    
                        leaf route-path-is-sr-te-sspf-path {
                          type boolean;
                          description
                            "SR-TE SSPF path";
                        }
    
                        list neighbor-next-hop {
                          description
                            "NeighborNextHop";
                          leaf neighbor-next-hop-value-type {
                            type Ospf-sh-nnh-val-types;
                            description
                              "NeighborNextHopValueType";
                          }
    
                          leaf neighbor-next-hop-ip-addr {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                            }
                            type inet:ipv4-address;
                            description
                              "Neighbor NextHop IP Address";
                          }
    
                          leaf neighbor-next-hop-intf-index {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                            }
                            type uint32;
                            description
                              "Neighbor NextHop Interface Index";
                          }
                        }  // list neighbor-next-hop
                      }  // list route-path
                    }  // list backup-route
                  }  // container backup-routes
    
                  container multicast-intact-route-table {
                    description
                      "OSPF Route Table including multicast-intact
    routes";
                    list route {
                      description
                        "An OSPF route";
                      leaf prefix {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 Prefix";
                      }
    
                      leaf prefix-length {
                        type Ospf-prefix-length;
                        description
                          "Length of the subnet prefix";
                      }
    
                      container route-info {
                        description
                          "Route information";
                        container route-update-time {
                          description
                            "Last time updated";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-update-time
    
                        container route-fail-time {
                          description
                            "Last time update failed";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-fail-time
    
                        leaf route-area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf route-te-metric {
                          type uint32;
                          description
                            "TE metric";
                        }
    
                        leaf route-rib-version {
                          type uint32;
                          description
                            "RIB version";
                        }
    
                        leaf route-spf-version {
                          type uint64;
                          description
                            "SPF version";
                        }
    
                        leaf route-forward-distance {
                          type uint32;
                          description
                            "Forward distance";
                        }
    
                        leaf route-source {
                          type uint16;
                          description
                            "Protocol source";
                        }
    
                        leaf route-spf-priority {
                          type uint8;
                          description
                            "SPF priority";
                        }
    
                        leaf route-auto-excluded {
                          type boolean;
                          description
                            "If true, exclude from TE paths";
                        }
    
                        leaf route-srte-prefix-registered {
                          type boolean;
                          description
                            "If true, SRTE registered prefix route";
                        }
    
                        leaf route-srte-nbr-registered {
                          type uint16;
                          description
                            "SRTE registered neigbhor count on route";
                        }
    
                        leaf route-label-type {
                          type uint8;
                          description
                            "Type of route label";
                        }
    
                        leaf route-label {
                          type uint32;
                          description
                            "The route SPF label";
                        }
    
                        leaf route-sspf-label {
                          type uint32;
                          description
                            "The route SSPF label";
                        }
                      }  // container route-info
    
                      leaf route-prefix {
                        type inet:ipv4-address;
                        description
                          "IPv4 Route Prefix";
                      }
    
                      leaf route-prefix-length {
                        type uint32;
                        description
                          "Prefix length";
                      }
    
                      leaf route-metric {
                        type uint32;
                        description "Metric";
                      }
    
                      leaf route-type {
                        type Ospf-route;
                        description
                          "OSPF route type, whether intra-area, inter-area
    or external route";
                      }
    
                      leaf route-connected {
                        type boolean;
                        description
                          "If true, connected route";
                      }
    
                      list route-path {
                        description
                          "List of paths to this route";
                        container sr-microloop-avoidance-path {
                          description
                            "SR Microloop avoidance Path Info";
                          leaf microloop-repair-list-size {
                            type uint32;
                            description
                              "Repair List Size for Microloop";
                          }
    
                          leaf microloop-tunnel-interface-name {
                            type xr:Interface-name;
                            description
                              "Tunnel Interface name for Microloop";
                          }
    
                          leaf microloop-strict-spf {
                            type boolean;
                            description
                              "Strict SPF SID for Microloop";
                          }
    
                          list microloop-repair {
                            max-elements 12;
                            description
                              "Repair List for Microloop";
                            leaf repair-element-id {
                              type inet:ipv4-address;
                              description
                                "ID of the Repair Element";
                            }
    
                            leaf repair-label {
                              type uint32;
                              description
                                "Label of Repair Element";
                            }
    
                            leaf repair-element-type {
                              type uint32;
                              description
                                "Type of the Repair Element";
                            }
                          }  // list microloop-repair
                        }  // container sr-microloop-avoidance-path
    
                        leaf route-interface-name {
                          type xr:Interface-name;
                          description
                            "Next hop Interface";
                        }
    
                        leaf route-interface-snmp-index {
                          type uint32;
                          description
                            "SNMP index of th Interface";
                        }
    
                        leaf route-next-hop-address {
                          type inet:ipv4-address;
                          description
                            "Nexthop IP address";
                        }
    
                        leaf route-source {
                          type inet:ipv4-address;
                          description
                            "IP address of source of route";
                        }
    
                        leaf route-lsaid {
                          type inet:ipv4-address;
                          description
                            "LSA ID, see RFC2328";
                        }
    
                        leaf route-path-is-mcast-intact {
                          type boolean;
                          description
                            "Multicast-intact path";
                        }
    
                        leaf route-path-is-ucmp-path {
                          type boolean;
                          description
                            "UCMP path";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf lsa-type {
                          type uint8;
                          description
                            "LSA type, see RFC2328 etc.";
                        }
    
                        leaf area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf area-format {
                          type boolean;
                          description
                            "Area format IP or uint32";
                        }
    
                        leaf route-path-id {
                          type uint32;
                          description
                            "Path ID of path";
                        }
    
                        leaf route-path-is-rsvp-te-path {
                          type boolean;
                          description
                            "RSVP-TE path";
                        }
    
                        leaf route-path-is-sr-te-path {
                          type boolean;
                          description
                            "SR-TE path";
                        }
    
                        leaf route-path-is-sr-excl-path {
                          type boolean;
                          description
                            "SR Excl TE path";
                        }
    
                        leaf route-path-is-sr-te-sspf-path {
                          type boolean;
                          description
                            "SR-TE SSPF path";
                        }
    
                        leaf weight {
                          type uint32;
                          description
                            "Path Weight";
                        }
    
                        list neighbor-next-hop {
                          description
                            "NeighborNextHop";
                          leaf neighbor-next-hop-value-type {
                            type Ospf-sh-nnh-val-types;
                            description
                              "NeighborNextHopValueType";
                          }
    
                          leaf neighbor-next-hop-ip-addr {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                            }
                            type inet:ipv4-address;
                            description
                              "Neighbor NextHop IP Address";
                          }
    
                          leaf neighbor-next-hop-intf-index {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                            }
                            type uint32;
                            description
                              "Neighbor NextHop Interface Index";
                          }
                        }  // list neighbor-next-hop
                      }  // list route-path
                    }  // list route
                  }  // container multicast-intact-route-table
    
                  container multicast-intact-backup-routes {
                    description
                      "OSPF Route Table Including Multicast intact
    Backup Paths";
                    list multicast-intact-backup-route {
                      description
                        "OSPF route including multicast backup paths";
                      leaf prefix {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 Prefix";
                      }
    
                      leaf prefix-length {
                        type Ospf-prefix-length;
                        description
                          "Length of the subnet prefix";
                      }
    
                      container route-info {
                        description
                          "Route information";
                        container route-update-time {
                          description
                            "Last time updated";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-update-time
    
                        container route-fail-time {
                          description
                            "Last time update failed";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-fail-time
    
                        leaf route-area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf route-te-metric {
                          type uint32;
                          description
                            "TE metric";
                        }
    
                        leaf route-rib-version {
                          type uint32;
                          description
                            "RIB version";
                        }
    
                        leaf route-spf-version {
                          type uint64;
                          description
                            "SPF version";
                        }
    
                        leaf route-forward-distance {
                          type uint32;
                          description
                            "Forward distance";
                        }
    
                        leaf route-source {
                          type uint16;
                          description
                            "Protocol source";
                        }
    
                        leaf route-spf-priority {
                          type uint8;
                          description
                            "SPF priority";
                        }
    
                        leaf route-auto-excluded {
                          type boolean;
                          description
                            "If true, exclude from TE paths";
                        }
    
                        leaf route-srte-prefix-registered {
                          type boolean;
                          description
                            "If true, SRTE registered prefix route";
                        }
    
                        leaf route-srte-nbr-registered {
                          type uint16;
                          description
                            "SRTE registered neigbhor count on route";
                        }
    
                        leaf route-label-type {
                          type uint8;
                          description
                            "Type of route label";
                        }
    
                        leaf route-label {
                          type uint32;
                          description
                            "The route SPF label";
                        }
    
                        leaf route-sspf-label {
                          type uint32;
                          description
                            "The route SSPF label";
                        }
                      }  // container route-info
    
                      leaf route-prefix {
                        type inet:ipv4-address;
                        description
                          "IPv4 Route Prefix";
                      }
    
                      leaf route-prefix-length {
                        type uint32;
                        description
                          "Prefix length";
                      }
    
                      leaf route-metric {
                        type uint32;
                        description "Metric";
                      }
    
                      leaf route-type {
                        type Ospf-route;
                        description
                          "OSPF route type, whether intra-area, inter-area
    or external route";
                      }
    
                      leaf route-connected {
                        type boolean;
                        description
                          "If true, connected route";
                      }
    
                      list route-path {
                        description
                          "List of paths to this route";
                        container route-backup-path {
                          description
                            "Backup Path Info";
                          leaf backup-route-interface-name {
                            type xr:Interface-name;
                            description
                              "Next hop Interface";
                          }
    
                          leaf backup-route-next-hop-address {
                            type inet:ipv4-address;
                            description
                              "Nexthop IP address";
                          }
    
                          leaf backup-route-source {
                            type inet:ipv4-address;
                            description
                              "IP address of source of route";
                          }
    
                          leaf backup-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf primary-path {
                            type boolean;
                            description
                              "Whether this is also a Primary Path";
                          }
    
                          leaf line-card-disjoint {
                            type boolean;
                            description
                              "Whether this is a Line Card Disjoint path";
                          }
    
                          leaf downstream {
                            type boolean;
                            description
                              "Whether this is a downstream path";
                          }
    
                          leaf node-protect {
                            type boolean;
                            description
                              "Whether this is a Node Protect path";
                          }
    
                          leaf srlg-disjoint {
                            type boolean;
                            description
                              "Whether this is a SRLG Disjoint path";
                          }
    
                          leaf weighted-srlg {
                            type boolean;
                            description
                              "Whether this is a Weighted SRLG path";
                          }
    
                          leaf lfa-type {
                            type Lfa;
                            description
                              "LFA type";
                          }
    
                          leaf backup-remote-lfa {
                            type inet:ipv4-address;
                            description
                              "IP address of remote LFA";
                          }
    
                          leaf backup-repair-list-size {
                            type uint32;
                            description
                              "Repair List Size";
                          }
    
                          leaf backup-tunnel-interface-name {
                            type xr:Interface-name;
                            description
                              "Backup Tunnel Interface";
                          }
    
                          leaf interface-disjoint {
                            type boolean;
                            description
                              "Whether this is a Interface Disjoint path";
                          }
    
                          list backup-repair {
                            max-elements 12;
                            description
                              "Backup Repair List";
                            leaf repair-element-id {
                              type inet:ipv4-address;
                              description
                                "ID of the Repair Element";
                            }
    
                            leaf repair-label {
                              type uint32;
                              description
                                "Label of Repair Element";
                            }
    
                            leaf repair-element-type {
                              type uint32;
                              description
                                "Type of the Repair Element";
                            }
                          }  // list backup-repair
                        }  // container route-backup-path
    
                        container sr-microloop-avoidance-path {
                          description
                            "SR Microloop avoidance Path Info";
                          leaf microloop-repair-list-size {
                            type uint32;
                            description
                              "Repair List Size for Microloop";
                          }
    
                          leaf microloop-tunnel-interface-name {
                            type xr:Interface-name;
                            description
                              "Tunnel Interface name for Microloop";
                          }
    
                          leaf microloop-strict-spf {
                            type boolean;
                            description
                              "Strict SPF SID for Microloop";
                          }
    
                          list microloop-repair {
                            max-elements 12;
                            description
                              "Repair List for Microloop";
                            leaf repair-element-id {
                              type inet:ipv4-address;
                              description
                                "ID of the Repair Element";
                            }
    
                            leaf repair-label {
                              type uint32;
                              description
                                "Label of Repair Element";
                            }
    
                            leaf repair-element-type {
                              type uint32;
                              description
                                "Type of the Repair Element";
                            }
                          }  // list microloop-repair
                        }  // container sr-microloop-avoidance-path
    
                        leaf route-interface-name {
                          type xr:Interface-name;
                          description
                            "Next hop Interface";
                        }
    
                        leaf route-interface-snmp-index {
                          type uint32;
                          description
                            "SNMP index of the Interface";
                        }
    
                        leaf route-next-hop-address {
                          type inet:ipv4-address;
                          description
                            "Nexthop IP address";
                        }
    
                        leaf route-source {
                          type inet:ipv4-address;
                          description
                            "IP address of source of route";
                        }
    
                        leaf route-lsaid {
                          type inet:ipv4-address;
                          description
                            "LSA ID, see RFC2328";
                        }
    
                        leaf route-path-is-mcast-intact {
                          type boolean;
                          description
                            "Multicast-intact path";
                        }
    
                        leaf route-path-is-ucmp-path {
                          type boolean;
                          description
                            "UCMP path";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf route-path-id {
                          type uint32;
                          description
                            "Path ID of path";
                        }
    
                        leaf lsa-type {
                          type uint8;
                          description
                            "LSA type, see RFC2328 etc.";
                        }
    
                        leaf area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf area-format {
                          type boolean;
                          description
                            "Area format IP or uint32";
                        }
    
                        leaf route-path-is-rsvp-te-path {
                          type boolean;
                          description
                            "RSVP-TE path";
                        }
    
                        leaf route-path-is-sr-te-path {
                          type boolean;
                          description
                            "SR-TE path";
                        }
    
                        leaf route-path-is-sr-excl-path {
                          type boolean;
                          description
                            "SR Excl TE path";
                        }
    
                        leaf route-path-is-sr-te-sspf-path {
                          type boolean;
                          description
                            "SR-TE SSPF path";
                        }
    
                        list neighbor-next-hop {
                          description
                            "NeighborNextHop";
                          leaf neighbor-next-hop-value-type {
                            type Ospf-sh-nnh-val-types;
                            description
                              "NeighborNextHopValueType";
                          }
    
                          leaf neighbor-next-hop-ip-addr {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                            }
                            type inet:ipv4-address;
                            description
                              "Neighbor NextHop IP Address";
                          }
    
                          leaf neighbor-next-hop-intf-index {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                            }
                            type uint32;
                            description
                              "Neighbor NextHop Interface Index";
                          }
                        }  // list neighbor-next-hop
                      }  // list route-path
                    }  // list multicast-intact-backup-route
                  }  // container multicast-intact-backup-routes
    
                  container summary-information {
                    description
                      "OSPF route summary statistics";
                    container failure-time {
                      description
                        "Last time failed";
                      leaf second {
                        type uint32;
                        description "Second";
                      }
    
                      leaf nanosecond {
                        type uint32;
                        description "Nanosecond";
                      }
                    }  // container failure-time
    
                    container common {
                      description
                        "OSPF route summary Information";
                      leaf external-type1s {
                        type uint32;
                        description
                          "External type 1 count";
                      }
    
                      leaf external-type2s {
                        type uint32;
                        description
                          "External type 2 count";
                      }
    
                      leaf external-nssa-type1s {
                        type uint32;
                        description
                          "External NSSA type 1 count";
                      }
    
                      leaf external-nssa-type2s {
                        type uint32;
                        description
                          "External NSSA type 2 count";
                      }
    
                      leaf inter-areas {
                        type uint32;
                        description
                          "Inter-area count";
                      }
    
                      leaf intra-areas {
                        type uint32;
                        description
                          "Intra-area count";
                      }
    
                      leaf total {
                        type uint32;
                        description
                          "Total count";
                      }
                    }  // container common
    
                    leaf failures {
                      type uint32;
                      description
                        "RIB failure count";
                    }
    
                    leaf failure-address {
                      type inet:ipv4-address;
                      description
                        "Last failed address";
                    }
                  }  // container summary-information
    
                  container connected-routes {
                    description
                      "OSPF Connected Route Table";
                    list connected-route {
                      description
                        "This is a Connected route";
                      leaf prefix {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 Prefix";
                      }
    
                      leaf prefix-length {
                        type Ospf-prefix-length;
                        description
                          "Length of the subnet prefix";
                      }
    
                      container route-info {
                        description
                          "Route information";
                        container route-update-time {
                          description
                            "Last time updated";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-update-time
    
                        container route-fail-time {
                          description
                            "Last time update failed";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-fail-time
    
                        leaf route-area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf route-te-metric {
                          type uint32;
                          description
                            "TE metric";
                        }
    
                        leaf route-rib-version {
                          type uint32;
                          description
                            "RIB version";
                        }
    
                        leaf route-spf-version {
                          type uint64;
                          description
                            "SPF version";
                        }
    
                        leaf route-forward-distance {
                          type uint32;
                          description
                            "Forward distance";
                        }
    
                        leaf route-source {
                          type uint16;
                          description
                            "Protocol source";
                        }
    
                        leaf route-spf-priority {
                          type uint8;
                          description
                            "SPF priority";
                        }
    
                        leaf route-auto-excluded {
                          type boolean;
                          description
                            "If true, exclude from TE paths";
                        }
    
                        leaf route-srte-prefix-registered {
                          type boolean;
                          description
                            "If true, SRTE registered prefix route";
                        }
    
                        leaf route-srte-nbr-registered {
                          type uint16;
                          description
                            "SRTE registered neigbhor count on route";
                        }
    
                        leaf route-label-type {
                          type uint8;
                          description
                            "Type of route label";
                        }
    
                        leaf route-label {
                          type uint32;
                          description
                            "The route SPF label";
                        }
    
                        leaf route-sspf-label {
                          type uint32;
                          description
                            "The route SSPF label";
                        }
                      }  // container route-info
    
                      leaf route-prefix {
                        type inet:ipv4-address;
                        description
                          "IPv4 Route Prefix";
                      }
    
                      leaf route-prefix-length {
                        type uint32;
                        description
                          "Prefix length";
                      }
    
                      leaf route-metric {
                        type uint32;
                        description "Metric";
                      }
    
                      leaf route-type {
                        type Ospf-route;
                        description
                          "OSPF route type, whether intra-area, inter-area
    or external route";
                      }
    
                      leaf route-connected {
                        type boolean;
                        description
                          "If true, connected route";
                      }
    
                      list route-path {
                        description
                          "List of paths to this route";
                        container sr-microloop-avoidance-path {
                          description
                            "SR Microloop avoidance Path Info";
                          leaf microloop-repair-list-size {
                            type uint32;
                            description
                              "Repair List Size for Microloop";
                          }
    
                          leaf microloop-tunnel-interface-name {
                            type xr:Interface-name;
                            description
                              "Tunnel Interface name for Microloop";
                          }
    
                          leaf microloop-strict-spf {
                            type boolean;
                            description
                              "Strict SPF SID for Microloop";
                          }
    
                          list microloop-repair {
                            max-elements 12;
                            description
                              "Repair List for Microloop";
                            leaf repair-element-id {
                              type inet:ipv4-address;
                              description
                                "ID of the Repair Element";
                            }
    
                            leaf repair-label {
                              type uint32;
                              description
                                "Label of Repair Element";
                            }
    
                            leaf repair-element-type {
                              type uint32;
                              description
                                "Type of the Repair Element";
                            }
                          }  // list microloop-repair
                        }  // container sr-microloop-avoidance-path
    
                        leaf route-interface-name {
                          type xr:Interface-name;
                          description
                            "Next hop Interface";
                        }
    
                        leaf route-interface-snmp-index {
                          type uint32;
                          description
                            "SNMP index of th Interface";
                        }
    
                        leaf route-next-hop-address {
                          type inet:ipv4-address;
                          description
                            "Nexthop IP address";
                        }
    
                        leaf route-source {
                          type inet:ipv4-address;
                          description
                            "IP address of source of route";
                        }
    
                        leaf route-lsaid {
                          type inet:ipv4-address;
                          description
                            "LSA ID, see RFC2328";
                        }
    
                        leaf route-path-is-mcast-intact {
                          type boolean;
                          description
                            "Multicast-intact path";
                        }
    
                        leaf route-path-is-ucmp-path {
                          type boolean;
                          description
                            "UCMP path";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf lsa-type {
                          type uint8;
                          description
                            "LSA type, see RFC2328 etc.";
                        }
    
                        leaf area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf area-format {
                          type boolean;
                          description
                            "Area format IP or uint32";
                        }
    
                        leaf route-path-id {
                          type uint32;
                          description
                            "Path ID of path";
                        }
    
                        leaf route-path-is-rsvp-te-path {
                          type boolean;
                          description
                            "RSVP-TE path";
                        }
    
                        leaf route-path-is-sr-te-path {
                          type boolean;
                          description
                            "SR-TE path";
                        }
    
                        leaf route-path-is-sr-excl-path {
                          type boolean;
                          description
                            "SR Excl TE path";
                        }
    
                        leaf route-path-is-sr-te-sspf-path {
                          type boolean;
                          description
                            "SR-TE SSPF path";
                        }
    
                        leaf weight {
                          type uint32;
                          description
                            "Path Weight";
                        }
    
                        list neighbor-next-hop {
                          description
                            "NeighborNextHop";
                          leaf neighbor-next-hop-value-type {
                            type Ospf-sh-nnh-val-types;
                            description
                              "NeighborNextHopValueType";
                          }
    
                          leaf neighbor-next-hop-ip-addr {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                            }
                            type inet:ipv4-address;
                            description
                              "Neighbor NextHop IP Address";
                          }
    
                          leaf neighbor-next-hop-intf-index {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                            }
                            type uint32;
                            description
                              "Neighbor NextHop Interface Index";
                          }
                        }  // list neighbor-next-hop
                      }  // list route-path
                    }  // list connected-route
                  }  // container connected-routes
    
                  container local-routes {
                    description
                      "OSPF Local Route Table";
                    list local-route {
                      description
                        "This is a Local route";
                      leaf prefix {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 Prefix";
                      }
    
                      leaf prefix-length {
                        type Ospf-prefix-length;
                        description
                          "Length of the subnet prefix";
                      }
    
                      container route-info {
                        description
                          "Route information";
                        container route-update-time {
                          description
                            "Last time updated";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-update-time
    
                        container route-fail-time {
                          description
                            "Last time update failed";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-fail-time
    
                        leaf route-area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf route-te-metric {
                          type uint32;
                          description
                            "TE metric";
                        }
    
                        leaf route-rib-version {
                          type uint32;
                          description
                            "RIB version";
                        }
    
                        leaf route-spf-version {
                          type uint64;
                          description
                            "SPF version";
                        }
    
                        leaf route-forward-distance {
                          type uint32;
                          description
                            "Forward distance";
                        }
    
                        leaf route-source {
                          type uint16;
                          description
                            "Protocol source";
                        }
    
                        leaf route-spf-priority {
                          type uint8;
                          description
                            "SPF priority";
                        }
    
                        leaf route-auto-excluded {
                          type boolean;
                          description
                            "If true, exclude from TE paths";
                        }
    
                        leaf route-srte-prefix-registered {
                          type boolean;
                          description
                            "If true, SRTE registered prefix route";
                        }
    
                        leaf route-srte-nbr-registered {
                          type uint16;
                          description
                            "SRTE registered neigbhor count on route";
                        }
    
                        leaf route-label-type {
                          type uint8;
                          description
                            "Type of route label";
                        }
    
                        leaf route-label {
                          type uint32;
                          description
                            "The route SPF label";
                        }
    
                        leaf route-sspf-label {
                          type uint32;
                          description
                            "The route SSPF label";
                        }
                      }  // container route-info
    
                      leaf route-prefix {
                        type inet:ipv4-address;
                        description
                          "IPv4 Route Prefix";
                      }
    
                      leaf route-prefix-length {
                        type uint32;
                        description
                          "Prefix length";
                      }
    
                      leaf route-metric {
                        type uint32;
                        description "Metric";
                      }
    
                      leaf route-type {
                        type Ospf-route;
                        description
                          "OSPF route type, whether intra-area, inter-area
    or external route";
                      }
    
                      leaf route-connected {
                        type boolean;
                        description
                          "If true, connected route";
                      }
    
                      list route-path {
                        description
                          "List of paths to this route";
                        container sr-microloop-avoidance-path {
                          description
                            "SR Microloop avoidance Path Info";
                          leaf microloop-repair-list-size {
                            type uint32;
                            description
                              "Repair List Size for Microloop";
                          }
    
                          leaf microloop-tunnel-interface-name {
                            type xr:Interface-name;
                            description
                              "Tunnel Interface name for Microloop";
                          }
    
                          leaf microloop-strict-spf {
                            type boolean;
                            description
                              "Strict SPF SID for Microloop";
                          }
    
                          list microloop-repair {
                            max-elements 12;
                            description
                              "Repair List for Microloop";
                            leaf repair-element-id {
                              type inet:ipv4-address;
                              description
                                "ID of the Repair Element";
                            }
    
                            leaf repair-label {
                              type uint32;
                              description
                                "Label of Repair Element";
                            }
    
                            leaf repair-element-type {
                              type uint32;
                              description
                                "Type of the Repair Element";
                            }
                          }  // list microloop-repair
                        }  // container sr-microloop-avoidance-path
    
                        leaf route-interface-name {
                          type xr:Interface-name;
                          description
                            "Next hop Interface";
                        }
    
                        leaf route-interface-snmp-index {
                          type uint32;
                          description
                            "SNMP index of th Interface";
                        }
    
                        leaf route-next-hop-address {
                          type inet:ipv4-address;
                          description
                            "Nexthop IP address";
                        }
    
                        leaf route-source {
                          type inet:ipv4-address;
                          description
                            "IP address of source of route";
                        }
    
                        leaf route-lsaid {
                          type inet:ipv4-address;
                          description
                            "LSA ID, see RFC2328";
                        }
    
                        leaf route-path-is-mcast-intact {
                          type boolean;
                          description
                            "Multicast-intact path";
                        }
    
                        leaf route-path-is-ucmp-path {
                          type boolean;
                          description
                            "UCMP path";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf lsa-type {
                          type uint8;
                          description
                            "LSA type, see RFC2328 etc.";
                        }
    
                        leaf area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf area-format {
                          type boolean;
                          description
                            "Area format IP or uint32";
                        }
    
                        leaf route-path-id {
                          type uint32;
                          description
                            "Path ID of path";
                        }
    
                        leaf route-path-is-rsvp-te-path {
                          type boolean;
                          description
                            "RSVP-TE path";
                        }
    
                        leaf route-path-is-sr-te-path {
                          type boolean;
                          description
                            "SR-TE path";
                        }
    
                        leaf route-path-is-sr-excl-path {
                          type boolean;
                          description
                            "SR Excl TE path";
                        }
    
                        leaf route-path-is-sr-te-sspf-path {
                          type boolean;
                          description
                            "SR-TE SSPF path";
                        }
    
                        leaf weight {
                          type uint32;
                          description
                            "Path Weight";
                        }
    
                        list neighbor-next-hop {
                          description
                            "NeighborNextHop";
                          leaf neighbor-next-hop-value-type {
                            type Ospf-sh-nnh-val-types;
                            description
                              "NeighborNextHopValueType";
                          }
    
                          leaf neighbor-next-hop-ip-addr {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                            }
                            type inet:ipv4-address;
                            description
                              "Neighbor NextHop IP Address";
                          }
    
                          leaf neighbor-next-hop-intf-index {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                            }
                            type uint32;
                            description
                              "Neighbor NextHop Interface Index";
                          }
                        }  // list neighbor-next-hop
                      }  // list route-path
                    }  // list local-route
                  }  // container local-routes
    
                  container route-areas {
                    description
                      "OSPF Area Route Table";
                    list route-area {
                      key "area-id";
                      description
                        "OSPF Area Route";
                      container multicast-intact-backup-route-areas {
                        description
                          "OSPF Route Table Including Multicast Intace
    Backup Paths in an area";
                        list multicast-intact-backup-route-area {
                          description
                            "OSPF route including Multicast intact backup
    paths";
                          leaf prefix {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 Prefix";
                          }
    
                          leaf prefix-length {
                            type Ospf-prefix-length;
                            description
                              "Length of the subnet prefix";
                          }
    
                          container route-info {
                            description
                              "Route information";
                            container route-update-time {
                              description
                                "Last time updated";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-update-time
    
                            container route-fail-time {
                              description
                                "Last time update failed";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-fail-time
    
                            leaf route-area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf route-te-metric {
                              type uint32;
                              description
                                "TE metric";
                            }
    
                            leaf route-rib-version {
                              type uint32;
                              description
                                "RIB version";
                            }
    
                            leaf route-spf-version {
                              type uint64;
                              description
                                "SPF version";
                            }
    
                            leaf route-forward-distance {
                              type uint32;
                              description
                                "Forward distance";
                            }
    
                            leaf route-source {
                              type uint16;
                              description
                                "Protocol source";
                            }
    
                            leaf route-spf-priority {
                              type uint8;
                              description
                                "SPF priority";
                            }
    
                            leaf route-auto-excluded {
                              type boolean;
                              description
                                "If true, exclude from TE paths";
                            }
    
                            leaf route-srte-prefix-registered {
                              type boolean;
                              description
                                "If true, SRTE registered prefix route";
                            }
    
                            leaf route-srte-nbr-registered {
                              type uint16;
                              description
                                "SRTE registered neigbhor count on route";
                            }
    
                            leaf route-label-type {
                              type uint8;
                              description
                                "Type of route label";
                            }
    
                            leaf route-label {
                              type uint32;
                              description
                                "The route SPF label";
                            }
    
                            leaf route-sspf-label {
                              type uint32;
                              description
                                "The route SSPF label";
                            }
                          }  // container route-info
    
                          leaf route-prefix {
                            type inet:ipv4-address;
                            description
                              "IPv4 Route Prefix";
                          }
    
                          leaf route-prefix-length {
                            type uint32;
                            description
                              "Prefix length";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf route-type {
                            type Ospf-route;
                            description
                              "OSPF route type, whether intra-area, inter-area
    or external route";
                          }
    
                          leaf route-connected {
                            type boolean;
                            description
                              "If true, connected route";
                          }
    
                          list route-path {
                            description
                              "List of paths to this route";
                            container route-backup-path {
                              description
                                "Backup Path Info";
                              leaf backup-route-interface-name {
                                type xr:Interface-name;
                                description
                                  "Next hop Interface";
                              }
    
                              leaf backup-route-next-hop-address {
                                type inet:ipv4-address;
                                description
                                  "Nexthop IP address";
                              }
    
                              leaf backup-route-source {
                                type inet:ipv4-address;
                                description
                                  "IP address of source of route";
                              }
    
                              leaf backup-metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              leaf primary-path {
                                type boolean;
                                description
                                  "Whether this is also a Primary Path";
                              }
    
                              leaf line-card-disjoint {
                                type boolean;
                                description
                                  "Whether this is a Line Card Disjoint path";
                              }
    
                              leaf downstream {
                                type boolean;
                                description
                                  "Whether this is a downstream path";
                              }
    
                              leaf node-protect {
                                type boolean;
                                description
                                  "Whether this is a Node Protect path";
                              }
    
                              leaf srlg-disjoint {
                                type boolean;
                                description
                                  "Whether this is a SRLG Disjoint path";
                              }
    
                              leaf weighted-srlg {
                                type boolean;
                                description
                                  "Whether this is a Weighted SRLG path";
                              }
    
                              leaf lfa-type {
                                type Lfa;
                                description
                                  "LFA type";
                              }
    
                              leaf backup-remote-lfa {
                                type inet:ipv4-address;
                                description
                                  "IP address of remote LFA";
                              }
    
                              leaf backup-repair-list-size {
                                type uint32;
                                description
                                  "Repair List Size";
                              }
    
                              leaf backup-tunnel-interface-name {
                                type xr:Interface-name;
                                description
                                  "Backup Tunnel Interface";
                              }
    
                              leaf interface-disjoint {
                                type boolean;
                                description
                                  "Whether this is a Interface Disjoint path";
                              }
    
                              list backup-repair {
                                max-elements
                                  12;
                                description
                                  "Backup Repair List";
                                leaf repair-element-id {
                                  type inet:ipv4-address;
                                  description
                                    "ID of the Repair Element";
                                }
    
                                leaf repair-label {
                                  type uint32;
                                  description
                                    "Label of Repair Element";
                                }
    
                                leaf repair-element-type {
                                  type uint32;
                                  description
                                    "Type of the Repair Element";
                                }
                              }  // list backup-repair
                            }  // container route-backup-path
    
                            container sr-microloop-avoidance-path {
                              description
                                "SR Microloop avoidance Path Info";
                              leaf microloop-repair-list-size {
                                type uint32;
                                description
                                  "Repair List Size for Microloop";
                              }
    
                              leaf microloop-tunnel-interface-name {
                                type xr:Interface-name;
                                description
                                  "Tunnel Interface name for Microloop";
                              }
    
                              leaf microloop-strict-spf {
                                type boolean;
                                description
                                  "Strict SPF SID for Microloop";
                              }
    
                              list microloop-repair {
                                max-elements
                                  12;
                                description
                                  "Repair List for Microloop";
                                leaf repair-element-id {
                                  type inet:ipv4-address;
                                  description
                                    "ID of the Repair Element";
                                }
    
                                leaf repair-label {
                                  type uint32;
                                  description
                                    "Label of Repair Element";
                                }
    
                                leaf repair-element-type {
                                  type uint32;
                                  description
                                    "Type of the Repair Element";
                                }
                              }  // list microloop-repair
                            }  // container sr-microloop-avoidance-path
    
                            leaf route-interface-name {
                              type xr:Interface-name;
                              description
                                "Next hop Interface";
                            }
    
                            leaf route-interface-snmp-index {
                              type uint32;
                              description
                                "SNMP index of the Interface";
                            }
    
                            leaf route-next-hop-address {
                              type inet:ipv4-address;
                              description
                                "Nexthop IP address";
                            }
    
                            leaf route-source {
                              type inet:ipv4-address;
                              description
                                "IP address of source of route";
                            }
    
                            leaf route-lsaid {
                              type inet:ipv4-address;
                              description
                                "LSA ID, see RFC2328";
                            }
    
                            leaf route-path-is-mcast-intact {
                              type boolean;
                              description
                                "Multicast-intact path";
                            }
    
                            leaf route-path-is-ucmp-path {
                              type boolean;
                              description
                                "UCMP path";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf route-path-id {
                              type uint32;
                              description
                                "Path ID of path";
                            }
    
                            leaf lsa-type {
                              type uint8;
                              description
                                "LSA type, see RFC2328 etc.";
                            }
    
                            leaf area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf area-format {
                              type boolean;
                              description
                                "Area format IP or uint32";
                            }
    
                            leaf route-path-is-rsvp-te-path {
                              type boolean;
                              description
                                "RSVP-TE path";
                            }
    
                            leaf route-path-is-sr-te-path {
                              type boolean;
                              description
                                "SR-TE path";
                            }
    
                            leaf route-path-is-sr-excl-path {
                              type boolean;
                              description
                                "SR Excl TE path";
                            }
    
                            leaf route-path-is-sr-te-sspf-path {
                              type boolean;
                              description
                                "SR-TE SSPF path";
                            }
    
                            list neighbor-next-hop {
                              description
                                "NeighborNextHop";
                              leaf neighbor-next-hop-value-type {
                                type Ospf-sh-nnh-val-types;
                                description
                                  "NeighborNextHopValueType";
                              }
    
                              leaf neighbor-next-hop-ip-addr {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                }
                                type inet:ipv4-address;
                                description
                                  "Neighbor NextHop IP Address";
                              }
    
                              leaf neighbor-next-hop-intf-index {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                }
                                type uint32;
                                description
                                  "Neighbor NextHop Interface Index";
                              }
                            }  // list neighbor-next-hop
                          }  // list route-path
                        }  // list multicast-intact-backup-route-area
                      }  // container multicast-intact-backup-route-areas
    
                      container connected-route-areas {
                        description
                          "OSPF Connected Route Table in an area";
                        list connected-route-area {
                          description
                            "Connected route";
                          leaf prefix {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 Prefix";
                          }
    
                          leaf prefix-length {
                            type Ospf-prefix-length;
                            description
                              "Length of the subnet prefix";
                          }
    
                          container route-info {
                            description
                              "Route information";
                            container route-update-time {
                              description
                                "Last time updated";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-update-time
    
                            container route-fail-time {
                              description
                                "Last time update failed";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-fail-time
    
                            leaf route-area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf route-te-metric {
                              type uint32;
                              description
                                "TE metric";
                            }
    
                            leaf route-rib-version {
                              type uint32;
                              description
                                "RIB version";
                            }
    
                            leaf route-spf-version {
                              type uint64;
                              description
                                "SPF version";
                            }
    
                            leaf route-forward-distance {
                              type uint32;
                              description
                                "Forward distance";
                            }
    
                            leaf route-source {
                              type uint16;
                              description
                                "Protocol source";
                            }
    
                            leaf route-spf-priority {
                              type uint8;
                              description
                                "SPF priority";
                            }
    
                            leaf route-auto-excluded {
                              type boolean;
                              description
                                "If true, exclude from TE paths";
                            }
    
                            leaf route-srte-prefix-registered {
                              type boolean;
                              description
                                "If true, SRTE registered prefix route";
                            }
    
                            leaf route-srte-nbr-registered {
                              type uint16;
                              description
                                "SRTE registered neigbhor count on route";
                            }
    
                            leaf route-label-type {
                              type uint8;
                              description
                                "Type of route label";
                            }
    
                            leaf route-label {
                              type uint32;
                              description
                                "The route SPF label";
                            }
    
                            leaf route-sspf-label {
                              type uint32;
                              description
                                "The route SSPF label";
                            }
                          }  // container route-info
    
                          leaf route-prefix {
                            type inet:ipv4-address;
                            description
                              "IPv4 Route Prefix";
                          }
    
                          leaf route-prefix-length {
                            type uint32;
                            description
                              "Prefix length";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf route-type {
                            type Ospf-route;
                            description
                              "OSPF route type, whether intra-area, inter-area
    or external route";
                          }
    
                          leaf route-connected {
                            type boolean;
                            description
                              "If true, connected route";
                          }
    
                          list route-path {
                            description
                              "List of paths to this route";
                            container sr-microloop-avoidance-path {
                              description
                                "SR Microloop avoidance Path Info";
                              leaf microloop-repair-list-size {
                                type uint32;
                                description
                                  "Repair List Size for Microloop";
                              }
    
                              leaf microloop-tunnel-interface-name {
                                type xr:Interface-name;
                                description
                                  "Tunnel Interface name for Microloop";
                              }
    
                              leaf microloop-strict-spf {
                                type boolean;
                                description
                                  "Strict SPF SID for Microloop";
                              }
    
                              list microloop-repair {
                                max-elements
                                  12;
                                description
                                  "Repair List for Microloop";
                                leaf repair-element-id {
                                  type inet:ipv4-address;
                                  description
                                    "ID of the Repair Element";
                                }
    
                                leaf repair-label {
                                  type uint32;
                                  description
                                    "Label of Repair Element";
                                }
    
                                leaf repair-element-type {
                                  type uint32;
                                  description
                                    "Type of the Repair Element";
                                }
                              }  // list microloop-repair
                            }  // container sr-microloop-avoidance-path
    
                            leaf route-interface-name {
                              type xr:Interface-name;
                              description
                                "Next hop Interface";
                            }
    
                            leaf route-interface-snmp-index {
                              type uint32;
                              description
                                "SNMP index of th Interface";
                            }
    
                            leaf route-next-hop-address {
                              type inet:ipv4-address;
                              description
                                "Nexthop IP address";
                            }
    
                            leaf route-source {
                              type inet:ipv4-address;
                              description
                                "IP address of source of route";
                            }
    
                            leaf route-lsaid {
                              type inet:ipv4-address;
                              description
                                "LSA ID, see RFC2328";
                            }
    
                            leaf route-path-is-mcast-intact {
                              type boolean;
                              description
                                "Multicast-intact path";
                            }
    
                            leaf route-path-is-ucmp-path {
                              type boolean;
                              description
                                "UCMP path";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf lsa-type {
                              type uint8;
                              description
                                "LSA type, see RFC2328 etc.";
                            }
    
                            leaf area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf area-format {
                              type boolean;
                              description
                                "Area format IP or uint32";
                            }
    
                            leaf route-path-id {
                              type uint32;
                              description
                                "Path ID of path";
                            }
    
                            leaf route-path-is-rsvp-te-path {
                              type boolean;
                              description
                                "RSVP-TE path";
                            }
    
                            leaf route-path-is-sr-te-path {
                              type boolean;
                              description
                                "SR-TE path";
                            }
    
                            leaf route-path-is-sr-excl-path {
                              type boolean;
                              description
                                "SR Excl TE path";
                            }
    
                            leaf route-path-is-sr-te-sspf-path {
                              type boolean;
                              description
                                "SR-TE SSPF path";
                            }
    
                            leaf weight {
                              type uint32;
                              description
                                "Path Weight";
                            }
    
                            list neighbor-next-hop {
                              description
                                "NeighborNextHop";
                              leaf neighbor-next-hop-value-type {
                                type Ospf-sh-nnh-val-types;
                                description
                                  "NeighborNextHopValueType";
                              }
    
                              leaf neighbor-next-hop-ip-addr {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                }
                                type inet:ipv4-address;
                                description
                                  "Neighbor NextHop IP Address";
                              }
    
                              leaf neighbor-next-hop-intf-index {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                }
                                type uint32;
                                description
                                  "Neighbor NextHop Interface Index";
                              }
                            }  // list neighbor-next-hop
                          }  // list route-path
                        }  // list connected-route-area
                      }  // container connected-route-areas
    
                      container backup-route-areas {
                        description
                          "OSPF Route Table Including Backup Paths in an
    area";
                        list backup-route-area {
                          description
                            "OSPF route including backup paths";
                          leaf prefix {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 Prefix";
                          }
    
                          leaf prefix-length {
                            type Ospf-prefix-length;
                            description
                              "Length of the subnet prefix";
                          }
    
                          container route-info {
                            description
                              "Route information";
                            container route-update-time {
                              description
                                "Last time updated";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-update-time
    
                            container route-fail-time {
                              description
                                "Last time update failed";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-fail-time
    
                            leaf route-area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf route-te-metric {
                              type uint32;
                              description
                                "TE metric";
                            }
    
                            leaf route-rib-version {
                              type uint32;
                              description
                                "RIB version";
                            }
    
                            leaf route-spf-version {
                              type uint64;
                              description
                                "SPF version";
                            }
    
                            leaf route-forward-distance {
                              type uint32;
                              description
                                "Forward distance";
                            }
    
                            leaf route-source {
                              type uint16;
                              description
                                "Protocol source";
                            }
    
                            leaf route-spf-priority {
                              type uint8;
                              description
                                "SPF priority";
                            }
    
                            leaf route-auto-excluded {
                              type boolean;
                              description
                                "If true, exclude from TE paths";
                            }
    
                            leaf route-srte-prefix-registered {
                              type boolean;
                              description
                                "If true, SRTE registered prefix route";
                            }
    
                            leaf route-srte-nbr-registered {
                              type uint16;
                              description
                                "SRTE registered neigbhor count on route";
                            }
    
                            leaf route-label-type {
                              type uint8;
                              description
                                "Type of route label";
                            }
    
                            leaf route-label {
                              type uint32;
                              description
                                "The route SPF label";
                            }
    
                            leaf route-sspf-label {
                              type uint32;
                              description
                                "The route SSPF label";
                            }
                          }  // container route-info
    
                          leaf route-prefix {
                            type inet:ipv4-address;
                            description
                              "IPv4 Route Prefix";
                          }
    
                          leaf route-prefix-length {
                            type uint32;
                            description
                              "Prefix length";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf route-type {
                            type Ospf-route;
                            description
                              "OSPF route type, whether intra-area, inter-area
    or external route";
                          }
    
                          leaf route-connected {
                            type boolean;
                            description
                              "If true, connected route";
                          }
    
                          list route-path {
                            description
                              "List of paths to this route";
                            container route-backup-path {
                              description
                                "Backup Path Info";
                              leaf backup-route-interface-name {
                                type xr:Interface-name;
                                description
                                  "Next hop Interface";
                              }
    
                              leaf backup-route-next-hop-address {
                                type inet:ipv4-address;
                                description
                                  "Nexthop IP address";
                              }
    
                              leaf backup-route-source {
                                type inet:ipv4-address;
                                description
                                  "IP address of source of route";
                              }
    
                              leaf backup-metric {
                                type uint32;
                                description
                                  "Metric";
                              }
    
                              leaf primary-path {
                                type boolean;
                                description
                                  "Whether this is also a Primary Path";
                              }
    
                              leaf line-card-disjoint {
                                type boolean;
                                description
                                  "Whether this is a Line Card Disjoint path";
                              }
    
                              leaf downstream {
                                type boolean;
                                description
                                  "Whether this is a downstream path";
                              }
    
                              leaf node-protect {
                                type boolean;
                                description
                                  "Whether this is a Node Protect path";
                              }
    
                              leaf srlg-disjoint {
                                type boolean;
                                description
                                  "Whether this is a SRLG Disjoint path";
                              }
    
                              leaf weighted-srlg {
                                type boolean;
                                description
                                  "Whether this is a Weighted SRLG path";
                              }
    
                              leaf lfa-type {
                                type Lfa;
                                description
                                  "LFA type";
                              }
    
                              leaf backup-remote-lfa {
                                type inet:ipv4-address;
                                description
                                  "IP address of remote LFA";
                              }
    
                              leaf backup-repair-list-size {
                                type uint32;
                                description
                                  "Repair List Size";
                              }
    
                              leaf backup-tunnel-interface-name {
                                type xr:Interface-name;
                                description
                                  "Backup Tunnel Interface";
                              }
    
                              leaf interface-disjoint {
                                type boolean;
                                description
                                  "Whether this is a Interface Disjoint path";
                              }
    
                              list backup-repair {
                                max-elements
                                  12;
                                description
                                  "Backup Repair List";
                                leaf repair-element-id {
                                  type inet:ipv4-address;
                                  description
                                    "ID of the Repair Element";
                                }
    
                                leaf repair-label {
                                  type uint32;
                                  description
                                    "Label of Repair Element";
                                }
    
                                leaf repair-element-type {
                                  type uint32;
                                  description
                                    "Type of the Repair Element";
                                }
                              }  // list backup-repair
                            }  // container route-backup-path
    
                            container sr-microloop-avoidance-path {
                              description
                                "SR Microloop avoidance Path Info";
                              leaf microloop-repair-list-size {
                                type uint32;
                                description
                                  "Repair List Size for Microloop";
                              }
    
                              leaf microloop-tunnel-interface-name {
                                type xr:Interface-name;
                                description
                                  "Tunnel Interface name for Microloop";
                              }
    
                              leaf microloop-strict-spf {
                                type boolean;
                                description
                                  "Strict SPF SID for Microloop";
                              }
    
                              list microloop-repair {
                                max-elements
                                  12;
                                description
                                  "Repair List for Microloop";
                                leaf repair-element-id {
                                  type inet:ipv4-address;
                                  description
                                    "ID of the Repair Element";
                                }
    
                                leaf repair-label {
                                  type uint32;
                                  description
                                    "Label of Repair Element";
                                }
    
                                leaf repair-element-type {
                                  type uint32;
                                  description
                                    "Type of the Repair Element";
                                }
                              }  // list microloop-repair
                            }  // container sr-microloop-avoidance-path
    
                            leaf route-interface-name {
                              type xr:Interface-name;
                              description
                                "Next hop Interface";
                            }
    
                            leaf route-interface-snmp-index {
                              type uint32;
                              description
                                "SNMP index of the Interface";
                            }
    
                            leaf route-next-hop-address {
                              type inet:ipv4-address;
                              description
                                "Nexthop IP address";
                            }
    
                            leaf route-source {
                              type inet:ipv4-address;
                              description
                                "IP address of source of route";
                            }
    
                            leaf route-lsaid {
                              type inet:ipv4-address;
                              description
                                "LSA ID, see RFC2328";
                            }
    
                            leaf route-path-is-mcast-intact {
                              type boolean;
                              description
                                "Multicast-intact path";
                            }
    
                            leaf route-path-is-ucmp-path {
                              type boolean;
                              description
                                "UCMP path";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf route-path-id {
                              type uint32;
                              description
                                "Path ID of path";
                            }
    
                            leaf lsa-type {
                              type uint8;
                              description
                                "LSA type, see RFC2328 etc.";
                            }
    
                            leaf area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf area-format {
                              type boolean;
                              description
                                "Area format IP or uint32";
                            }
    
                            leaf route-path-is-rsvp-te-path {
                              type boolean;
                              description
                                "RSVP-TE path";
                            }
    
                            leaf route-path-is-sr-te-path {
                              type boolean;
                              description
                                "SR-TE path";
                            }
    
                            leaf route-path-is-sr-excl-path {
                              type boolean;
                              description
                                "SR Excl TE path";
                            }
    
                            leaf route-path-is-sr-te-sspf-path {
                              type boolean;
                              description
                                "SR-TE SSPF path";
                            }
    
                            list neighbor-next-hop {
                              description
                                "NeighborNextHop";
                              leaf neighbor-next-hop-value-type {
                                type Ospf-sh-nnh-val-types;
                                description
                                  "NeighborNextHopValueType";
                              }
    
                              leaf neighbor-next-hop-ip-addr {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                }
                                type inet:ipv4-address;
                                description
                                  "Neighbor NextHop IP Address";
                              }
    
                              leaf neighbor-next-hop-intf-index {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                }
                                type uint32;
                                description
                                  "Neighbor NextHop Interface Index";
                              }
                            }  // list neighbor-next-hop
                          }  // list route-path
                        }  // list backup-route-area
                      }  // container backup-route-areas
    
                      container route-area-informations {
                        description
                          "OSPF Area Route Entry";
                        list route-area-information {
                          description
                            "An OSPF route";
                          leaf prefix {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 Prefix";
                          }
    
                          leaf prefix-length {
                            type Ospf-prefix-length;
                            description
                              "Length of the subnet prefix";
                          }
    
                          container route-info {
                            description
                              "Route information";
                            container route-update-time {
                              description
                                "Last time updated";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-update-time
    
                            container route-fail-time {
                              description
                                "Last time update failed";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-fail-time
    
                            leaf route-area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf route-te-metric {
                              type uint32;
                              description
                                "TE metric";
                            }
    
                            leaf route-rib-version {
                              type uint32;
                              description
                                "RIB version";
                            }
    
                            leaf route-spf-version {
                              type uint64;
                              description
                                "SPF version";
                            }
    
                            leaf route-forward-distance {
                              type uint32;
                              description
                                "Forward distance";
                            }
    
                            leaf route-source {
                              type uint16;
                              description
                                "Protocol source";
                            }
    
                            leaf route-spf-priority {
                              type uint8;
                              description
                                "SPF priority";
                            }
    
                            leaf route-auto-excluded {
                              type boolean;
                              description
                                "If true, exclude from TE paths";
                            }
    
                            leaf route-srte-prefix-registered {
                              type boolean;
                              description
                                "If true, SRTE registered prefix route";
                            }
    
                            leaf route-srte-nbr-registered {
                              type uint16;
                              description
                                "SRTE registered neigbhor count on route";
                            }
    
                            leaf route-label-type {
                              type uint8;
                              description
                                "Type of route label";
                            }
    
                            leaf route-label {
                              type uint32;
                              description
                                "The route SPF label";
                            }
    
                            leaf route-sspf-label {
                              type uint32;
                              description
                                "The route SSPF label";
                            }
                          }  // container route-info
    
                          leaf route-prefix {
                            type inet:ipv4-address;
                            description
                              "IPv4 Route Prefix";
                          }
    
                          leaf route-prefix-length {
                            type uint32;
                            description
                              "Prefix length";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf route-type {
                            type Ospf-route;
                            description
                              "OSPF route type, whether intra-area, inter-area
    or external route";
                          }
    
                          leaf route-connected {
                            type boolean;
                            description
                              "If true, connected route";
                          }
    
                          list route-path {
                            description
                              "List of paths to this route";
                            container sr-microloop-avoidance-path {
                              description
                                "SR Microloop avoidance Path Info";
                              leaf microloop-repair-list-size {
                                type uint32;
                                description
                                  "Repair List Size for Microloop";
                              }
    
                              leaf microloop-tunnel-interface-name {
                                type xr:Interface-name;
                                description
                                  "Tunnel Interface name for Microloop";
                              }
    
                              leaf microloop-strict-spf {
                                type boolean;
                                description
                                  "Strict SPF SID for Microloop";
                              }
    
                              list microloop-repair {
                                max-elements
                                  12;
                                description
                                  "Repair List for Microloop";
                                leaf repair-element-id {
                                  type inet:ipv4-address;
                                  description
                                    "ID of the Repair Element";
                                }
    
                                leaf repair-label {
                                  type uint32;
                                  description
                                    "Label of Repair Element";
                                }
    
                                leaf repair-element-type {
                                  type uint32;
                                  description
                                    "Type of the Repair Element";
                                }
                              }  // list microloop-repair
                            }  // container sr-microloop-avoidance-path
    
                            leaf route-interface-name {
                              type xr:Interface-name;
                              description
                                "Next hop Interface";
                            }
    
                            leaf route-interface-snmp-index {
                              type uint32;
                              description
                                "SNMP index of th Interface";
                            }
    
                            leaf route-next-hop-address {
                              type inet:ipv4-address;
                              description
                                "Nexthop IP address";
                            }
    
                            leaf route-source {
                              type inet:ipv4-address;
                              description
                                "IP address of source of route";
                            }
    
                            leaf route-lsaid {
                              type inet:ipv4-address;
                              description
                                "LSA ID, see RFC2328";
                            }
    
                            leaf route-path-is-mcast-intact {
                              type boolean;
                              description
                                "Multicast-intact path";
                            }
    
                            leaf route-path-is-ucmp-path {
                              type boolean;
                              description
                                "UCMP path";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf lsa-type {
                              type uint8;
                              description
                                "LSA type, see RFC2328 etc.";
                            }
    
                            leaf area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf area-format {
                              type boolean;
                              description
                                "Area format IP or uint32";
                            }
    
                            leaf route-path-id {
                              type uint32;
                              description
                                "Path ID of path";
                            }
    
                            leaf route-path-is-rsvp-te-path {
                              type boolean;
                              description
                                "RSVP-TE path";
                            }
    
                            leaf route-path-is-sr-te-path {
                              type boolean;
                              description
                                "SR-TE path";
                            }
    
                            leaf route-path-is-sr-excl-path {
                              type boolean;
                              description
                                "SR Excl TE path";
                            }
    
                            leaf route-path-is-sr-te-sspf-path {
                              type boolean;
                              description
                                "SR-TE SSPF path";
                            }
    
                            leaf weight {
                              type uint32;
                              description
                                "Path Weight";
                            }
    
                            list neighbor-next-hop {
                              description
                                "NeighborNextHop";
                              leaf neighbor-next-hop-value-type {
                                type Ospf-sh-nnh-val-types;
                                description
                                  "NeighborNextHopValueType";
                              }
    
                              leaf neighbor-next-hop-ip-addr {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                }
                                type inet:ipv4-address;
                                description
                                  "Neighbor NextHop IP Address";
                              }
    
                              leaf neighbor-next-hop-intf-index {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                }
                                type uint32;
                                description
                                  "Neighbor NextHop Interface Index";
                              }
                            }  // list neighbor-next-hop
                          }  // list route-path
                        }  // list route-area-information
                      }  // container route-area-informations
    
                      container multicast-intact-route-areas {
                        description
                          "OSPF Area multicast-intact included route
    entry";
                        list multicast-intact-route-area {
                          description
                            "A Muliticast OSPF route in an area";
                          leaf prefix {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 Prefix";
                          }
    
                          leaf prefix-length {
                            type Ospf-prefix-length;
                            description
                              "Length of the subnet prefix";
                          }
    
                          container route-info {
                            description
                              "Route information";
                            container route-update-time {
                              description
                                "Last time updated";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-update-time
    
                            container route-fail-time {
                              description
                                "Last time update failed";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-fail-time
    
                            leaf route-area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf route-te-metric {
                              type uint32;
                              description
                                "TE metric";
                            }
    
                            leaf route-rib-version {
                              type uint32;
                              description
                                "RIB version";
                            }
    
                            leaf route-spf-version {
                              type uint64;
                              description
                                "SPF version";
                            }
    
                            leaf route-forward-distance {
                              type uint32;
                              description
                                "Forward distance";
                            }
    
                            leaf route-source {
                              type uint16;
                              description
                                "Protocol source";
                            }
    
                            leaf route-spf-priority {
                              type uint8;
                              description
                                "SPF priority";
                            }
    
                            leaf route-auto-excluded {
                              type boolean;
                              description
                                "If true, exclude from TE paths";
                            }
    
                            leaf route-srte-prefix-registered {
                              type boolean;
                              description
                                "If true, SRTE registered prefix route";
                            }
    
                            leaf route-srte-nbr-registered {
                              type uint16;
                              description
                                "SRTE registered neigbhor count on route";
                            }
    
                            leaf route-label-type {
                              type uint8;
                              description
                                "Type of route label";
                            }
    
                            leaf route-label {
                              type uint32;
                              description
                                "The route SPF label";
                            }
    
                            leaf route-sspf-label {
                              type uint32;
                              description
                                "The route SSPF label";
                            }
                          }  // container route-info
    
                          leaf route-prefix {
                            type inet:ipv4-address;
                            description
                              "IPv4 Route Prefix";
                          }
    
                          leaf route-prefix-length {
                            type uint32;
                            description
                              "Prefix length";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf route-type {
                            type Ospf-route;
                            description
                              "OSPF route type, whether intra-area, inter-area
    or external route";
                          }
    
                          leaf route-connected {
                            type boolean;
                            description
                              "If true, connected route";
                          }
    
                          list route-path {
                            description
                              "List of paths to this route";
                            container sr-microloop-avoidance-path {
                              description
                                "SR Microloop avoidance Path Info";
                              leaf microloop-repair-list-size {
                                type uint32;
                                description
                                  "Repair List Size for Microloop";
                              }
    
                              leaf microloop-tunnel-interface-name {
                                type xr:Interface-name;
                                description
                                  "Tunnel Interface name for Microloop";
                              }
    
                              leaf microloop-strict-spf {
                                type boolean;
                                description
                                  "Strict SPF SID for Microloop";
                              }
    
                              list microloop-repair {
                                max-elements
                                  12;
                                description
                                  "Repair List for Microloop";
                                leaf repair-element-id {
                                  type inet:ipv4-address;
                                  description
                                    "ID of the Repair Element";
                                }
    
                                leaf repair-label {
                                  type uint32;
                                  description
                                    "Label of Repair Element";
                                }
    
                                leaf repair-element-type {
                                  type uint32;
                                  description
                                    "Type of the Repair Element";
                                }
                              }  // list microloop-repair
                            }  // container sr-microloop-avoidance-path
    
                            leaf route-interface-name {
                              type xr:Interface-name;
                              description
                                "Next hop Interface";
                            }
    
                            leaf route-interface-snmp-index {
                              type uint32;
                              description
                                "SNMP index of th Interface";
                            }
    
                            leaf route-next-hop-address {
                              type inet:ipv4-address;
                              description
                                "Nexthop IP address";
                            }
    
                            leaf route-source {
                              type inet:ipv4-address;
                              description
                                "IP address of source of route";
                            }
    
                            leaf route-lsaid {
                              type inet:ipv4-address;
                              description
                                "LSA ID, see RFC2328";
                            }
    
                            leaf route-path-is-mcast-intact {
                              type boolean;
                              description
                                "Multicast-intact path";
                            }
    
                            leaf route-path-is-ucmp-path {
                              type boolean;
                              description
                                "UCMP path";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf lsa-type {
                              type uint8;
                              description
                                "LSA type, see RFC2328 etc.";
                            }
    
                            leaf area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf area-format {
                              type boolean;
                              description
                                "Area format IP or uint32";
                            }
    
                            leaf route-path-id {
                              type uint32;
                              description
                                "Path ID of path";
                            }
    
                            leaf route-path-is-rsvp-te-path {
                              type boolean;
                              description
                                "RSVP-TE path";
                            }
    
                            leaf route-path-is-sr-te-path {
                              type boolean;
                              description
                                "SR-TE path";
                            }
    
                            leaf route-path-is-sr-excl-path {
                              type boolean;
                              description
                                "SR Excl TE path";
                            }
    
                            leaf route-path-is-sr-te-sspf-path {
                              type boolean;
                              description
                                "SR-TE SSPF path";
                            }
    
                            leaf weight {
                              type uint32;
                              description
                                "Path Weight";
                            }
    
                            list neighbor-next-hop {
                              description
                                "NeighborNextHop";
                              leaf neighbor-next-hop-value-type {
                                type Ospf-sh-nnh-val-types;
                                description
                                  "NeighborNextHopValueType";
                              }
    
                              leaf neighbor-next-hop-ip-addr {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                }
                                type inet:ipv4-address;
                                description
                                  "Neighbor NextHop IP Address";
                              }
    
                              leaf neighbor-next-hop-intf-index {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                }
                                type uint32;
                                description
                                  "Neighbor NextHop Interface Index";
                              }
                            }  // list neighbor-next-hop
                          }  // list route-path
                        }  // list multicast-intact-route-area
                      }  // container multicast-intact-route-areas
    
                      container summary-area-information {
                        description
                          "OSPF route summary statistics";
                        container failure-time {
                          description
                            "Last time failed";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container failure-time
    
                        container common {
                          description
                            "OSPF route summary Information";
                          leaf external-type1s {
                            type uint32;
                            description
                              "External type 1 count";
                          }
    
                          leaf external-type2s {
                            type uint32;
                            description
                              "External type 2 count";
                          }
    
                          leaf external-nssa-type1s {
                            type uint32;
                            description
                              "External NSSA type 1 count";
                          }
    
                          leaf external-nssa-type2s {
                            type uint32;
                            description
                              "External NSSA type 2 count";
                          }
    
                          leaf inter-areas {
                            type uint32;
                            description
                              "Inter-area count";
                          }
    
                          leaf intra-areas {
                            type uint32;
                            description
                              "Intra-area count";
                          }
    
                          leaf total {
                            type uint32;
                            description
                              "Total count";
                          }
                        }  // container common
    
                        leaf failures {
                          type uint32;
                          description
                            "RIB failure count";
                        }
    
                        leaf failure-address {
                          type inet:ipv4-address;
                          description
                            "Last failed address";
                        }
                      }  // container summary-area-information
    
                      container local-route-areas {
                        description
                          "OSPF Local Route Table";
                        list local-route-area {
                          description
                            "Local route";
                          leaf prefix {
                            type inet:ipv4-address-no-zone;
                            description
                              "IPv4 Prefix";
                          }
    
                          leaf prefix-length {
                            type Ospf-prefix-length;
                            description
                              "Length of the subnet prefix";
                          }
    
                          container route-info {
                            description
                              "Route information";
                            container route-update-time {
                              description
                                "Last time updated";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-update-time
    
                            container route-fail-time {
                              description
                                "Last time update failed";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container route-fail-time
    
                            leaf route-area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf route-te-metric {
                              type uint32;
                              description
                                "TE metric";
                            }
    
                            leaf route-rib-version {
                              type uint32;
                              description
                                "RIB version";
                            }
    
                            leaf route-spf-version {
                              type uint64;
                              description
                                "SPF version";
                            }
    
                            leaf route-forward-distance {
                              type uint32;
                              description
                                "Forward distance";
                            }
    
                            leaf route-source {
                              type uint16;
                              description
                                "Protocol source";
                            }
    
                            leaf route-spf-priority {
                              type uint8;
                              description
                                "SPF priority";
                            }
    
                            leaf route-auto-excluded {
                              type boolean;
                              description
                                "If true, exclude from TE paths";
                            }
    
                            leaf route-srte-prefix-registered {
                              type boolean;
                              description
                                "If true, SRTE registered prefix route";
                            }
    
                            leaf route-srte-nbr-registered {
                              type uint16;
                              description
                                "SRTE registered neigbhor count on route";
                            }
    
                            leaf route-label-type {
                              type uint8;
                              description
                                "Type of route label";
                            }
    
                            leaf route-label {
                              type uint32;
                              description
                                "The route SPF label";
                            }
    
                            leaf route-sspf-label {
                              type uint32;
                              description
                                "The route SSPF label";
                            }
                          }  // container route-info
    
                          leaf route-prefix {
                            type inet:ipv4-address;
                            description
                              "IPv4 Route Prefix";
                          }
    
                          leaf route-prefix-length {
                            type uint32;
                            description
                              "Prefix length";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf route-type {
                            type Ospf-route;
                            description
                              "OSPF route type, whether intra-area, inter-area
    or external route";
                          }
    
                          leaf route-connected {
                            type boolean;
                            description
                              "If true, connected route";
                          }
    
                          list route-path {
                            description
                              "List of paths to this route";
                            container sr-microloop-avoidance-path {
                              description
                                "SR Microloop avoidance Path Info";
                              leaf microloop-repair-list-size {
                                type uint32;
                                description
                                  "Repair List Size for Microloop";
                              }
    
                              leaf microloop-tunnel-interface-name {
                                type xr:Interface-name;
                                description
                                  "Tunnel Interface name for Microloop";
                              }
    
                              leaf microloop-strict-spf {
                                type boolean;
                                description
                                  "Strict SPF SID for Microloop";
                              }
    
                              list microloop-repair {
                                max-elements
                                  12;
                                description
                                  "Repair List for Microloop";
                                leaf repair-element-id {
                                  type inet:ipv4-address;
                                  description
                                    "ID of the Repair Element";
                                }
    
                                leaf repair-label {
                                  type uint32;
                                  description
                                    "Label of Repair Element";
                                }
    
                                leaf repair-element-type {
                                  type uint32;
                                  description
                                    "Type of the Repair Element";
                                }
                              }  // list microloop-repair
                            }  // container sr-microloop-avoidance-path
    
                            leaf route-interface-name {
                              type xr:Interface-name;
                              description
                                "Next hop Interface";
                            }
    
                            leaf route-interface-snmp-index {
                              type uint32;
                              description
                                "SNMP index of th Interface";
                            }
    
                            leaf route-next-hop-address {
                              type inet:ipv4-address;
                              description
                                "Nexthop IP address";
                            }
    
                            leaf route-source {
                              type inet:ipv4-address;
                              description
                                "IP address of source of route";
                            }
    
                            leaf route-lsaid {
                              type inet:ipv4-address;
                              description
                                "LSA ID, see RFC2328";
                            }
    
                            leaf route-path-is-mcast-intact {
                              type boolean;
                              description
                                "Multicast-intact path";
                            }
    
                            leaf route-path-is-ucmp-path {
                              type boolean;
                              description
                                "UCMP path";
                            }
    
                            leaf route-metric {
                              type uint32;
                              description
                                "Metric";
                            }
    
                            leaf lsa-type {
                              type uint8;
                              description
                                "LSA type, see RFC2328 etc.";
                            }
    
                            leaf area-id {
                              type uint32;
                              description
                                "Area ID";
                            }
    
                            leaf area-format {
                              type boolean;
                              description
                                "Area format IP or uint32";
                            }
    
                            leaf route-path-id {
                              type uint32;
                              description
                                "Path ID of path";
                            }
    
                            leaf route-path-is-rsvp-te-path {
                              type boolean;
                              description
                                "RSVP-TE path";
                            }
    
                            leaf route-path-is-sr-te-path {
                              type boolean;
                              description
                                "SR-TE path";
                            }
    
                            leaf route-path-is-sr-excl-path {
                              type boolean;
                              description
                                "SR Excl TE path";
                            }
    
                            leaf route-path-is-sr-te-sspf-path {
                              type boolean;
                              description
                                "SR-TE SSPF path";
                            }
    
                            leaf weight {
                              type uint32;
                              description
                                "Path Weight";
                            }
    
                            list neighbor-next-hop {
                              description
                                "NeighborNextHop";
                              leaf neighbor-next-hop-value-type {
                                type Ospf-sh-nnh-val-types;
                                description
                                  "NeighborNextHopValueType";
                              }
    
                              leaf neighbor-next-hop-ip-addr {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                                }
                                type inet:ipv4-address;
                                description
                                  "Neighbor NextHop IP Address";
                              }
    
                              leaf neighbor-next-hop-intf-index {
                                when
                                  "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                  description
                                    "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                                }
                                type uint32;
                                description
                                  "Neighbor NextHop Interface Index";
                              }
                            }  // list neighbor-next-hop
                          }  // list route-path
                        }  // list local-route-area
                      }  // container local-route-areas
    
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description "Area ID";
                      }
                    }  // list route-area
                  }  // container route-areas
    
                  container route-table {
                    description
                      "OSPF Route Table";
                    list route {
                      description
                        "An OSPF route";
                      leaf prefix {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 Prefix";
                      }
    
                      leaf prefix-length {
                        type Ospf-prefix-length;
                        description
                          "Length of the subnet prefix";
                      }
    
                      container route-info {
                        description
                          "Route information";
                        container route-update-time {
                          description
                            "Last time updated";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-update-time
    
                        container route-fail-time {
                          description
                            "Last time update failed";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container route-fail-time
    
                        leaf route-area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf route-te-metric {
                          type uint32;
                          description
                            "TE metric";
                        }
    
                        leaf route-rib-version {
                          type uint32;
                          description
                            "RIB version";
                        }
    
                        leaf route-spf-version {
                          type uint64;
                          description
                            "SPF version";
                        }
    
                        leaf route-forward-distance {
                          type uint32;
                          description
                            "Forward distance";
                        }
    
                        leaf route-source {
                          type uint16;
                          description
                            "Protocol source";
                        }
    
                        leaf route-spf-priority {
                          type uint8;
                          description
                            "SPF priority";
                        }
    
                        leaf route-auto-excluded {
                          type boolean;
                          description
                            "If true, exclude from TE paths";
                        }
    
                        leaf route-srte-prefix-registered {
                          type boolean;
                          description
                            "If true, SRTE registered prefix route";
                        }
    
                        leaf route-srte-nbr-registered {
                          type uint16;
                          description
                            "SRTE registered neigbhor count on route";
                        }
    
                        leaf route-label-type {
                          type uint8;
                          description
                            "Type of route label";
                        }
    
                        leaf route-label {
                          type uint32;
                          description
                            "The route SPF label";
                        }
    
                        leaf route-sspf-label {
                          type uint32;
                          description
                            "The route SSPF label";
                        }
                      }  // container route-info
    
                      leaf route-prefix {
                        type inet:ipv4-address;
                        description
                          "IPv4 Route Prefix";
                      }
    
                      leaf route-prefix-length {
                        type uint32;
                        description
                          "Prefix length";
                      }
    
                      leaf route-metric {
                        type uint32;
                        description "Metric";
                      }
    
                      leaf route-type {
                        type Ospf-route;
                        description
                          "OSPF route type, whether intra-area, inter-area
    or external route";
                      }
    
                      leaf route-connected {
                        type boolean;
                        description
                          "If true, connected route";
                      }
    
                      list route-path {
                        description
                          "List of paths to this route";
                        container sr-microloop-avoidance-path {
                          description
                            "SR Microloop avoidance Path Info";
                          leaf microloop-repair-list-size {
                            type uint32;
                            description
                              "Repair List Size for Microloop";
                          }
    
                          leaf microloop-tunnel-interface-name {
                            type xr:Interface-name;
                            description
                              "Tunnel Interface name for Microloop";
                          }
    
                          leaf microloop-strict-spf {
                            type boolean;
                            description
                              "Strict SPF SID for Microloop";
                          }
    
                          list microloop-repair {
                            max-elements 12;
                            description
                              "Repair List for Microloop";
                            leaf repair-element-id {
                              type inet:ipv4-address;
                              description
                                "ID of the Repair Element";
                            }
    
                            leaf repair-label {
                              type uint32;
                              description
                                "Label of Repair Element";
                            }
    
                            leaf repair-element-type {
                              type uint32;
                              description
                                "Type of the Repair Element";
                            }
                          }  // list microloop-repair
                        }  // container sr-microloop-avoidance-path
    
                        leaf route-interface-name {
                          type xr:Interface-name;
                          description
                            "Next hop Interface";
                        }
    
                        leaf route-interface-snmp-index {
                          type uint32;
                          description
                            "SNMP index of th Interface";
                        }
    
                        leaf route-next-hop-address {
                          type inet:ipv4-address;
                          description
                            "Nexthop IP address";
                        }
    
                        leaf route-source {
                          type inet:ipv4-address;
                          description
                            "IP address of source of route";
                        }
    
                        leaf route-lsaid {
                          type inet:ipv4-address;
                          description
                            "LSA ID, see RFC2328";
                        }
    
                        leaf route-path-is-mcast-intact {
                          type boolean;
                          description
                            "Multicast-intact path";
                        }
    
                        leaf route-path-is-ucmp-path {
                          type boolean;
                          description
                            "UCMP path";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf lsa-type {
                          type uint8;
                          description
                            "LSA type, see RFC2328 etc.";
                        }
    
                        leaf area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf area-format {
                          type boolean;
                          description
                            "Area format IP or uint32";
                        }
    
                        leaf route-path-id {
                          type uint32;
                          description
                            "Path ID of path";
                        }
    
                        leaf route-path-is-rsvp-te-path {
                          type boolean;
                          description
                            "RSVP-TE path";
                        }
    
                        leaf route-path-is-sr-te-path {
                          type boolean;
                          description
                            "SR-TE path";
                        }
    
                        leaf route-path-is-sr-excl-path {
                          type boolean;
                          description
                            "SR Excl TE path";
                        }
    
                        leaf route-path-is-sr-te-sspf-path {
                          type boolean;
                          description
                            "SR-TE SSPF path";
                        }
    
                        leaf weight {
                          type uint32;
                          description
                            "Path Weight";
                        }
    
                        list neighbor-next-hop {
                          description
                            "NeighborNextHop";
                          leaf neighbor-next-hop-value-type {
                            type Ospf-sh-nnh-val-types;
                            description
                              "NeighborNextHopValueType";
                          }
    
                          leaf neighbor-next-hop-ip-addr {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                            }
                            type inet:ipv4-address;
                            description
                              "Neighbor NextHop IP Address";
                          }
    
                          leaf neighbor-next-hop-intf-index {
                            when
                              "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                              description
                                "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                            }
                            type uint32;
                            description
                              "Neighbor NextHop Interface Index";
                          }
                        }  // list neighbor-next-hop
                      }  // list route-path
                    }  // list route
                  }  // container route-table
    
                  container external-routes {
                    description
                      "OSPF External Route Table";
                    list external-route {
                      description
                        "This is an OSPF external route";
                      leaf prefix {
                        type inet:ipv4-address-no-zone;
                        description
                          "IPv4 Prefix";
                      }
    
                      leaf prefix-length {
                        type Ospf-prefix-length;
                        description
                          "Length of the subnet prefix";
                      }
    
                      container route-information {
                        description
                          "Route details";
                        container route-info {
                          description
                            "Route information";
                          container route-update-time {
                            description
                              "Last time updated";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-update-time
    
                          container route-fail-time {
                            description
                              "Last time update failed";
                            leaf second {
                              type uint32;
                              description
                                "Second";
                            }
    
                            leaf nanosecond {
                              type uint32;
                              description
                                "Nanosecond";
                            }
                          }  // container route-fail-time
    
                          leaf route-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf route-te-metric {
                            type uint32;
                            description
                              "TE metric";
                          }
    
                          leaf route-rib-version {
                            type uint32;
                            description
                              "RIB version";
                          }
    
                          leaf route-spf-version {
                            type uint64;
                            description
                              "SPF version";
                          }
    
                          leaf route-forward-distance {
                            type uint32;
                            description
                              "Forward distance";
                          }
    
                          leaf route-source {
                            type uint16;
                            description
                              "Protocol source";
                          }
    
                          leaf route-spf-priority {
                            type uint8;
                            description
                              "SPF priority";
                          }
    
                          leaf route-auto-excluded {
                            type boolean;
                            description
                              "If true, exclude from TE paths";
                          }
    
                          leaf route-srte-prefix-registered {
                            type boolean;
                            description
                              "If true, SRTE registered prefix route";
                          }
    
                          leaf route-srte-nbr-registered {
                            type uint16;
                            description
                              "SRTE registered neigbhor count on route";
                          }
    
                          leaf route-label-type {
                            type uint8;
                            description
                              "Type of route label";
                          }
    
                          leaf route-label {
                            type uint32;
                            description
                              "The route SPF label";
                          }
    
                          leaf route-sspf-label {
                            type uint32;
                            description
                              "The route SSPF label";
                          }
                        }  // container route-info
    
                        leaf route-prefix {
                          type inet:ipv4-address;
                          description
                            "IPv4 Route Prefix";
                        }
    
                        leaf route-prefix-length {
                          type uint32;
                          description
                            "Prefix length";
                        }
    
                        leaf route-metric {
                          type uint32;
                          description "Metric";
                        }
    
                        leaf route-type {
                          type Ospf-route;
                          description
                            "OSPF route type, whether intra-area, inter-area
    or external route";
                        }
    
                        leaf route-connected {
                          type boolean;
                          description
                            "If true, connected route";
                        }
    
                        list route-path {
                          description
                            "List of paths to this route";
                          container sr-microloop-avoidance-path {
                            description
                              "SR Microloop avoidance Path Info";
                            leaf microloop-repair-list-size {
                              type uint32;
                              description
                                "Repair List Size for Microloop";
                            }
    
                            leaf microloop-tunnel-interface-name {
                              type xr:Interface-name;
                              description
                                "Tunnel Interface name for Microloop";
                            }
    
                            leaf microloop-strict-spf {
                              type boolean;
                              description
                                "Strict SPF SID for Microloop";
                            }
    
                            list microloop-repair {
                              max-elements 12;
                              description
                                "Repair List for Microloop";
                              leaf repair-element-id {
                                type inet:ipv4-address;
                                description
                                  "ID of the Repair Element";
                              }
    
                              leaf repair-label {
                                type uint32;
                                description
                                  "Label of Repair Element";
                              }
    
                              leaf repair-element-type {
                                type uint32;
                                description
                                  "Type of the Repair Element";
                              }
                            }  // list microloop-repair
                          }  // container sr-microloop-avoidance-path
    
                          leaf route-interface-name {
                            type xr:Interface-name;
                            description
                              "Next hop Interface";
                          }
    
                          leaf route-interface-snmp-index {
                            type uint32;
                            description
                              "SNMP index of th Interface";
                          }
    
                          leaf route-next-hop-address {
                            type inet:ipv4-address;
                            description
                              "Nexthop IP address";
                          }
    
                          leaf route-source {
                            type inet:ipv4-address;
                            description
                              "IP address of source of route";
                          }
    
                          leaf route-lsaid {
                            type inet:ipv4-address;
                            description
                              "LSA ID, see RFC2328";
                          }
    
                          leaf route-path-is-mcast-intact {
                            type boolean;
                            description
                              "Multicast-intact path";
                          }
    
                          leaf route-path-is-ucmp-path {
                            type boolean;
                            description
                              "UCMP path";
                          }
    
                          leaf route-metric {
                            type uint32;
                            description "Metric";
                          }
    
                          leaf lsa-type {
                            type uint8;
                            description
                              "LSA type, see RFC2328 etc.";
                          }
    
                          leaf area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf area-format {
                            type boolean;
                            description
                              "Area format IP or uint32";
                          }
    
                          leaf route-path-id {
                            type uint32;
                            description
                              "Path ID of path";
                          }
    
                          leaf route-path-is-rsvp-te-path {
                            type boolean;
                            description
                              "RSVP-TE path";
                          }
    
                          leaf route-path-is-sr-te-path {
                            type boolean;
                            description
                              "SR-TE path";
                          }
    
                          leaf route-path-is-sr-excl-path {
                            type boolean;
                            description
                              "SR Excl TE path";
                          }
    
                          leaf route-path-is-sr-te-sspf-path {
                            type boolean;
                            description
                              "SR-TE SSPF path";
                          }
    
                          leaf weight {
                            type uint32;
                            description
                              "Path Weight";
                          }
    
                          list neighbor-next-hop {
                            description
                              "NeighborNextHop";
                            leaf neighbor-next-hop-value-type {
                              type Ospf-sh-nnh-val-types;
                              description
                                "NeighborNextHopValueType";
                            }
    
                            leaf neighbor-next-hop-ip-addr {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IP_ADDR'";
                              }
                              type inet:ipv4-address;
                              description
                                "Neighbor NextHop IP Address";
                            }
    
                            leaf neighbor-next-hop-intf-index {
                              when
                                "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" {
                                description
                                  "../NeighborNextHopValueType =
    'MGMT_NNH_VAL_TYPE_IF_INDEX'";
                              }
                              type uint32;
                              description
                                "Neighbor NextHop Interface Index";
                            }
                          }  // list neighbor-next-hop
                        }  // list route-path
                      }  // container route-information
    
                      container protocol-name {
                        description
                          "Name of protocol from which the external route
    was redistributed";
                        leaf protocol-type {
                          type Redist-protocol;
                          description
                            "ProtocolType";
                        }
    
                        leaf isis-instance-id {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-isis'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_ISIS'";
                          }
                          type String1;
                          description
                            "ISIS instance identifier";
                        }
    
                        leaf ospf-process-id {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-ospf'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_OSPF'";
                          }
                          type String1;
                          description
                            "OSPF process identifier";
                        }
    
                        leaf bgp-as-number {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-bgp'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_BGP'";
                          }
                          type String1;
                          description
                            "BGP Autonomous System Number";
                        }
    
                        leaf eigrp-as-number {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-eigrp'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_EIGRP'";
                          }
                          type String1;
                          description
                            "Autonomous System Number";
                        }
    
                        leaf connected-instance {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-connected'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_CONNECTED'";
                          }
                          type String1;
                          description
                            "Name of the Connected instance";
                        }
                      }  // container protocol-name
    
                      container route-extended-community {
                        description
                          "Extended communities in the route";
                        leaf extended-community-domain-id-value {
                          type yang:hex-string;
                          description
                            "Domain ID value";
                        }
    
                        leaf extended-communityl-domain-id-type {
                          type uint16;
                          description
                            "Domain ID type";
                        }
    
                        leaf extended-community-area-id {
                          type uint32;
                          description "Area id";
                        }
    
                        leaf extended-community-router-id {
                          type inet:ipv4-address;
                          description
                            "Router id";
                        }
    
                        leaf extended-community-route-type {
                          type uint8;
                          description
                            "OSPF route type, whether intra-area, inter-area
    or external route";
                        }
    
                        leaf extended-community-options {
                          type uint8;
                          description
                            "Route Options";
                        }
                      }  // container route-extended-community
                    }  // list external-route
                  }  // container external-routes
                }  // container route-information
    
                container interface-information {
                  description
                    "Container for OSPF Interfaces/links";
                  container virtual-links {
                    description
                      "Virtual Link table";
                    list virtual-link {
                      key "virtual-link-name";
                      description
                        "Information for one Virtual link";
                      leaf virtual-link-name {
                        type xr:Cisco-ios-xr-string;
                        description
                          "Virtual link";
                      }
    
                      container virtual-link-neighbor {
                        description
                          "Neighbor information";
                        container virtual-link-retransmissoin {
                          description
                            "Neighbor retransmission info";
                          leaf dbd-retransmission-count {
                            type uint32;
                            description
                              "Number of DBD retransmissions during last
    exchange";
                          }
    
                          leaf dbd-retransmission-total-count {
                            type uint32;
                            description
                              "Total number of DBD retransmissions for this
    neighbor";
                          }
    
                          leaf area-flooding-index {
                            type uint32;
                            description
                              "Area scope LSA's flood index";
                          }
    
                          leaf as-flood-index {
                            type uint32;
                            description
                              "AS scope LSA's flood index";
                          }
    
                          leaf neighbor-retransmission-count {
                            type uint32;
                            description
                              "Retransmission queue length";
                          }
    
                          leaf number-of-retransmissions {
                            type uint32;
                            description
                              "Number of retransmissions for this neighbor";
                          }
    
                          leaf area-first-flood-information {
                            type uint32;
                            description
                              "First flood item for area scope LSAs";
                          }
    
                          leaf area-first-flood-information-index {
                            type uint32;
                            description
                              "Index of the first flood item for area scope
    LSAs";
                          }
    
                          leaf as-first-flood-information {
                            type uint32;
                            description
                              "First flood item for AS scope LSAs";
                          }
    
                          leaf as-first-flood-information-index {
                            type uint32;
                            description
                              "Index for first flood item for AS scope LSAs";
                          }
    
                          leaf area-next-flood-information {
                            type uint32;
                            description
                              "Next flood item for area scope LSAs";
                          }
    
                          leaf area-next-flood-information-index {
                            type uint32;
                            description
                              "Index of next flood item for Area scope LSAs";
                          }
    
                          leaf as-next-flood-information {
                            type uint32;
                            description
                              "Next flood item for AS scope LSAs";
                          }
    
                          leaf as-next-flood-information-index {
                            type uint32;
                            description
                              "Index of next flood item for AS scope LSAs";
                          }
    
                          leaf last-retransmission-length {
                            type uint32;
                            description
                              "Number of LSAs sent in last retransmission";
                          }
    
                          leaf maximum-retransmission-length {
                            type uint32;
                            description
                              "Maximum number of LSAs sent in a retransmission";
                          }
    
                          leaf last-retransmission-time {
                            type uint32;
                            description
                              "Time taken for retransmission in the last
    attempt (ms)";
                          }
    
                          leaf maximum-retransmission-time {
                            type uint32;
                            description
                              "Maximum time taken for retransmission (ms)";
                          }
    
                          leaf lsa-retransmission-timer {
                            type uint32;
                            description
                              "Time until next LSA retransmission (ms)";
                          }
                        }  // container virtual-link-retransmissoin
    
                        leaf virtual-link-suppress-hello {
                          type boolean;
                          description
                            "If true Hellos suppressed";
                        }
    
                        leaf virtual-link-state {
                          type Neighbor-state;
                          description
                            "Adjacency state";
                        }
                      }  // container virtual-link-neighbor
    
                      leaf virtual-link-name-xr {
                        type string;
                        description
                          "Name of the Virtual link";
                      }
    
                      leaf virtual-link-neighbor-id {
                        type inet:ipv4-address;
                        description
                          "Neighbor on other end of this virtual link";
                      }
    
                      leaf virtual-link-state {
                        type Ospf-interface-state;
                        description
                          "OSPF interface state for the virtual link";
                      }
    
                      leaf virtual-link-demand-circuit {
                        type boolean;
                        description
                          "If true, the link runs as demand circuit";
                      }
    
                      leaf virtual-link-dc-bitless-lsa {
                        type uint32;
                        description
                          "Number of LSA's with demand circuit bit not set";
                      }
    
                      leaf transit-area {
                        type string;
                        description
                          "Area id of the Transit area";
                      }
    
                      leaf virtual-link-interface-name {
                        type xr:Interface-name;
                        description
                          "Interface on which this virtual link is formed";
                      }
    
                      leaf virtual-link-cost {
                        type uint16;
                        description
                          "Cost of the virtual link";
                      }
    
                      leaf virual-link-transmission-delay {
                        type uint16;
                        units "second";
                        description
                          "Transmission delay in seconds";
                      }
    
                      leaf virtual-link-hello-interval {
                        type uint32;
                        description
                          "Hello interval (s)";
                      }
    
                      leaf virtual-link-hello-interval-ms {
                        type uint32;
                        description
                          "Hello interval (ms)";
                      }
    
                      leaf virtual-link-dead-interval {
                        type uint32;
                        description
                          "Dead interval (s)";
                      }
    
                      leaf virtual-link-wait-interval {
                        type uint32;
                        description
                          "Wait interval (s)";
                      }
    
                      leaf virtaul-link-retransmission-interval {
                        type uint32;
                        description
                          "Retransmission interval (s)";
                      }
    
                      leaf virtual-link-next-hello {
                        type uint32;
                        description
                          "Time until next hello (s)";
                      }
    
                      leaf virtual-link-next-hello-ms {
                        type uint32;
                        description
                          "Time until next hello (ms)";
                      }
    
                      leaf virtual-link-passive {
                        type boolean;
                        description
                          "If true, interface is passive";
                      }
    
                      leaf virtual-link-authentication-type {
                        type Authentication;
                        description
                          "Authentication type";
                      }
    
                      leaf virtual-link-youngest-md-key {
                        type boolean;
                        description
                          "If true, MD key configured";
                      }
    
                      leaf virtual-link-youngest-md-key-id {
                        type uint16;
                        description
                          "Youngest MD key ID";
                      }
    
                      leaf virtual-link-old-md-key-count {
                        type uint32;
                        description
                          "Number of neighbors still using the old key
    (rollover in progress)";
                      }
    
                      leaf keychain-name {
                        type string {
                          length "0..255";
                        }
                        description
                          "Virtual Link Keychain Name";
                      }
    
                      leaf virtual-link-keychain-key-conf {
                        type boolean;
                        description
                          "If true, Keychain key is configured";
                      }
    
                      leaf virtual-link-keychain-id {
                        type uint64;
                        description
                          "Virtual Link Keychain ID";
                      }
    
                      leaf virtual-link-keychain-alg {
                        type Ospf-crytographic-algo;
                        description
                          "Virtual Link Keychain cryptographic-algorithm";
                      }
    
                      leaf virtual-link-nsf-enabled {
                        type boolean;
                        description
                          "If true, NSF enabled";
                      }
    
                      leaf virtual-link-nsf {
                        type boolean;
                        description
                          "If true, NSF restart in progress on the virtual
    link";
                      }
    
                      leaf virtual-link-last-nsf {
                        type uint32;
                        units "second";
                        description
                          "Time in seconds since last NSF";
                      }
    
                      list virtual-link-md-key {
                        description
                          "List of old MD keys (if any)";
                        leaf entry {
                          type uint16;
                          description
                            "List of old MD keys (if any)";
                        }
                      }  // list virtual-link-md-key
                    }  // list virtual-link
                  }  // container virtual-links
    
                  container interface-briefs {
                    description
                      "OSPF Interface Brief Table";
                    list interface-brief {
                      key "interface-name";
                      description
                        "OSPF interface brief information";
                      leaf interface-name {
                        type xr:Interface-name;
                        description "Interface";
                      }
    
                      leaf interface-name-xr {
                        type xr:Interface-name;
                        description
                          "Name of the interface on which OSPF is enabled";
                      }
    
                      leaf interface-area {
                        type string {
                          length "0..16";
                        }
                        description
                          "Area ID string in decimal or dotted-decimal
    format";
                      }
    
                      leaf interface-address {
                        type inet:ipv4-address;
                        description
                          "IPv4 address of the Interface";
                      }
    
                      leaf interface-mask {
                        type uint32;
                        description
                          "Interface IP Mask";
                      }
    
                      leaf interface-link-cost {
                        type uint16;
                        description
                          "link cost/metric of the interface";
                      }
    
                      leaf ospf-interface-state {
                        type Ospf-interface-state;
                        description
                          "Interface OSPF state";
                      }
    
                      leaf interface-fast-detect-hold-down {
                        type boolean;
                        description
                          "whether the interface is in fast detect hold
    down state";
                      }
    
                      leaf interface-neighbor-count {
                        type uint16;
                        description
                          "Total number of Neighbors";
                      }
    
                      leaf interface-adj-neighbor-count {
                        type uint16;
                        description
                          "Total number of Adjacent Neighbors";
                      }
    
                      leaf interfaceis-madj {
                        type boolean;
                        description
                          "If true, interface is multi-area";
                      }
    
                      leaf interface-madj-count {
                        type uint16;
                        description
                          "Total number of multi-area";
                      }
    
                      list interface-madj {
                        description
                          "Information for multi-area on the interface";
                        leaf interface-area {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted-decimal
    format";
                        }
    
                        leaf madj-area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf interface-neighbor-count {
                          type uint16;
                          description
                            "Number of Neighbors";
                        }
    
                        leaf interface-adj-neighbor-count {
                          type uint16;
                          description
                            "Total number of Adjacent Neighbors";
                        }
    
                        leaf interface-link-cost {
                          type uint16;
                          description
                            "Cost/Metric of the Interface link";
                        }
    
                        leaf ospf-interface-state {
                          type Ospf-interface-state;
                          description
                            "Interface OSPF state";
                        }
                      }  // list interface-madj
                    }  // list interface-brief
                  }  // container interface-briefs
    
                  container interfaces {
                    description
                      "OSPF Interface Table";
                    list interface {
                      key "interface-name";
                      description
                        "OSPF interface information";
                      leaf interface-name {
                        type xr:Interface-name;
                        description
                          "Name of the Interface";
                      }
    
                      container interface-bfd-information {
                        description
                          "BFD information";
                        leaf bfd-intf-enable-mode {
                          type uint32;
                          description
                            "BFD enable mode - Default/Strict";
                        }
    
                        leaf interval {
                          type uint32;
                          description
                            "BFD interval (ms)";
                        }
    
                        leaf detection-multiplier {
                          type uint32;
                          description
                            "BFD multiplier value";
                        }
                      }  // container interface-bfd-information
    
                      container active-interface {
                        description
                          "Active interface details";
                        leaf wait-time {
                          type uint32;
                          description
                            "Wait time for DR/BDR selection (s)";
                        }
    
                        leaf interface-area-flood-index {
                          type uint32;
                          description
                            "Area scope LSAs flood index";
                        }
    
                        leaf interface-as-flood-index {
                          type uint32;
                          description
                            "AS scope LSAs flood index";
                        }
    
                        leaf interface-flood-length {
                          type uint32;
                          description
                            "Flood queue length";
                        }
    
                        leaf interface-area-next-flood {
                          type uint32;
                          description
                            "Next LSA to flood (Area scope)";
                        }
    
                        leaf interface-area-next-flood-index {
                          type uint32;
                          description
                            "Index of next LSA to flood (Area scope)";
                        }
    
                        leaf interface-as-next-flood {
                          type uint32;
                          description
                            "Next LSA to flood (AS scope)";
                        }
    
                        leaf interface-as-next-flood-index {
                          type uint32;
                          description
                            "Index of next LSA to flood (AS scope)";
                        }
    
                        leaf flood-scan-length {
                          type uint32;
                          description
                            "Length of flood queue in the last attempt";
                        }
    
                        leaf maximum-flood-length {
                          type uint32;
                          description
                            "Maximum length of the flood queue";
                        }
    
                        leaf last-flood-time {
                          type uint32;
                          description
                            "Time taken for Last flood (ms)";
                        }
    
                        leaf maximum-flood-time {
                          type uint32;
                          description
                            "Maximum time taken for flood (ms)";
                        }
    
                        leaf interface-flood-pacing-timer {
                          type uint32;
                          description
                            "Time until next flood pacing timer (ms)";
                        }
    
                        leaf interface-neighbor-count {
                          type uint16;
                          description
                            "Total number of Neighbors";
                        }
    
                        leaf suppress-hello-count {
                          type uint16;
                          description
                            "Number of neighbors for which hellos are
    suppressed";
                        }
    
                        leaf interface-authentication-type {
                          type Authentication;
                          description
                            "Authentication type";
                        }
    
                        leaf youngest-md-key {
                          type boolean;
                          description
                            "If true, MD key is configured";
                        }
    
                        leaf old-md5-key-neighbor-count {
                          type uint32;
                          description
                            "Number of neighbors using the old key (if
    rollover in progress)";
                        }
    
                        leaf youngest-md-key-id {
                          type uint16;
                          description
                            "Youngest MD key ID";
                        }
    
                        leaf keychain-name {
                          type string {
                            length "0..255";
                          }
                          description
                            "Name of Keychain used in this interface";
                        }
    
                        leaf keychain-key-conf {
                          type boolean;
                          description
                            "If true, Keychain key is configured";
                        }
    
                        leaf keychain-id {
                          type uint64;
                          description
                            "ID of the keychain used in this interface";
                        }
    
                        leaf keychain-alg {
                          type Ospf-crytographic-algo;
                          description
                            "Keychain cryptographic-algorithm used in this
    interface";
                        }
    
                        list md-keys {
                          description
                            "List of old MD keys";
                          leaf entry {
                            type uint16;
                            description
                              "List of old MD keys";
                          }
                        }  // list md-keys
                      }  // container active-interface
    
                      leaf interface-name-xr {
                        type xr:Interface-name;
                        description
                          "Name of the interface";
                      }
    
                      leaf interface-state {
                        type Interface-state;
                        description
                          "State of the interface";
                      }
    
                      leaf interface-line-state {
                        type boolean;
                        description
                          "If true, line protocol is up";
                      }
    
                      leaf interface-address {
                        type inet:ipv4-address;
                        description
                          "IPv4 Address of the interface";
                      }
    
                      leaf interface-mask {
                        type uint32;
                        description
                          "Interface IP Mask";
                      }
    
                      leaf interface-area {
                        type string {
                          length "0..16";
                        }
                        description
                          "Area ID string in decimal or dotted-decimal
    format";
                      }
    
                      leaf interface-sid {
                        type uint32;
                        description
                          "Interface SID";
                      }
    
                      leaf interface-sid-php-off {
                        type boolean;
                        description
                          "SID PHP Off";
                      }
    
                      leaf interface-sid-n-flag-clear {
                        type boolean;
                        description
                          "SID N-Flag Clear";
                      }
    
                      leaf interface-strict-spf-sid {
                        type uint32;
                        description
                          "Interface Strict-SPF SID";
                      }
    
                      leaf interface-strict-spf-sid-php-off {
                        type boolean;
                        description
                          "Strict-SPF SID PHP Off";
                      }
    
                      leaf interface-strict-spf-sid-n-flag-clear {
                        type boolean;
                        description
                          "Strict-SPF SID N-Flag Clear";
                      }
    
                      leaf interface-router-id {
                        type inet:ipv4-address;
                        description
                          "Interface Router ID";
                      }
    
                      leaf network-type {
                        type Interface;
                        description
                          "Network type of the interface, whether P2P,
    Broadcast, NBMA or P2MP";
                      }
    
                      leaf ip-mtu {
                        type uint16;
                        description "IP MTU";
                      }
    
                      leaf maximum-packet-size {
                        type uint16;
                        description
                          "Maximum size of the packet";
                      }
    
                      leaf interface-tunnel-flags {
                        type uint32;
                        description
                          "Flags related to Tunnel Interface";
                      }
    
                      leaf interface-link-cost {
                        type uint16;
                        description
                          "Link cost/Metric of the interface";
                      }
    
                      leaf interface-bandwidth {
                        type uint32;
                        description
                          "Bandwidth of the Interface";
                      }
    
                      leaf cfg-cost-fallback {
                        type boolean;
                        description
                          "If true, cost fallback is configured";
                      }
    
                      leaf interface-cost-fallback {
                        type uint16;
                        description
                          "Interface fallback cost";
                      }
    
                      leaf cost-fallback-active {
                        type boolean;
                        description
                          "If true, cost fallback is active";
                      }
    
                      leaf cfg-delay-igp-cost-fallback {
                        type boolean;
                        description
                          "If true,delay igp  cost fallback is configured";
                      }
    
                      leaf interface-igp-cost-fallback {
                        type uint16;
                        description
                          "Interface fallback cost";
                      }
    
                      leaf dealy-igp-cost-fallback-active {
                        type boolean;
                        description
                          "If true, cost fallback is active";
                      }
    
                      leaf cfg-delay-te-cost-fallback {
                        type boolean;
                        description
                          "If true,delay te  cost fallback is configured";
                      }
    
                      leaf interface-delay-te-cost-fallback {
                        type uint32;
                        description
                          "Interface fallback cost";
                      }
    
                      leaf dealy-te-cost-fallback-active {
                        type boolean;
                        description
                          "If true, cost fallback is active";
                      }
    
                      leaf configured-ldp-sync {
                        type boolean;
                        description
                          "If true, configured as LDP sync";
                      }
    
                      leaf configured-ldp-sync-igp-shortcuts {
                        type boolean;
                        description
                          "If true, sync igp shortcuts";
                      }
    
                      leaf interface-ldp-sync {
                        type boolean;
                        description
                          "If true, interface LDP sync is achieved";
                      }
    
                      leaf configured-demand-circuit {
                        type boolean;
                        description
                          "Whether this interface is configured as a demand
    circuit";
                      }
    
                      leaf interface-demand-circuit {
                        type boolean;
                        description
                          "Whether this interface is running as a demand
    circuit";
                      }
    
                      leaf interface-dc-bitless-lsa-count {
                        type uint32;
                        description
                          "Number of LSAs with demand circuit bit not set
    for the area in which the interface is running";
                      }
    
                      leaf transmission-delay {
                        type uint16;
                        description
                          "Interface Transmission delay";
                      }
    
                      leaf ospf-interface-state {
                        type Ospf-interface-state;
                        description
                          "Interface OSPF state";
                      }
    
                      leaf interface-priority {
                        type uint8;
                        description
                          "DR priority of the interface";
                      }
    
                      leaf designated-router {
                        type boolean;
                        description
                          "If true, there is a Designated Router for this
    network";
                      }
    
                      leaf designated-router-id {
                        type inet:ipv4-address;
                        description
                          "Router id of Designated router of this network";
                      }
    
                      leaf designated-router-address {
                        type inet:ipv4-address;
                        description
                          "Interface address of the Designated Router of
    this network";
                      }
    
                      leaf backup-designated-router {
                        type boolean;
                        description
                          "If true, there is a Backup Designated Router for
    this network";
                      }
    
                      leaf backup-designated-router-id {
                        type inet:ipv4-address;
                        description
                          "Router id of Backup Designated Router of this
    network";
                      }
    
                      leaf backup-designated-router-address {
                        type inet:ipv4-address;
                        description
                          "interface address of the Backup Designated
    Router of this network";
                      }
    
                      leaf network-lsa-flush-timer {
                        type uint32;
                        units "second";
                        description
                          "The amount of time in seconds before flush timer
    for old network LSA expires";
                      }
    
                      leaf interface-lsa-filter {
                        type boolean;
                        description
                          "Filter is configured for out going LSAs";
                      }
    
                      leaf hello-interval {
                        type uint32;
                        description
                          "Configured hello interval (s)";
                      }
    
                      leaf hello-interval-ms {
                        type uint32;
                        description
                          "Configured hello interval (ms)";
                      }
    
                      leaf dead-interval {
                        type uint32;
                        description
                          "Configured dead interval (s)";
                      }
    
                      leaf wait-interval {
                        type uint32;
                        description
                          "Configured wait interval (s)";
                      }
    
                      leaf interface-retransmission-interrval {
                        type uint32;
                        description
                          "Configured retransmit interval (s)";
                      }
    
                      leaf interface-nsf-enabled {
                        type boolean;
                        description
                          "If true, NSF is enabled";
                      }
    
                      leaf interface-nsf {
                        type boolean;
                        description
                          "If true, NSF restart in progress on this
    interface";
                      }
    
                      leaf interface-last-nsf {
                        type uint32;
                        description
                          "Time since last NSF restart (s)";
                      }
    
                      leaf passive-interface {
                        type boolean;
                        description
                          "If true, passive interface";
                      }
    
                      leaf next-hello-time {
                        type uint32;
                        description
                          "Time until next Hello (s)";
                      }
    
                      leaf next-hello-time-ms {
                        type uint32;
                        description
                          "Time until next Hello (ms)";
                      }
    
                      leaf ttl-security-enabled {
                        type boolean;
                        description
                          "TTL security enabled on the interface";
                      }
    
                      leaf ttl-security-hop-count {
                        type uint32;
                        description
                          "TTL security hop count for this interface";
                      }
    
                      leaf interfaceis-madj {
                        type boolean;
                        description
                          "If true, interface is multi-area";
                      }
    
                      leaf interface-madj-count {
                        type uint16;
                        description
                          "Total number of multi-area";
                      }
    
                      leaf prefix-suppress-primary-addresses {
                        type boolean;
                        description
                          "whether Prefix Suppression for primary addresses
    is enabled";
                      }
    
                      leaf prefix-suppress-secondary-addresses {
                        type boolean;
                        description
                          "Whether Prefix Suppression for secondary
    addresses is enabled";
                      }
    
                      leaf is-loopback-stub-network {
                        type boolean;
                        description
                          "If true, loopback interface is advertised as a
    stub network";
                      }
    
                      leaf interface-ack-list-count {
                        type uint32;
                        description
                          "Ack List Count";
                      }
    
                      leaf interface-ack-list-high-watermark {
                        type uint32;
                        description
                          "Ack List High Watermark";
                      }
    
                      leaf registered-for-link-down-fast-detection {
                        type boolean;
                        description
                          "Whether this interface is registered for Link
    Down Fast Detection";
                      }
    
                      leaf fast-detect-hold-down-time {
                        type uint32;
                        description
                          "Hold-down time in ms for fast-detect event";
                      }
    
                      leaf interface-fast-detect-hold-down {
                        type boolean;
                        description
                          "Link in hold-down state due to fast detect event";
                      }
    
                      leaf fast-detect-hold-down-time-remaining {
                        type uint32;
                        description
                          "Remaining hold down time in ms";
                      }
    
                      leaf fast-reroute-type {
                        type Ipfrr;
                        description
                          "IP Fast Reroute Type";
                      }
    
                      leaf fast-reroute-topology-independent-lfa {
                        type boolean;
                        description
                          "Topology Independent LFA";
                      }
    
                      leaf srlg-default-weight {
                        type uint32;
                        description
                          "SRLG Default weight if not configured
    specifically for this SRLG";
                      }
    
                      leaf interface-unnum {
                        type xr:Interface-name;
                        description
                          "Unnumbered interface";
                      }
    
                      leaf interface-forw {
                        type boolean;
                        description
                          "Forward reference interface";
                      }
    
                      leaf interface-pri-labels {
                        type uint8;
                        description
                          "Max number of primary labels";
                      }
    
                      leaf interface-bkp-labels {
                        type uint8;
                        description
                          "Max number of backup labels";
                      }
    
                      leaf interface-srte-labels {
                        type uint8;
                        description
                          "Max number of SRTE labels";
                      }
    
                      leaf interface-srat-cap {
                        type uint8;
                        description
                          "SRTE automatic path capability";
                      }
    
                      leaf pm-delay-set {
                        type boolean;
                        description
                          "PerfMeas Delay values available";
                      }
    
                      leaf link-delay-avg {
                        type uint32;
                        description
                          "PerfMeas Average Link Delay";
                      }
    
                      leaf link-delay-min {
                        type uint32;
                        description
                          "PerfMeas Minimum Link Delay";
                      }
    
                      leaf link-delay-max {
                        type uint32;
                        description
                          "PerfMeas Maximum Link Delay";
                      }
    
                      leaf pm-dealy-average-a-bit {
                        type boolean;
                        description
                          "If true, PM delay avg bit is set";
                      }
    
                      leaf pm-dealy-min-max-a-bit {
                        type boolean;
                        description
                          "If true, PM delay min_max bit is set";
                      }
    
                      leaf link-delay-avg-raw {
                        type uint32;
                        description
                          "PerfMeas Average Link Delay Raw";
                      }
    
                      leaf link-delay-min-raw {
                        type uint32;
                        description
                          "PerfMeas Minimum Link Delay Raw";
                      }
    
                      leaf link-delay-max-raw {
                        type uint32;
                        description
                          "PerfMeas Maximum Link Delay Raw";
                      }
    
                      leaf link-delay-norm-intval {
                        type uint32;
                        description
                          "PerfMeas Delay Norm Interval";
                      }
    
                      leaf link-delay-norm-offset {
                        type uint32;
                        description
                          "PerfMeas Delay Norm Offset";
                      }
    
                      leaf link-delay-var {
                        type uint32;
                        description
                          "PerfMeas Link Delay Variance";
                      }
    
                      leaf pm-loss-set {
                        type boolean;
                        description
                          "PerfMeas Link Loss values available";
                      }
    
                      leaf link-loss {
                        type uint32;
                        description
                          "PerfMeas Link Loss";
                      }
    
                      leaf pmbw-util-set {
                        type boolean;
                        description
                          "PerfMeas BW Util values available";
                      }
    
                      leaf total-bandwidth {
                        type uint64;
                        description
                          "PerfMeas Total Bandwidth";
                      }
    
                      leaf rsvpte-bandwidth {
                        type uint64;
                        description
                          "PerfMeas RSVP-TE Bandwidth";
                      }
    
                      leaf remote-lfa {
                        type uint8;
                        description "Remote LFA";
                      }
    
                      leaf srte-metric-set {
                        type boolean;
                        description
                          "SRTE Metric available";
                      }
    
                      leaf srte-metric {
                        type uint32;
                        description
                          "SRTE Metric";
                      }
    
                      leaf srte-app-weight {
                        type uint32;
                        description
                          "SRTE App Weight";
                      }
    
                      leaf srte-ext-admin-group-set {
                        type boolean;
                        description
                          "SRTE Ext. Admin Group available";
                      }
    
                      leaf interface-weight {
                        type uint32;
                        description
                          "Configured Interface weight";
                      }
    
                      leaf if-rib-l-csync-needed {
                        type boolean;
                        description
                          "rib lc sync needed";
                      }
    
                      leaf if-rib-l-csync {
                        type boolean;
                        description
                          "rib lc sync state";
                      }
    
                      leaf conditional-advertising-enabled {
                        type boolean;
                        description
                          "If Conditional advertising based on route-policy
    is enabled";
                      }
    
                      leaf conditional-advertise-policy-name {
                        type string;
                        description
                          "Name of the applied policy for Conditional
    advertising";
                      }
    
                      leaf conditional-advertising-result {
                        type boolean;
                        description
                          "Result of the policy applied for Conditional
    advertising";
                      }
    
                      list srlg {
                        description
                          "SRLG Values";
                        leaf entry {
                          type uint32;
                          description
                            "SRLG Values";
                        }
                      }  // list srlg
    
                      list srlg-weight {
                        description
                          "SRLG Weight";
                        leaf entry {
                          type uint32;
                          description
                            "SRLG Weight";
                        }
                      }  // list srlg-weight
    
                      list srtete-ext-admin-group {
                        description
                          "SRTE Ext. Admin Group";
                        leaf entry {
                          type uint32;
                          description
                            "SRTE Ext. Admin Group";
                        }
                      }  // list srtete-ext-admin-group
    
                      list interface-neighbor {
                        description
                          "Information for neighbors on the interface";
                        leaf interface-neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor Router ID";
                        }
    
                        leaf interface-neighbor-cost {
                          type uint32;
                          description
                            "Cost of link to neighbor";
                        }
    
                        leaf neighbor-dr {
                          type boolean;
                          description
                            "If true, Designated router";
                        }
    
                        leaf neighbor-bdr {
                          type boolean;
                          description
                            "If true, Backup designated router";
                        }
    
                        leaf suppress-hello {
                          type boolean;
                          description
                            "If true, hellos suppressed";
                        }
                      }  // list interface-neighbor
    
                      list interface-madj {
                        description
                          "Information for multi-area on the interface";
                        leaf interface-area {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted-decimal
    format";
                        }
    
                        leaf madj-area-id {
                          type uint32;
                          description "Area ID";
                        }
    
                        leaf interface-neighbor-count {
                          type uint16;
                          description
                            "Number of Neighbors";
                        }
    
                        leaf interface-adj-neighbor-count {
                          type uint16;
                          description
                            "Total number of Adjacent Neighbors";
                        }
    
                        leaf interface-link-cost {
                          type uint16;
                          description
                            "Cost/Metric of the Interface link";
                        }
    
                        leaf ospf-interface-state {
                          type Ospf-interface-state;
                          description
                            "Interface OSPF state";
                        }
                      }  // list interface-madj
    
                      list ipfrr-tiebreakers {
                        description
                          "IPFRR-Tiebreakers list";
                        leaf tiebreaker-type {
                          type Ipfrr-tbrkr;
                          description
                            "Tiebreaker Type, whether LC-Disjoint, Node
    Protecting etc";
                        }
    
                        leaf tiebreaker-index {
                          type uint32;
                          description
                            "Tiebreaker Index corresponding to the tiebreaker
    type";
                        }
                      }  // list ipfrr-tiebreakers
    
                      list ip-sec-addr {
                        description
                          "Secondary IP address list";
                        leaf secondary-addr {
                          type inet:ipv4-address;
                          description
                            "Secondary Address Type";
                        }
    
                        leaf secondary-prefix {
                          type uint32;
                          description
                            "Secondary Prefix Length";
                        }
                      }  // list ip-sec-addr
    
                      list sr-adj-sid {
                        description
                          "SR Configured Adjacency SIDs";
                        leaf adj-sid-label {
                          type uint32;
                          description
                            "Adjacency SID Label";
                        }
    
                        leaf protected-adj-sid {
                          type boolean;
                          description
                            "Adjacency SID Protection";
                        }
    
                        leaf adj-sid-is-active {
                          type boolean;
                          description
                            "Adj sid is allocated to a neighbor";
                        }
    
                        leaf adj-sid-inactive-reason {
                          type Ospf-sr-adj-sid-inactive-reason;
                          description
                            "Adjacency SID Inactive Reason";
                        }
                      }  // list sr-adj-sid
                    }  // list interface
                  }  // container interfaces
                }  // container interface-information
    
                container border-routers {
                  description
                    "Border router table";
                  list border-router {
                    key "border-router-id";
                    description
                      "Information for a particular border router";
                    leaf border-router-id {
                      type inet:ipv4-address-no-zone;
                      description
                        "Router address";
                    }
    
                    leaf border-router-id-xr {
                      type inet:ipv4-address;
                      description
                        "Router ID of Border Router";
                    }
    
                    list border-router-path {
                      description
                        "List of Border Router paths";
                      leaf border-router-route-type {
                        type Ospf-route;
                        description
                          "Whether it is an intra-area or inter-area route";
                      }
    
                      leaf border-router-route-metric {
                        type uint32;
                        description "Metric";
                      }
    
                      leaf border-router-next-hop {
                        type inet:ipv4-address;
                        description
                          "Next hop address";
                      }
    
                      leaf border-router-next-hop-interface-name {
                        type xr:Interface-name;
                        description
                          "Next hop Interface";
                      }
    
                      leaf border-router-type {
                        type Ospf-br;
                        description
                          "Border router type, whether it is an ABR, ASBR
    or both";
                      }
    
                      leaf border-router-area-id {
                        type string {
                          length "0..16";
                        }
                        description
                          "Area string in decimal or dotted-decimal format";
                      }
    
                      leaf spf-version {
                        type uint64;
                        description
                          "SPF run instance count";
                      }
                    }  // list border-router-path
                  }  // list border-router
                }  // container border-routers
    
                container process-information {
                  description
                    "Container for OSPF Process information";
                  container protocol-areas {
                    description
                      "Protocol Area table";
                    list protocol-area {
                      description
                        "Area information";
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description
                          "Area ID if in integer format";
                      }
    
                      leaf address {
                        type inet:ipv4-address-no-zone;
                        description
                          "Area ID if in IP address format";
                      }
    
                      leaf protcol-area {
                        type string {
                          length "0..16";
                        }
                        description
                          "Area ID string in decimal and dotted-decimal
    format";
                      }
    
                      leaf protocol-mpls {
                        type boolean;
                        description
                          "MPLS-TE enabled";
                      }
    
                      leaf protocol-area-dist-list-in {
                        type string;
                        description
                          "Distribute List In";
                      }
    
                      list protocol-interface {
                        description
                          "Interface list";
                        leaf protocol-interface-name {
                          type xr:Interface-name;
                          description
                            "Interface";
                        }
    
                        leaf protocol-authentication-type {
                          type Authentication;
                          description
                            "Authentication type";
                        }
    
                        leaf protocol-interface-dist-list-in {
                          type string;
                          description
                            "Distribute List In";
                        }
                      }  // list protocol-interface
                    }  // list protocol-area
                  }  // container protocol-areas
    
                  container protocol-summary {
                    description
                      "Basic OSPF protocol information";
                    leaf protocol-router-id {
                      type inet:ipv4-address;
                      description "Router ID";
                    }
    
                    leaf protocol-distance {
                      type uint32;
                      description
                        "Administrative distance";
                    }
    
                    leaf administrative-distance-inter-area {
                      type uint32;
                      description
                        "Administrative Distance for Inter Area routes";
                    }
    
                    leaf administrative-distance-external {
                      type uint32;
                      description
                        "Administrative Distance for External routes";
                    }
    
                    leaf protocol-nsf {
                      type boolean;
                      description
                        "True if NSF enabled";
                    }
    
                    leaf dist-list-in {
                      type string;
                      description
                        "Distribute List In";
                    }
                  }  // container protocol-summary
    
                  container redistributions {
                    description
                      "Redistribution information table";
                    list redistribution {
                      description
                        "Redistribution information";
                      leaf protocol-name {
                        type xr:Cisco-ios-xr-string;
                        description
                          "Name of the protocol being redistributed";
                      }
    
                      leaf process-name {
                        type xr:Cisco-ios-xr-string;
                        description
                          "Process/Instance name of the protocol being
    redistributed";
                      }
    
                      container redistribution-protocol {
                        description
                          "Protocol Information";
                        leaf protocol-type {
                          type Redist-protocol;
                          description
                            "ProtocolType";
                        }
    
                        leaf isis-instance-id {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-isis'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_ISIS'";
                          }
                          type String1;
                          description
                            "ISIS instance identifier";
                        }
    
                        leaf ospf-process-id {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-ospf'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_OSPF'";
                          }
                          type String1;
                          description
                            "OSPF process identifier";
                        }
    
                        leaf bgp-as-number {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-bgp'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_BGP'";
                          }
                          type String1;
                          description
                            "BGP Autonomous System Number";
                        }
    
                        leaf eigrp-as-number {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-eigrp'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_EIGRP'";
                          }
                          type String1;
                          description
                            "Autonomous System Number";
                        }
    
                        leaf connected-instance {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-connected'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_CONNECTED'";
                          }
                          type String1;
                          description
                            "Name of the Connected instance";
                        }
                      }  // container redistribution-protocol
    
                      leaf metric-flag {
                        type boolean;
                        description
                          "If true, Metric configured";
                      }
    
                      leaf metric {
                        type uint32;
                        description
                          "Route metric";
                      }
    
                      leaf rib-metric-flag {
                        type boolean;
                        description
                          "If true, RIB metric is used";
                      }
    
                      leaf metric-type {
                        type uint32;
                        description
                          "Redistribute as External type 1 or 2 ";
                      }
    
                      leaf tag-flag {
                        type boolean;
                        description
                          "If true, tag is configured";
                      }
    
                      leaf tag {
                        type uint32;
                        description "Route Tag";
                      }
    
                      leaf keep-bgp-med {
                        type boolean;
                        description
                          "If true, BGP MED value is preserved";
                      }
    
                      leaf keep-bgp-def-info {
                        type boolean;
                        description
                          "If true, BGP metric and metric type are
    preserved for default route";
                      }
    
                      leaf redist-summary {
                        type boolean;
                        description
                          "If true, routes will be redistributed as Summary
    LSAs instead of External LSAs";
                      }
    
                      leaf policy-name {
                        type string;
                        description
                          "Name of applied policy";
                      }
    
                      leaf classless {
                        type boolean;
                        description
                          "Whether to use CIDR";
                      }
    
                      leaf nssa-only {
                        type boolean;
                        description
                          "To NSSA areas only";
                      }
                    }  // list redistribution
                  }  // container redistributions
    
                  container process-areas {
                    description
                      "Process Area table";
                    list process-area {
                      description
                        "Detailed information for a particular area";
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description
                          "Area ID if in integer format";
                      }
    
                      leaf address {
                        type inet:ipv4-address-no-zone;
                        description
                          "Area ID if in IP address format";
                      }
    
                      leaf area-id-string {
                        type string {
                          length "0..16";
                        }
                        description
                          "Area ID string";
                      }
    
                      leaf backbone-area-active {
                        type boolean;
                        description
                          "If true, Backbone area is active";
                      }
    
                      leaf area-interface-count {
                        type uint16;
                        description
                          "Number of interfaces in the area";
                      }
    
                      leaf area-stub {
                        type boolean;
                        description
                          "If true, stub area";
                      }
    
                      leaf area-total-stub {
                        type boolean;
                        description
                          "If true, totally stubby area";
                      }
    
                      leaf stub-default-cost {
                        type uint32;
                        description
                          "Default cost for Stub or NSSA area";
                      }
    
                      leaf area-nssa {
                        type boolean;
                        description
                          "If true, area is a NSSA";
                      }
    
                      leaf nssa-no-redistribution {
                        type boolean;
                        description
                          "If true, No redistribution into this NSSA area";
                      }
    
                      leaf nssa-translate {
                        type boolean;
                        description
                          "If true, perform 7/5 translation";
                      }
    
                      leaf nssa-translate-always {
                        type boolean;
                        description
                          "If true, perform 7/5 translation always";
                      }
    
                      leaf nssa-default {
                        type boolean;
                        description
                          "If true, generate NSSA default route";
                      }
    
                      leaf te-enabled {
                        type boolean;
                        description
                          "If true, MPLS-TE enabled";
                      }
    
                      leaf te-topology-version {
                        type uint32;
                        description
                          "TE area topology version number";
                      }
    
                      leaf external-out {
                        type boolean;
                        description
                          "If true, advertise intra-area prefixes as
    external";
                      }
    
                      leaf summary-in {
                        type boolean;
                        description
                          "If true, advertise redistributedprefixes as
    summary";
                      }
    
                      leaf segment-routing {
                        type Sr-dp;
                        description
                          "If true, Segment Routing enabled";
                      }
    
                      leaf sr-strict-spf-cap {
                        type boolean;
                        description
                          "If true, All routers in Area are SR Strict-SPF
    Capable";
                      }
    
                      leaf sr-strict-spfsids-available {
                        type boolean;
                        description
                          "If true, All routers in Area have SR Strict-SPF
    SIDs";
                      }
    
                      leaf sr-microloop-avoidance-active {
                        type boolean;
                        description
                          "If true, Segment routing Uloop avoidance
    is currently active in this area";
                      }
    
                      leaf sr-microloop-avoidance-event-type {
                        type Sr-uloop-event;
                        description
                          "Event for which SR uloop is triggered
    Link Up/Link Down";
                      }
    
                      leaf sr-microloop-avoidance-near-end-id {
                        type inet:ipv4-address;
                        description
                          "Link State ID of the near end
    of the topology change";
                      }
    
                      leaf sr-microloop-avoidance-far-end-id {
                        type inet:ipv4-address;
                        description
                          "Link State ID of the far end
    of the topology change";
                      }
    
                      leaf sr-microloop-avoidance-pseudonode-id {
                        type inet:ipv4-address;
                        description
                          "Link State ID of the pseudo node,
    if the change is on a broadcast link";
                      }
    
                      leaf authentication-type {
                        type Authentication;
                        description
                          "Authentication type used for the area";
                      }
    
                      leaf spf-count {
                        type uint32;
                        description
                          "Number of SPF calculations run";
                      }
    
                      leaf area-policy-in {
                        type boolean;
                        description
                          "If true, inbound policy is configured";
                      }
    
                      leaf area-policy-in-name {
                        type string;
                        description
                          "Inbound summary lsa filtering policy";
                      }
    
                      leaf area-policy-out {
                        type boolean;
                        description
                          "If true, outbound policy is configured";
                      }
    
                      leaf area-policy-out-name {
                        type string;
                        description
                          "Outbound summary lsa filtering policy";
                      }
    
                      leaf area-lsa-count {
                        type uint32;
                        description
                          "Number of LSAs in the Area";
                      }
    
                      leaf area-lsa-checksum {
                        type uint32;
                        description
                          "Sum of all area LSAs checksum";
                      }
    
                      leaf area-opaque-lsa-count {
                        type uint32;
                        description
                          "Number of Opaque LSAs in the Area";
                      }
    
                      leaf area-opaque-lsa-checksum {
                        type uint32;
                        description
                          "Sum of opaque LSA checksums";
                      }
    
                      leaf area-dc-bitless-lsa-count {
                        type uint32;
                        description
                          "Number of LSA with demand circuit bit not set";
                      }
    
                      leaf indication-lsa-count {
                        type uint32;
                        description
                          "Number of indication LSAs";
                      }
    
                      leaf dna-lsa-count {
                        type uint32;
                        description
                          "Number of DoNotAge LSAs";
                      }
    
                      leaf flood-list-length {
                        type uint32;
                        description
                          "Number of LSAs which need to be flooded";
                      }
    
                      leaf area-lfa-interface-count {
                        type uint32;
                        description
                          "Number of LFA enabled interfaces";
                      }
    
                      leaf area-per-prefix-lfa-interface-count {
                        type uint32;
                        description
                          "Number of Per Prefix LFA enabled interfaces";
                      }
    
                      leaf area-lfa-revision {
                        type uint32;
                        description
                          "Area LFA revision";
                      }
    
                      leaf area-adj-stag-num-nbr-forming {
                        type uint16;
                        description
                          "Num of nbrs currently forming";
                      }
    
                      leaf area-num-nbr-full {
                        type uint16;
                        description
                          "Num of full nbrs in area";
                      }
    
                      list area-range {
                        description
                          "List of ranges to summarize";
                        leaf range-prefix {
                          type inet:ipv4-address;
                          description
                            "IP prefix for summarization";
                        }
    
                        leaf range-mask {
                          type inet:ipv4-address;
                          description
                            "Network mask";
                        }
    
                        leaf cost {
                          type uint32;
                          description "Cost";
                        }
    
                        leaf advertise-flag {
                          type boolean;
                          description
                            "Whether to advertise Summary LSAs for this range";
                        }
                      }  // list area-range
                    }  // list process-area
                  }  // container process-areas
    
                  container process-summary {
                    description
                      "Basic OSPF summary information";
                    container domain-id {
                      description
                        "Domain ID information";
                      container primary-domain-id {
                        description
                          "Primary Domain ID";
                        leaf domain-id-type {
                          type uint16;
                          description
                            "Domain ID Type";
                        }
    
                        leaf domain-id-value {
                          type yang:hex-string;
                          description
                            "Domain ID value";
                        }
                      }  // container primary-domain-id
    
                      list secondary-domain-id {
                        description
                          "List of secondary domain IDs";
                        leaf domain-id-type {
                          type uint16;
                          description
                            "Domain ID Type";
                        }
    
                        leaf domain-id-value {
                          type yang:hex-string;
                          description
                            "Domain ID value";
                        }
                      }  // list secondary-domain-id
                    }  // container domain-id
    
                    leaf vrf-active {
                      type boolean;
                      description
                        "If true, VRF configured";
                    }
    
                    leaf role-standby {
                      type boolean;
                      description
                        "If true, Role is Standby, Active otherwise";
                    }
    
                    leaf role {
                      type uint32;
                      description
                        "Role, V1/V2 Active/Standby";
                    }
    
                    leaf nsr-enabled {
                      type boolean;
                      description
                        "If true, NSR is enabled";
                    }
    
                    leaf nsr-switchover-on-restart {
                      type boolean;
                      description
                        "Trigger RP Switchover on detectable process
    restart";
                    }
    
                    leaf igp-intact-on {
                      type boolean;
                      description
                        "If true, running in IGP-Intact mode";
                    }
    
                    leaf router-id {
                      type inet:ipv4-address;
                      description "Router ID";
                    }
    
                    leaf tos-options {
                      type uint8;
                      description
                        "Type of Service supported";
                    }
    
                    leaf opaque-capable {
                      type boolean;
                      description
                        "Whether the OSPF instance is Opaque LSA capable";
                    }
    
                    leaf area-border-router {
                      type boolean;
                      description
                        "If true, is an Area Border Router";
                    }
    
                    leaf as-border-router {
                      type boolean;
                      description
                        "If true, is an AS Border Router";
                    }
    
                    leaf vrf-lite-enabled {
                      type boolean;
                      description
                        "If true, vrf lite is enabled";
                    }
    
                    leaf capability-prefer-type7 {
                      type boolean;
                      description
                        "If true, prefer type 7 LSAs over type 5";
                    }
    
                    leaf maximum-metric-start {
                      type boolean;
                      description
                        "If true, originate Router LSA with maximum
    metric";
                    }
    
                    leaf maximum-metric-start-timer {
                      type uint32;
                      description
                        "Time remaining for hold down timer (s)";
                    }
    
                    leaf maximum-metric-set-reason {
                      type Max-metric-set-reason;
                      description
                        "Reason to set Max-metric";
                    }
    
                    leaf maximum-metric-abr-off-mode {
                      type boolean;
                      description
                        "If true, ABR duties temporarily disabled";
                    }
    
                    leaf maximum-metric-abr-off-reasons {
                      type Ospf-max-metric-abr-off-reasons;
                      description
                        "Reasons for ABR duties being temporarily
    disabled";
                    }
    
                    leaf maximum-metric-abr-off-buffer-time {
                      type uint32;
                      units "second";
                      description
                        "Buffer time in seconds since last neighbor
    activity, to remain in max-metric ABR off state";
                    }
    
                    leaf spf-start-time {
                      type uint32;
                      description
                        "Scheduling delay for SPF (ms)";
                    }
    
                    leaf spf-hold-time {
                      type uint32;
                      description
                        "Minimum delay time between SPF runs (ms)";
                    }
    
                    leaf spf-maximum-time {
                      type uint32;
                      description
                        "Maximum delay time between SPF runs (ms)";
                    }
    
                    leaf spf-prefix-priority {
                      type boolean;
                      description
                        "If true, prefix-priority policy is configured";
                    }
    
                    leaf spf-prefix-priority-route-policy {
                      type string;
                      description
                        "Route-policy that governs SPF Prefix-priority";
                    }
    
                    leaf lsa-start-time {
                      type int32;
                      description
                        "Initial LSA throttle delay (ms)";
                    }
    
                    leaf lsa-hold-time {
                      type uint32;
                      description
                        "Second delay before generating next LSA (ms)";
                    }
    
                    leaf lsa-maximum-time {
                      type uint32;
                      description
                        "Maximum delay before generating an LSA (ms)";
                    }
    
                    leaf minimum-lsa-interval {
                      type uint32;
                      description
                        "Minimum time between LSA regeneration (ms)";
                    }
    
                    leaf lsa-refresh-interval {
                      type uint32;
                      description
                        "LSA refresh interval (sec)";
                    }
    
                    leaf minimum-lsa-arrival-interval {
                      type uint32;
                      description
                        "Minimum time between accepting LSAs (ms)";
                    }
    
                    leaf if-flood-pacing-interval {
                      type uint16;
                      description
                        "Flood pacing timer (ms)";
                    }
    
                    leaf if-retrans-pacing-interval {
                      type uint16;
                      description
                        "Retransmission pacing timer (ms)";
                    }
    
                    leaf adj-stag-init-num-nbr {
                      type uint16;
                      description
                        "Num of nbrs brought up initially per area";
                    }
    
                    leaf adj-stag-max-num-nbr {
                      type uint16;
                      description
                        "Max num of nbrs brought up simultaneously per
    OSPF instance";
                    }
    
                    leaf adj-stagger-enabled {
                      type boolean;
                      description
                        "If true, OSPF Adjacency Staggering is configured";
                    }
    
                    leaf adj-stag-num-nbr-forming {
                      type uint16;
                      description
                        "Num of nbrs currently forming for OSPF instance";
                    }
    
                    leaf number-nbrs-full {
                      type uint16;
                      description
                        "Num of full nbrs";
                    }
    
                    leaf as-lsa-count {
                      type uint32;
                      description
                        "Number of AS scope LSAs";
                    }
    
                    leaf as-lsa-checksum {
                      type uint32;
                      description
                        "Sum of AS scope LSA checksum";
                    }
    
                    leaf opaque-lsa-count {
                      type uint32;
                      description
                        "Number of Opaque LSAs";
                    }
    
                    leaf opaque-lsa-checksum {
                      type uint32;
                      description
                        "Sum of opaque LSA checksum";
                    }
    
                    leaf as-dc-bitless-lsa-count {
                      type uint32;
                      description
                        "Number of External and AS Opaque LSAs with
    demand circut bit not set";
                    }
    
                    leaf as-dna-lsa-count {
                      type uint32;
                      description
                        "Number of External and AS Opaque LSAs with
    DoNotAge set ";
                    }
    
                    leaf area-count {
                      type uint16;
                      description
                        "Number of areas";
                    }
    
                    leaf normal-area-count {
                      type uint16;
                      description
                        "Number of normal Areas";
                    }
    
                    leaf stub-area-count {
                      type uint16;
                      description
                        "Number of Stub and Total Stub Areas";
                    }
    
                    leaf nssa-area-count {
                      type uint16;
                      description
                        "Number of NSSA Areas";
                    }
    
                    leaf maximum-interfaces {
                      type uint32;
                      description
                        "Maximum number of interfaces";
                    }
    
                    leaf as-lsa-flood-list-length {
                      type uint32;
                      description
                        "Length of AS LSAs flood list";
                    }
    
                    leaf nsf-enabled {
                      type boolean;
                      description
                        "If true, NSF enabled";
                    }
    
                    leaf last-nsf-time {
                      type uint32;
                      description
                        " Length of time since the last NSF (s)";
                    }
    
                    leaf nsf-time {
                      type uint32;
                      description
                        "Total time to complete NSF (s)";
                    }
    
                    leaf redistribution-limit {
                      type uint32;
                      description
                        "The number of redistributed prefixes allowed";
                    }
    
                    leaf redistribution-threshold {
                      type uint32;
                      description
                        "When the number of redistributed prefixes
    reaches this threshold, a warning message is
    issued";
                    }
    
                    leaf redistribution-limit-warn {
                      type boolean;
                      description
                        "If true, only a syslog message is printed when
    redistribution prefix limit is reached";
                    }
    
                    leaf graceful-shutdown-retention-time {
                      type uint32;
                      description
                        "Amount of time routes are retained after
    graceful shutdown (s)";
                    }
    
                    leaf graceful-shutdown-state {
                      type Gs-state;
                      description
                        "State of graceful shutdown";
                    }
    
                    leaf table-prefix-limit-reached {
                      type boolean;
                      description
                        "If true, prefix limit for table has been
    reached";
                    }
    
                    leaf non-self-lsa-count {
                      type uint32;
                      description
                        "Non self-generated LSA count";
                    }
    
                    leaf max-lsa-enabled {
                      type boolean;
                      description
                        "If true, max-lsa protection enabled";
                    }
    
                    leaf max-lsa-limit {
                      type uint32;
                      description
                        "Maximum allowed number of non self-generated
    LSAs";
                    }
    
                    leaf max-lsa-treshold {
                      type uint32;
                      description
                        "max-lsa protection warning threshold";
                    }
    
                    leaf max-lsa-warning-only {
                      type boolean;
                      description
                        "Warning only when max-lsa reached";
                    }
    
                    leaf max-lsa-ignore-time {
                      type uint32;
                      description
                        "Time ignoring new LSAs after max-lsa reached";
                    }
    
                    leaf max-lsa-reset-time {
                      type uint32;
                      description
                        "Time after which LSA protection counter is reset";
                    }
    
                    leaf max-lsa-ignore-limit {
                      type uint32;
                      description
                        "Max allowed number of entering ignore state";
                    }
    
                    leaf max-lsa-ignore-count {
                      type uint32;
                      description
                        "How many times ignore state has been entered";
                    }
    
                    leaf max-lsa-ignore-timer {
                      type uint32;
                      description
                        "Remaining time when ignore timer is running";
                    }
    
                    leaf max-lsa-reset-timer {
                      type uint32;
                      description
                        "Remaining time when reset timer is running";
                    }
    
                    leaf context-name {
                      type string {
                        length "0..32";
                      }
                      description
                        "SNMP Context name";
                    }
    
                    leaf snmp-trap-enabled {
                      type boolean;
                      description
                        "If true, snmp trap is enabled";
                    }
    
                    leaf ucmp {
                      type boolean;
                      description
                        "If true, UCMP is enabled";
                    }
    
                    leaf ucmp-prefix-list {
                      type string;
                      description
                        "UCMP Prefix-list";
                    }
    
                    leaf ucmp-variance {
                      type int32;
                      description
                        "UCMP Variance";
                    }
    
                    leaf ucmp-delay {
                      type uint32;
                      description
                        "Delay between end of SPF and start of UCMP
    calculation (ms)";
                    }
    
                    leaf microloop-avoidance-type {
                      type Uloop-avoidance;
                      description
                        "Microloop avoidance type configured";
                    }
    
                    leaf microloop-avoidance-delay {
                      type uint32;
                      description
                        "Microloop delay time after which actual
    post convergence paths are given to RIB (s)";
                    }
    
                    leaf microloop-avoidance-active {
                      type boolean;
                      description
                        "If true, Uloop is active";
                    }
    
                    leaf microloop-avoidance-delay-expiry {
                      type uint32;
                      description
                        "Remaining time for uloop delay timer
    to expire (s)";
                    }
    
                    leaf lsd-connected {
                      type boolean;
                      description
                        "True if connected to LSD";
                    }
    
                    leaf lsd-registered {
                      type boolean;
                      description
                        "True if registered with LSD";
                    }
    
                    leaf lsd-bound {
                      type boolean;
                      description
                        "True if bound to LSD";
                    }
    
                    leaf lsd-connection-revision {
                      type uint32;
                      description
                        "LSD Connection Revision";
                    }
    
                    leaf srgb-configured {
                      type boolean;
                      description
                        "True if Segment Routing Global Block configured";
                    }
    
                    leaf srgb-start {
                      type uint32;
                      description
                        "Segment Routing Global Block start label value";
                    }
    
                    leaf srgb-end {
                      type uint32;
                      description
                        "Segment Routing Global Block end label value";
                    }
    
                    leaf srgb-status {
                      type Ospf-srgb-status;
                      description
                        "Segment Routing Global Block allocation status";
                    }
    
                    leaf sr-strict-spf-cap {
                      type boolean;
                      description
                        "True if Segment Routing Strict-SPF capable";
                    }
    
                    leaf srlb-start {
                      type uint32;
                      description
                        "Segment Routing Local Block start label value";
                    }
    
                    leaf srlb-end {
                      type uint32;
                      description
                        "Segment Routing Local Block end label value";
                    }
    
                    leaf srlb-status {
                      type Ospf-srlb-status;
                      description
                        "Segment Routing Local Block allocation status";
                    }
    
                    leaf spf-suspended {
                      type boolean;
                      description
                        "If true, SPF is currently suspended";
                    }
    
                    list maximum-metric {
                      description
                        "Max-metric list";
                      container maximum-metric-time-unset {
                        description
                          "Time max-metric condition was cleared";
                        leaf second {
                          type uint32;
                          description "Second";
                        }
    
                        leaf nanosecond {
                          type uint32;
                          description
                            "Nanosecond";
                        }
                      }  // container maximum-metric-time-unset
    
                      leaf max-metric-reason {
                        type uint8;
                        description
                          "Reason to set Max-metric";
                      }
    
                      leaf max-metric-enabled {
                        type boolean;
                        description
                          "Whether Max-metric is enabled";
                      }
    
                      leaf unset-maximum-metric {
                        type boolean;
                        description
                          "If true, BGP is up, no maximum metric Router LSA";
                      }
    
                      leaf saved-unset-maximum-metric {
                        type boolean;
                        description
                          "Saved UnsetMaximumMetric";
                      }
    
                      leaf maximum-metric-start-time {
                        type uint32;
                        description
                          "Time remaining until we will start using normal
    metrics (s)";
                      }
    
                      leaf saved-startup-time {
                        type uint32;
                        description
                          "Hold time configured (s)";
                      }
    
                      leaf maximum-metric-include-stubs {
                        type boolean;
                        description
                          "If true, set max-metric in stub links";
                      }
    
                      leaf maximum-metric-summary-lsa {
                        type boolean;
                        description
                          "If true, advertise max-metric in summary-LSAs";
                      }
    
                      leaf maximum-metric-summary-lsa-metric {
                        type uint32;
                        description
                          "Max-metric value to advertise in summary-LSAs";
                      }
    
                      leaf maximum-metric-external-lsa {
                        type boolean;
                        description
                          "If true, advertise max-metric in external-LSAs";
                      }
    
                      leaf maximum-metric-external-lsa-metric {
                        type uint32;
                        description
                          "Max-metric value to advertise in external-LSAs";
                      }
    
                      leaf maximum-metric-originated-for {
                        type uint32;
                        description
                          "Time max-metric was used for";
                      }
    
                      leaf maximum-metric-unset-reason {
                        type Max-metric-unset-reason;
                        description
                          "Reason to unset Max-metric";
                      }
                    }  // list maximum-metric
    
                    list redistribution {
                      description
                        "Redistribution list";
                      container redistribution-protocol {
                        description
                          "Protocol Information";
                        leaf protocol-type {
                          type Redist-protocol;
                          description
                            "ProtocolType";
                        }
    
                        leaf isis-instance-id {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-isis'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_ISIS'";
                          }
                          type String1;
                          description
                            "ISIS instance identifier";
                        }
    
                        leaf ospf-process-id {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-ospf'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_OSPF'";
                          }
                          type String1;
                          description
                            "OSPF process identifier";
                        }
    
                        leaf bgp-as-number {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-bgp'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_BGP'";
                          }
                          type String1;
                          description
                            "BGP Autonomous System Number";
                        }
    
                        leaf eigrp-as-number {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-eigrp'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_EIGRP'";
                          }
                          type String1;
                          description
                            "Autonomous System Number";
                        }
    
                        leaf connected-instance {
                          when
                            "../protocol-type = 'mgmt-rib-protocol-connected'" {
                            description
                              "../ProtocolType = 'MGMT_RIB_PROTOCOL_CONNECTED'";
                          }
                          type String1;
                          description
                            "Name of the Connected instance";
                        }
                      }  // container redistribution-protocol
    
                      leaf metric-flag {
                        type boolean;
                        description
                          "If true, Metric configured";
                      }
    
                      leaf metric {
                        type uint32;
                        description
                          "Route metric";
                      }
    
                      leaf rib-metric-flag {
                        type boolean;
                        description
                          "If true, RIB metric is used";
                      }
    
                      leaf metric-type {
                        type uint32;
                        description
                          "Redistribute as External type 1 or 2 ";
                      }
    
                      leaf tag-flag {
                        type boolean;
                        description
                          "If true, tag is configured";
                      }
    
                      leaf tag {
                        type uint32;
                        description "Route Tag";
                      }
    
                      leaf keep-bgp-med {
                        type boolean;
                        description
                          "If true, BGP MED value is preserved";
                      }
    
                      leaf keep-bgp-def-info {
                        type boolean;
                        description
                          "If true, BGP metric and metric type are
    preserved for default route";
                      }
    
                      leaf redist-summary {
                        type boolean;
                        description
                          "If true, routes will be redistributed as Summary
    LSAs instead of External LSAs";
                      }
    
                      leaf policy-name {
                        type string;
                        description
                          "Name of applied policy";
                      }
    
                      leaf classless {
                        type boolean;
                        description
                          "Whether to use CIDR";
                      }
    
                      leaf nssa-only {
                        type boolean;
                        description
                          "To NSSA areas only";
                      }
                    }  // list redistribution
                  }  // container process-summary
                }  // container process-information
    
                container areas {
                  description "Area table";
                  list area {
                    key "area-id";
                    description
                      "Container for per area data";
                    container flood-list-area-table {
                      description
                        "Area specific flood list table";
                      list flood {
                        key "interface-name";
                        description
                          "Flooding information for a specific interface";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        leaf flood-interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface for which flood list is
    retrieved";
                        }
    
                        leaf flood-pacing-timer {
                          type uint32;
                          description
                            "Time until next LS update due (ms)";
                        }
    
                        leaf flood-lsa-count {
                          type uint32;
                          description
                            "Number of LSAs currently being flooded";
                        }
    
                        list area-flood {
                          description
                            "Area scope floodlist";
                          leaf header-lsa-type {
                            type Lsa;
                            description
                              "LSA Type";
                          }
    
                          leaf header-lsa-age {
                            type uint16;
                            description
                              "Age of the LSA (s)";
                          }
    
                          leaf header-ls-id {
                            type inet:ipv4-address;
                            description "LSA ID";
                          }
    
                          leaf header-advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf header-sequence-number {
                            type uint32;
                            description
                              "Current LSA sequence number";
                          }
    
                          leaf header-lsa-checksum {
                            type uint16;
                            description
                              "Checksum of the LSA";
                          }
                        }  // list area-flood
    
                        list as-flood {
                          description
                            "AS scope floodlist";
                          leaf header-lsa-type {
                            type Lsa;
                            description
                              "LSA Type";
                          }
    
                          leaf header-lsa-age {
                            type uint16;
                            description
                              "Age of the LSA (s)";
                          }
    
                          leaf header-ls-id {
                            type inet:ipv4-address;
                            description "LSA ID";
                          }
    
                          leaf header-advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf header-sequence-number {
                            type uint32;
                            description
                              "Current LSA sequence number";
                          }
    
                          leaf header-lsa-checksum {
                            type uint16;
                            description
                              "Checksum of the LSA";
                          }
                        }  // list as-flood
                      }  // list flood
                    }  // container flood-list-area-table
    
                    container area-statistics {
                      description
                        "Container for Statistics";
                      container interface-stats-entries {
                        description
                          "Statistics innformation Interface table";
                        list interface-stats-entry {
                          key "interface-name";
                          description
                            "Statistics information for a specific interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Name of the Interface";
                          }
    
                          leaf handle {
                            type xr:Interface-name;
                            description
                              "interface handle type";
                          }
    
                          leaf if-name-str {
                            type string;
                            description
                              "interface name";
                          }
    
                          list if-entry {
                            description
                              "interface entry";
                            leaf madj-intf {
                              type boolean;
                              description
                                "OSPF madj interface";
                            }
    
                            leaf area-id {
                              type uint32;
                              description
                                "OSPF area id";
                            }
    
                            leaf area-id-str {
                              type string;
                              description
                                "OSPF aread id string";
                            }
    
                            list if-stat {
                              description
                                "OSPF interface statistics";
                              leaf entry {
                                type uint32;
                                description
                                  "OSPF interface statistics";
                              }
                            }  // list if-stat
                          }  // list if-entry
                        }  // list interface-stats-entry
                      }  // container interface-stats-entries
                    }  // container area-statistics
    
                    leaf area-id {
                      type uint32 {
                        range "0..4294967295";
                      }
                      description "Area ID";
                    }
    
                    container neighbors {
                      description
                        "Neighbor table";
                      list neighbor {
                        description
                          "Neighbor information";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        leaf neighbor-address {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 address of the neighbor";
                        }
    
                        container neighbor-bfd-information {
                          description
                            "BFD related information of the neighbor";
                          leaf bfd-intf-enable-mode {
                            type uint32;
                            description
                              "BFD enable mode - Default/Strict";
                          }
    
                          leaf bfd-status-flag {
                            type uint8;
                            description
                              "Status of the BFD Session";
                          }
                        }  // container neighbor-bfd-information
    
                        leaf neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor ID";
                        }
    
                        leaf neighbor-ip-address {
                          type inet:ipv4-address;
                          description
                            "Neighbor IP Address";
                        }
    
                        leaf neighbor-interface-name {
                          type xr:Interface-name;
                          description
                            "Interface via which the neighbor is seen";
                        }
    
                        leaf neighbor-dr-priority {
                          type uint8;
                          description
                            "DR priority of the neighbor";
                        }
    
                        leaf neighbor-state {
                          type Neighbor-state;
                          description
                            "NFSM state of the neighbor";
                        }
    
                        leaf dr-bdr-state {
                          type Dr-bdr-state;
                          description
                            "IFSM state of the neighbor";
                        }
    
                        leaf neighbor-dead-timer {
                          type uint32;
                          description
                            "Time until neighbor's dead timer expires (s)";
                        }
    
                        leaf neighbor-up-time {
                          type uint32;
                          description
                            "Amount of time since the adjacency is up (s)";
                        }
    
                        leaf neighbor-madj-interface {
                          type boolean;
                          description
                            "Interface is MADJ";
                        }
                      }  // list neighbor
                    }  // container neighbors
    
                    container interface-briefs {
                      description
                        "OSPF Interface Brief Table";
                      list interface-brief {
                        key "interface-name";
                        description
                          "OSPF interface brief information";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Interface";
                        }
    
                        leaf interface-name-xr {
                          type xr:Interface-name;
                          description
                            "Name of the interface on which OSPF is enabled";
                        }
    
                        leaf interface-area {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted-decimal
    format";
                        }
    
                        leaf interface-address {
                          type inet:ipv4-address;
                          description
                            "IPv4 address of the Interface";
                        }
    
                        leaf interface-mask {
                          type uint32;
                          description
                            "Interface IP Mask";
                        }
    
                        leaf interface-link-cost {
                          type uint16;
                          description
                            "link cost/metric of the interface";
                        }
    
                        leaf ospf-interface-state {
                          type Ospf-interface-state;
                          description
                            "Interface OSPF state";
                        }
    
                        leaf interface-fast-detect-hold-down {
                          type boolean;
                          description
                            "whether the interface is in fast detect hold
    down state";
                        }
    
                        leaf interface-neighbor-count {
                          type uint16;
                          description
                            "Total number of Neighbors";
                        }
    
                        leaf interface-adj-neighbor-count {
                          type uint16;
                          description
                            "Total number of Adjacent Neighbors";
                        }
    
                        leaf interfaceis-madj {
                          type boolean;
                          description
                            "If true, interface is multi-area";
                        }
    
                        leaf interface-madj-count {
                          type uint16;
                          description
                            "Total number of multi-area";
                        }
    
                        list interface-madj {
                          description
                            "Information for multi-area on the interface";
                          leaf interface-area {
                            type string {
                              length "0..16";
                            }
                            description
                              "Area ID string in decimal or dotted-decimal
    format";
                          }
    
                          leaf madj-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf interface-neighbor-count {
                            type uint16;
                            description
                              "Number of Neighbors";
                          }
    
                          leaf interface-adj-neighbor-count {
                            type uint16;
                            description
                              "Total number of Adjacent Neighbors";
                          }
    
                          leaf interface-link-cost {
                            type uint16;
                            description
                              "Cost/Metric of the Interface link";
                          }
    
                          leaf ospf-interface-state {
                            type Ospf-interface-state;
                            description
                              "Interface OSPF state";
                          }
                        }  // list interface-madj
                      }  // list interface-brief
                    }  // container interface-briefs
    
                    container requests {
                      description
                        "Request List table";
                      list request {
                        description
                          "Request list for a particular adjacency";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Interface";
                        }
    
                        leaf neighbor-address {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 address of the neighbor";
                        }
    
                        leaf request-neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor ID";
                        }
    
                        leaf request-neighbor-address {
                          type inet:ipv4-address;
                          description
                            "Neighbor IP address";
                        }
    
                        leaf request-interface-name {
                          type xr:Interface-name;
                          description
                            "Request list interface";
                        }
    
                        list request {
                          description
                            "List of request list entries";
                          leaf header-lsa-type {
                            type Lsa;
                            description
                              "LSA Type";
                          }
    
                          leaf header-lsa-age {
                            type uint16;
                            description
                              "Age of the LSA (s)";
                          }
    
                          leaf header-ls-id {
                            type inet:ipv4-address;
                            description "LSA ID";
                          }
    
                          leaf header-advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf header-sequence-number {
                            type uint32;
                            description
                              "Current LSA sequence number";
                          }
    
                          leaf header-lsa-checksum {
                            type uint16;
                            description
                              "Checksum of the LSA";
                          }
                        }  // list request
                      }  // list request
                    }  // container requests
    
                    container retransmissions {
                      description
                        "Retransmission list table";
                      list retransmission {
                        description
                          "Retransmission list for a particular adjacency";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        leaf neighbor-address {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 address of the neighbor";
                        }
    
                        leaf retransmission-neighbor-id {
                          type inet:ipv4-address;
                          description
                            "Neighbor ID";
                        }
    
                        leaf retransmission-neighbor-ip-address {
                          type inet:ipv4-address;
                          description
                            "Neighbor IP Address";
                        }
    
                        leaf retransmission-interface-name {
                          type xr:Interface-name;
                          description
                            "Retransmission list interface";
                        }
    
                        leaf retransmission-timer {
                          type uint32;
                          description
                            "Amount of time remaining on retransmission timer
    (ms)";
                        }
    
                        leaf retransmission-count {
                          type uint32;
                          description
                            "Retransmission queue length";
                        }
    
                        list retransmission-area-db {
                          description
                            "List of Area scope entries";
                          leaf header-lsa-type {
                            type Lsa;
                            description
                              "LSA Type";
                          }
    
                          leaf header-lsa-age {
                            type uint16;
                            description
                              "Age of the LSA (s)";
                          }
    
                          leaf header-ls-id {
                            type inet:ipv4-address;
                            description "LSA ID";
                          }
    
                          leaf header-advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf header-sequence-number {
                            type uint32;
                            description
                              "Current LSA sequence number";
                          }
    
                          leaf header-lsa-checksum {
                            type uint16;
                            description
                              "Checksum of the LSA";
                          }
                        }  // list retransmission-area-db
    
                        list retransmission-asdb {
                          description
                            "List of AS Scope entries";
                          leaf header-lsa-type {
                            type Lsa;
                            description
                              "LSA Type";
                          }
    
                          leaf header-lsa-age {
                            type uint16;
                            description
                              "Age of the LSA (s)";
                          }
    
                          leaf header-ls-id {
                            type inet:ipv4-address;
                            description "LSA ID";
                          }
    
                          leaf header-advertising-router {
                            type inet:ipv4-address;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf header-sequence-number {
                            type uint32;
                            description
                              "Current LSA sequence number";
                          }
    
                          leaf header-lsa-checksum {
                            type uint16;
                            description
                              "Checksum of the LSA";
                          }
                        }  // list retransmission-asdb
                      }  // list retransmission
                    }  // container retransmissions
    
                    container neighbor-details {
                      description
                        "Neighbor detail table";
                      list neighbor-detail {
                        description
                          "A single neighbor's detail information";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        leaf neighbor-address {
                          type inet:ipv4-address-no-zone;
                          description
                            "IPv4 address of the neighbor";
                        }
    
                        container neighbor-summary {
                          description
                            "Neighbor summary information";
                          container neighbor-bfd-information {
                            description
                              "BFD related information of the neighbor";
                            leaf bfd-intf-enable-mode {
                              type uint32;
                              description
                                "BFD enable mode - Default/Strict";
                            }
    
                            leaf bfd-status-flag {
                              type uint8;
                              description
                                "Status of the BFD Session";
                            }
                          }  // container neighbor-bfd-information
    
                          leaf neighbor-id {
                            type inet:ipv4-address;
                            description
                              "Neighbor ID";
                          }
    
                          leaf neighbor-ip-address {
                            type inet:ipv4-address;
                            description
                              "Neighbor IP Address";
                          }
    
                          leaf neighbor-interface-name {
                            type xr:Interface-name;
                            description
                              "Interface via which the neighbor is seen";
                          }
    
                          leaf neighbor-dr-priority {
                            type uint8;
                            description
                              "DR priority of the neighbor";
                          }
    
                          leaf neighbor-state {
                            type Neighbor-state;
                            description
                              "NFSM state of the neighbor";
                          }
    
                          leaf dr-bdr-state {
                            type Dr-bdr-state;
                            description
                              "IFSM state of the neighbor";
                          }
    
                          leaf neighbor-dead-timer {
                            type uint32;
                            description
                              "Time until neighbor's dead timer expires (s)";
                          }
    
                          leaf neighbor-up-time {
                            type uint32;
                            description
                              "Amount of time since the adjacency is up (s)";
                          }
    
                          leaf neighbor-madj-interface {
                            type boolean;
                            description
                              "Interface is MADJ";
                          }
                        }  // container neighbor-summary
    
                        container neighbor-bfd-information {
                          description
                            "BFD related information of the neighbor";
                          leaf bfd-intf-enable-mode {
                            type uint32;
                            description
                              "BFD enable mode - Default/Strict";
                          }
    
                          leaf bfd-status-flag {
                            type uint8;
                            description
                              "Status of the BFD Session";
                          }
                        }  // container neighbor-bfd-information
    
                        container neighbor-retransmission-information {
                          description
                            "Retransmission information with this neighbor";
                          leaf dbd-retransmission-count {
                            type uint32;
                            description
                              "Number of DBD retransmissions during last
    exchange";
                          }
    
                          leaf dbd-retransmission-total-count {
                            type uint32;
                            description
                              "Total number of DBD retransmissions for this
    neighbor";
                          }
    
                          leaf area-flooding-index {
                            type uint32;
                            description
                              "Area scope LSA's flood index";
                          }
    
                          leaf as-flood-index {
                            type uint32;
                            description
                              "AS scope LSA's flood index";
                          }
    
                          leaf neighbor-retransmission-count {
                            type uint32;
                            description
                              "Retransmission queue length";
                          }
    
                          leaf number-of-retransmissions {
                            type uint32;
                            description
                              "Number of retransmissions for this neighbor";
                          }
    
                          leaf area-first-flood-information {
                            type uint32;
                            description
                              "First flood item for area scope LSAs";
                          }
    
                          leaf area-first-flood-information-index {
                            type uint32;
                            description
                              "Index of the first flood item for area scope
    LSAs";
                          }
    
                          leaf as-first-flood-information {
                            type uint32;
                            description
                              "First flood item for AS scope LSAs";
                          }
    
                          leaf as-first-flood-information-index {
                            type uint32;
                            description
                              "Index for first flood item for AS scope LSAs";
                          }
    
                          leaf area-next-flood-information {
                            type uint32;
                            description
                              "Next flood item for area scope LSAs";
                          }
    
                          leaf area-next-flood-information-index {
                            type uint32;
                            description
                              "Index of next flood item for Area scope LSAs";
                          }
    
                          leaf as-next-flood-information {
                            type uint32;
                            description
                              "Next flood item for AS scope LSAs";
                          }
    
                          leaf as-next-flood-information-index {
                            type uint32;
                            description
                              "Index of next flood item for AS scope LSAs";
                          }
    
                          leaf last-retransmission-length {
                            type uint32;
                            description
                              "Number of LSAs sent in last retransmission";
                          }
    
                          leaf maximum-retransmission-length {
                            type uint32;
                            description
                              "Maximum number of LSAs sent in a retransmission";
                          }
    
                          leaf last-retransmission-time {
                            type uint32;
                            description
                              "Time taken for retransmission in the last
    attempt (ms)";
                          }
    
                          leaf maximum-retransmission-time {
                            type uint32;
                            description
                              "Maximum time taken for retransmission (ms)";
                          }
    
                          leaf lsa-retransmission-timer {
                            type uint32;
                            description
                              "Time until next LSA retransmission (ms)";
                          }
                        }  // container neighbor-retransmission-information
    
                        leaf neighbor-area-id {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted-decimal
    format";
                        }
    
                        leaf state-change-count {
                          type uint16;
                          description
                            "Number of state changes";
                        }
    
                        leaf neighbor-cost {
                          type uint16;
                          description
                            "Cost of path to this neighbor";
                        }
    
                        leaf neighbor-filter {
                          type boolean;
                          description
                            "If true, filter outgoing LSAs";
                        }
    
                        leaf neighbor-designated-router-address {
                          type inet:ipv4-address;
                          description
                            "Address of designated router";
                        }
    
                        leaf neighbor-backup-designated-router-address {
                          type inet:ipv4-address;
                          description
                            "Address of backup designated router";
                        }
    
                        leaf interface-type {
                          type Interface;
                          description
                            "Type of the interface, whether it is p2p,
    broadcast, nbma or p2mp";
                        }
    
                        leaf poll-interval {
                          type uint32;
                          description
                            "Poll interval (s)";
                        }
    
                        leaf next-poll-interval {
                          type uint32;
                          units "second";
                          description
                            "For NBMA networks, amount of time remaining in
    seconds before the next poll interval expires
    and Hello is sent (s)";
                        }
    
                        leaf neighbor-option {
                          type uint8;
                          description
                            " This is bitmaks of neighbor's option field
    received";
                        }
    
                        leaf pending-events {
                          type uint16;
                          description
                            "Number of pending events";
                        }
    
                        leaf neighbor-lls-option {
                          type uint32;
                          description
                            "This is a bitmask of Link Local signalling
    options received from the neighbor";
                        }
    
                        leaf oob-resynchronization {
                          type boolean;
                          description
                            "Out-Of-Bound resynchronization in progress";
                        }
    
                        leaf nsf-router-state {
                          type Nsf-rtr;
                          description
                            "For cisco NSF, the router is either Requester or
    Receiver";
                        }
    
                        leaf last-oob-time {
                          type uint32;
                          units "second";
                          description
                            "The amount of time in seconds since last time
    Out-Of-Band resynchronization was done with this
    neighbor";
                        }
    
                        leaf lfa-interface {
                          type xr:Interface-name;
                          description
                            "LFA Interface";
                        }
    
                        leaf lfa-next-hop {
                          type inet:ipv4-address;
                          description
                            "LFA Next Hop";
                        }
    
                        leaf lfa-neighbor-id {
                          type inet:ipv4-address;
                          description
                            "LFA Neighbor ID";
                        }
    
                        leaf lfa-neighbor-revision {
                          type uint32;
                          description
                            "LFA Neighbor Revision";
                        }
    
                        leaf neighbor-ack-list-count {
                          type uint32;
                          description
                            "Ack List Count";
                        }
    
                        leaf neighbor-ack-list-high-watermark {
                          type uint32;
                          description
                            "Ack List High Watermark";
                        }
    
                        leaf neighbor-interface-id {
                          type uint16;
                          description
                            "Interface ID of neighbor recived via LLS";
                        }
    
                        list adjacency-sid {
                          description
                            "List of SR Adjacency SIDs";
                          leaf adj-sid-label {
                            type uint32;
                            description
                              "Adjacency SID Label";
                          }
    
                          leaf protected-adj-sid {
                            type boolean;
                            description
                              "Adjacency SID Protection";
                          }
    
                          leaf adj-sid-has-backup {
                            type boolean;
                            description
                              "Adjacency SID has backup protection";
                          }
    
                          leaf configured-adj-sid {
                            type boolean;
                            description
                              "Configured Adjacency SID";
                          }
                        }  // list adjacency-sid
                      }  // list neighbor-detail
                    }  // container neighbor-details
    
                    container interfaces {
                      description
                        "OSPF Interface Table";
                      list interface {
                        key "interface-name";
                        description
                          "OSPF interface information";
                        leaf interface-name {
                          type xr:Interface-name;
                          description
                            "Name of the Interface";
                        }
    
                        container interface-bfd-information {
                          description
                            "BFD information";
                          leaf bfd-intf-enable-mode {
                            type uint32;
                            description
                              "BFD enable mode - Default/Strict";
                          }
    
                          leaf interval {
                            type uint32;
                            description
                              "BFD interval (ms)";
                          }
    
                          leaf detection-multiplier {
                            type uint32;
                            description
                              "BFD multiplier value";
                          }
                        }  // container interface-bfd-information
    
                        container active-interface {
                          description
                            "Active interface details";
                          leaf wait-time {
                            type uint32;
                            description
                              "Wait time for DR/BDR selection (s)";
                          }
    
                          leaf interface-area-flood-index {
                            type uint32;
                            description
                              "Area scope LSAs flood index";
                          }
    
                          leaf interface-as-flood-index {
                            type uint32;
                            description
                              "AS scope LSAs flood index";
                          }
    
                          leaf interface-flood-length {
                            type uint32;
                            description
                              "Flood queue length";
                          }
    
                          leaf interface-area-next-flood {
                            type uint32;
                            description
                              "Next LSA to flood (Area scope)";
                          }
    
                          leaf interface-area-next-flood-index {
                            type uint32;
                            description
                              "Index of next LSA to flood (Area scope)";
                          }
    
                          leaf interface-as-next-flood {
                            type uint32;
                            description
                              "Next LSA to flood (AS scope)";
                          }
    
                          leaf interface-as-next-flood-index {
                            type uint32;
                            description
                              "Index of next LSA to flood (AS scope)";
                          }
    
                          leaf flood-scan-length {
                            type uint32;
                            description
                              "Length of flood queue in the last attempt";
                          }
    
                          leaf maximum-flood-length {
                            type uint32;
                            description
                              "Maximum length of the flood queue";
                          }
    
                          leaf last-flood-time {
                            type uint32;
                            description
                              "Time taken for Last flood (ms)";
                          }
    
                          leaf maximum-flood-time {
                            type uint32;
                            description
                              "Maximum time taken for flood (ms)";
                          }
    
                          leaf interface-flood-pacing-timer {
                            type uint32;
                            description
                              "Time until next flood pacing timer (ms)";
                          }
    
                          leaf interface-neighbor-count {
                            type uint16;
                            description
                              "Total number of Neighbors";
                          }
    
                          leaf suppress-hello-count {
                            type uint16;
                            description
                              "Number of neighbors for which hellos are
    suppressed";
                          }
    
                          leaf interface-authentication-type {
                            type Authentication;
                            description
                              "Authentication type";
                          }
    
                          leaf youngest-md-key {
                            type boolean;
                            description
                              "If true, MD key is configured";
                          }
    
                          leaf old-md5-key-neighbor-count {
                            type uint32;
                            description
                              "Number of neighbors using the old key (if
    rollover in progress)";
                          }
    
                          leaf youngest-md-key-id {
                            type uint16;
                            description
                              "Youngest MD key ID";
                          }
    
                          leaf keychain-name {
                            type string {
                              length "0..255";
                            }
                            description
                              "Name of Keychain used in this interface";
                          }
    
                          leaf keychain-key-conf {
                            type boolean;
                            description
                              "If true, Keychain key is configured";
                          }
    
                          leaf keychain-id {
                            type uint64;
                            description
                              "ID of the keychain used in this interface";
                          }
    
                          leaf keychain-alg {
                            type Ospf-crytographic-algo;
                            description
                              "Keychain cryptographic-algorithm used in this
    interface";
                          }
    
                          list md-keys {
                            description
                              "List of old MD keys";
                            leaf entry {
                              type uint16;
                              description
                                "List of old MD keys";
                            }
                          }  // list md-keys
                        }  // container active-interface
    
                        leaf interface-name-xr {
                          type xr:Interface-name;
                          description
                            "Name of the interface";
                        }
    
                        leaf interface-state {
                          type Interface-state;
                          description
                            "State of the interface";
                        }
    
                        leaf interface-line-state {
                          type boolean;
                          description
                            "If true, line protocol is up";
                        }
    
                        leaf interface-address {
                          type inet:ipv4-address;
                          description
                            "IPv4 Address of the interface";
                        }
    
                        leaf interface-mask {
                          type uint32;
                          description
                            "Interface IP Mask";
                        }
    
                        leaf interface-area {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID string in decimal or dotted-decimal
    format";
                        }
    
                        leaf interface-sid {
                          type uint32;
                          description
                            "Interface SID";
                        }
    
                        leaf interface-sid-php-off {
                          type boolean;
                          description
                            "SID PHP Off";
                        }
    
                        leaf interface-sid-n-flag-clear {
                          type boolean;
                          description
                            "SID N-Flag Clear";
                        }
    
                        leaf interface-strict-spf-sid {
                          type uint32;
                          description
                            "Interface Strict-SPF SID";
                        }
    
                        leaf interface-strict-spf-sid-php-off {
                          type boolean;
                          description
                            "Strict-SPF SID PHP Off";
                        }
    
                        leaf interface-strict-spf-sid-n-flag-clear {
                          type boolean;
                          description
                            "Strict-SPF SID N-Flag Clear";
                        }
    
                        leaf interface-router-id {
                          type inet:ipv4-address;
                          description
                            "Interface Router ID";
                        }
    
                        leaf network-type {
                          type Interface;
                          description
                            "Network type of the interface, whether P2P,
    Broadcast, NBMA or P2MP";
                        }
    
                        leaf ip-mtu {
                          type uint16;
                          description "IP MTU";
                        }
    
                        leaf maximum-packet-size {
                          type uint16;
                          description
                            "Maximum size of the packet";
                        }
    
                        leaf interface-tunnel-flags {
                          type uint32;
                          description
                            "Flags related to Tunnel Interface";
                        }
    
                        leaf interface-link-cost {
                          type uint16;
                          description
                            "Link cost/Metric of the interface";
                        }
    
                        leaf interface-bandwidth {
                          type uint32;
                          description
                            "Bandwidth of the Interface";
                        }
    
                        leaf cfg-cost-fallback {
                          type boolean;
                          description
                            "If true, cost fallback is configured";
                        }
    
                        leaf interface-cost-fallback {
                          type uint16;
                          description
                            "Interface fallback cost";
                        }
    
                        leaf cost-fallback-active {
                          type boolean;
                          description
                            "If true, cost fallback is active";
                        }
    
                        leaf cfg-delay-igp-cost-fallback {
                          type boolean;
                          description
                            "If true,delay igp  cost fallback is configured";
                        }
    
                        leaf interface-igp-cost-fallback {
                          type uint16;
                          description
                            "Interface fallback cost";
                        }
    
                        leaf dealy-igp-cost-fallback-active {
                          type boolean;
                          description
                            "If true, cost fallback is active";
                        }
    
                        leaf cfg-delay-te-cost-fallback {
                          type boolean;
                          description
                            "If true,delay te  cost fallback is configured";
                        }
    
                        leaf interface-delay-te-cost-fallback {
                          type uint32;
                          description
                            "Interface fallback cost";
                        }
    
                        leaf dealy-te-cost-fallback-active {
                          type boolean;
                          description
                            "If true, cost fallback is active";
                        }
    
                        leaf configured-ldp-sync {
                          type boolean;
                          description
                            "If true, configured as LDP sync";
                        }
    
                        leaf configured-ldp-sync-igp-shortcuts {
                          type boolean;
                          description
                            "If true, sync igp shortcuts";
                        }
    
                        leaf interface-ldp-sync {
                          type boolean;
                          description
                            "If true, interface LDP sync is achieved";
                        }
    
                        leaf configured-demand-circuit {
                          type boolean;
                          description
                            "Whether this interface is configured as a demand
    circuit";
                        }
    
                        leaf interface-demand-circuit {
                          type boolean;
                          description
                            "Whether this interface is running as a demand
    circuit";
                        }
    
                        leaf interface-dc-bitless-lsa-count {
                          type uint32;
                          description
                            "Number of LSAs with demand circuit bit not set
    for the area in which the interface is running";
                        }
    
                        leaf transmission-delay {
                          type uint16;
                          description
                            "Interface Transmission delay";
                        }
    
                        leaf ospf-interface-state {
                          type Ospf-interface-state;
                          description
                            "Interface OSPF state";
                        }
    
                        leaf interface-priority {
                          type uint8;
                          description
                            "DR priority of the interface";
                        }
    
                        leaf designated-router {
                          type boolean;
                          description
                            "If true, there is a Designated Router for this
    network";
                        }
    
                        leaf designated-router-id {
                          type inet:ipv4-address;
                          description
                            "Router id of Designated router of this network";
                        }
    
                        leaf designated-router-address {
                          type inet:ipv4-address;
                          description
                            "Interface address of the Designated Router of
    this network";
                        }
    
                        leaf backup-designated-router {
                          type boolean;
                          description
                            "If true, there is a Backup Designated Router for
    this network";
                        }
    
                        leaf backup-designated-router-id {
                          type inet:ipv4-address;
                          description
                            "Router id of Backup Designated Router of this
    network";
                        }
    
                        leaf backup-designated-router-address {
                          type inet:ipv4-address;
                          description
                            "interface address of the Backup Designated
    Router of this network";
                        }
    
                        leaf network-lsa-flush-timer {
                          type uint32;
                          units "second";
                          description
                            "The amount of time in seconds before flush timer
    for old network LSA expires";
                        }
    
                        leaf interface-lsa-filter {
                          type boolean;
                          description
                            "Filter is configured for out going LSAs";
                        }
    
                        leaf hello-interval {
                          type uint32;
                          description
                            "Configured hello interval (s)";
                        }
    
                        leaf hello-interval-ms {
                          type uint32;
                          description
                            "Configured hello interval (ms)";
                        }
    
                        leaf dead-interval {
                          type uint32;
                          description
                            "Configured dead interval (s)";
                        }
    
                        leaf wait-interval {
                          type uint32;
                          description
                            "Configured wait interval (s)";
                        }
    
                        leaf interface-retransmission-interrval {
                          type uint32;
                          description
                            "Configured retransmit interval (s)";
                        }
    
                        leaf interface-nsf-enabled {
                          type boolean;
                          description
                            "If true, NSF is enabled";
                        }
    
                        leaf interface-nsf {
                          type boolean;
                          description
                            "If true, NSF restart in progress on this
    interface";
                        }
    
                        leaf interface-last-nsf {
                          type uint32;
                          description
                            "Time since last NSF restart (s)";
                        }
    
                        leaf passive-interface {
                          type boolean;
                          description
                            "If true, passive interface";
                        }
    
                        leaf next-hello-time {
                          type uint32;
                          description
                            "Time until next Hello (s)";
                        }
    
                        leaf next-hello-time-ms {
                          type uint32;
                          description
                            "Time until next Hello (ms)";
                        }
    
                        leaf ttl-security-enabled {
                          type boolean;
                          description
                            "TTL security enabled on the interface";
                        }
    
                        leaf ttl-security-hop-count {
                          type uint32;
                          description
                            "TTL security hop count for this interface";
                        }
    
                        leaf interfaceis-madj {
                          type boolean;
                          description
                            "If true, interface is multi-area";
                        }
    
                        leaf interface-madj-count {
                          type uint16;
                          description
                            "Total number of multi-area";
                        }
    
                        leaf prefix-suppress-primary-addresses {
                          type boolean;
                          description
                            "whether Prefix Suppression for primary addresses
    is enabled";
                        }
    
                        leaf prefix-suppress-secondary-addresses {
                          type boolean;
                          description
                            "Whether Prefix Suppression for secondary
    addresses is enabled";
                        }
    
                        leaf is-loopback-stub-network {
                          type boolean;
                          description
                            "If true, loopback interface is advertised as a
    stub network";
                        }
    
                        leaf interface-ack-list-count {
                          type uint32;
                          description
                            "Ack List Count";
                        }
    
                        leaf interface-ack-list-high-watermark {
                          type uint32;
                          description
                            "Ack List High Watermark";
                        }
    
                        leaf registered-for-link-down-fast-detection {
                          type boolean;
                          description
                            "Whether this interface is registered for Link
    Down Fast Detection";
                        }
    
                        leaf fast-detect-hold-down-time {
                          type uint32;
                          description
                            "Hold-down time in ms for fast-detect event";
                        }
    
                        leaf interface-fast-detect-hold-down {
                          type boolean;
                          description
                            "Link in hold-down state due to fast detect event";
                        }
    
                        leaf fast-detect-hold-down-time-remaining {
                          type uint32;
                          description
                            "Remaining hold down time in ms";
                        }
    
                        leaf fast-reroute-type {
                          type Ipfrr;
                          description
                            "IP Fast Reroute Type";
                        }
    
                        leaf fast-reroute-topology-independent-lfa {
                          type boolean;
                          description
                            "Topology Independent LFA";
                        }
    
                        leaf srlg-default-weight {
                          type uint32;
                          description
                            "SRLG Default weight if not configured
    specifically for this SRLG";
                        }
    
                        leaf interface-unnum {
                          type xr:Interface-name;
                          description
                            "Unnumbered interface";
                        }
    
                        leaf interface-forw {
                          type boolean;
                          description
                            "Forward reference interface";
                        }
    
                        leaf interface-pri-labels {
                          type uint8;
                          description
                            "Max number of primary labels";
                        }
    
                        leaf interface-bkp-labels {
                          type uint8;
                          description
                            "Max number of backup labels";
                        }
    
                        leaf interface-srte-labels {
                          type uint8;
                          description
                            "Max number of SRTE labels";
                        }
    
                        leaf interface-srat-cap {
                          type uint8;
                          description
                            "SRTE automatic path capability";
                        }
    
                        leaf pm-delay-set {
                          type boolean;
                          description
                            "PerfMeas Delay values available";
                        }
    
                        leaf link-delay-avg {
                          type uint32;
                          description
                            "PerfMeas Average Link Delay";
                        }
    
                        leaf link-delay-min {
                          type uint32;
                          description
                            "PerfMeas Minimum Link Delay";
                        }
    
                        leaf link-delay-max {
                          type uint32;
                          description
                            "PerfMeas Maximum Link Delay";
                        }
    
                        leaf pm-dealy-average-a-bit {
                          type boolean;
                          description
                            "If true, PM delay avg bit is set";
                        }
    
                        leaf pm-dealy-min-max-a-bit {
                          type boolean;
                          description
                            "If true, PM delay min_max bit is set";
                        }
    
                        leaf link-delay-avg-raw {
                          type uint32;
                          description
                            "PerfMeas Average Link Delay Raw";
                        }
    
                        leaf link-delay-min-raw {
                          type uint32;
                          description
                            "PerfMeas Minimum Link Delay Raw";
                        }
    
                        leaf link-delay-max-raw {
                          type uint32;
                          description
                            "PerfMeas Maximum Link Delay Raw";
                        }
    
                        leaf link-delay-norm-intval {
                          type uint32;
                          description
                            "PerfMeas Delay Norm Interval";
                        }
    
                        leaf link-delay-norm-offset {
                          type uint32;
                          description
                            "PerfMeas Delay Norm Offset";
                        }
    
                        leaf link-delay-var {
                          type uint32;
                          description
                            "PerfMeas Link Delay Variance";
                        }
    
                        leaf pm-loss-set {
                          type boolean;
                          description
                            "PerfMeas Link Loss values available";
                        }
    
                        leaf link-loss {
                          type uint32;
                          description
                            "PerfMeas Link Loss";
                        }
    
                        leaf pmbw-util-set {
                          type boolean;
                          description
                            "PerfMeas BW Util values available";
                        }
    
                        leaf total-bandwidth {
                          type uint64;
                          description
                            "PerfMeas Total Bandwidth";
                        }
    
                        leaf rsvpte-bandwidth {
                          type uint64;
                          description
                            "PerfMeas RSVP-TE Bandwidth";
                        }
    
                        leaf remote-lfa {
                          type uint8;
                          description
                            "Remote LFA";
                        }
    
                        leaf srte-metric-set {
                          type boolean;
                          description
                            "SRTE Metric available";
                        }
    
                        leaf srte-metric {
                          type uint32;
                          description
                            "SRTE Metric";
                        }
    
                        leaf srte-app-weight {
                          type uint32;
                          description
                            "SRTE App Weight";
                        }
    
                        leaf srte-ext-admin-group-set {
                          type boolean;
                          description
                            "SRTE Ext. Admin Group available";
                        }
    
                        leaf interface-weight {
                          type uint32;
                          description
                            "Configured Interface weight";
                        }
    
                        leaf if-rib-l-csync-needed {
                          type boolean;
                          description
                            "rib lc sync needed";
                        }
    
                        leaf if-rib-l-csync {
                          type boolean;
                          description
                            "rib lc sync state";
                        }
    
                        leaf conditional-advertising-enabled {
                          type boolean;
                          description
                            "If Conditional advertising based on route-policy
    is enabled";
                        }
    
                        leaf conditional-advertise-policy-name {
                          type string;
                          description
                            "Name of the applied policy for Conditional
    advertising";
                        }
    
                        leaf conditional-advertising-result {
                          type boolean;
                          description
                            "Result of the policy applied for Conditional
    advertising";
                        }
    
                        list srlg {
                          description
                            "SRLG Values";
                          leaf entry {
                            type uint32;
                            description
                              "SRLG Values";
                          }
                        }  // list srlg
    
                        list srlg-weight {
                          description
                            "SRLG Weight";
                          leaf entry {
                            type uint32;
                            description
                              "SRLG Weight";
                          }
                        }  // list srlg-weight
    
                        list srtete-ext-admin-group {
                          description
                            "SRTE Ext. Admin Group";
                          leaf entry {
                            type uint32;
                            description
                              "SRTE Ext. Admin Group";
                          }
                        }  // list srtete-ext-admin-group
    
                        list interface-neighbor {
                          description
                            "Information for neighbors on the interface";
                          leaf interface-neighbor-id {
                            type inet:ipv4-address;
                            description
                              "Neighbor Router ID";
                          }
    
                          leaf interface-neighbor-cost {
                            type uint32;
                            description
                              "Cost of link to neighbor";
                          }
    
                          leaf neighbor-dr {
                            type boolean;
                            description
                              "If true, Designated router";
                          }
    
                          leaf neighbor-bdr {
                            type boolean;
                            description
                              "If true, Backup designated router";
                          }
    
                          leaf suppress-hello {
                            type boolean;
                            description
                              "If true, hellos suppressed";
                          }
                        }  // list interface-neighbor
    
                        list interface-madj {
                          description
                            "Information for multi-area on the interface";
                          leaf interface-area {
                            type string {
                              length "0..16";
                            }
                            description
                              "Area ID string in decimal or dotted-decimal
    format";
                          }
    
                          leaf madj-area-id {
                            type uint32;
                            description
                              "Area ID";
                          }
    
                          leaf interface-neighbor-count {
                            type uint16;
                            description
                              "Number of Neighbors";
                          }
    
                          leaf interface-adj-neighbor-count {
                            type uint16;
                            description
                              "Total number of Adjacent Neighbors";
                          }
    
                          leaf interface-link-cost {
                            type uint16;
                            description
                              "Cost/Metric of the Interface link";
                          }
    
                          leaf ospf-interface-state {
                            type Ospf-interface-state;
                            description
                              "Interface OSPF state";
                          }
                        }  // list interface-madj
    
                        list ipfrr-tiebreakers {
                          description
                            "IPFRR-Tiebreakers list";
                          leaf tiebreaker-type {
                            type Ipfrr-tbrkr;
                            description
                              "Tiebreaker Type, whether LC-Disjoint, Node
    Protecting etc";
                          }
    
                          leaf tiebreaker-index {
                            type uint32;
                            description
                              "Tiebreaker Index corresponding to the tiebreaker
    type";
                          }
                        }  // list ipfrr-tiebreakers
    
                        list ip-sec-addr {
                          description
                            "Secondary IP address list";
                          leaf secondary-addr {
                            type inet:ipv4-address;
                            description
                              "Secondary Address Type";
                          }
    
                          leaf secondary-prefix {
                            type uint32;
                            description
                              "Secondary Prefix Length";
                          }
                        }  // list ip-sec-addr
    
                        list sr-adj-sid {
                          description
                            "SR Configured Adjacency SIDs";
                          leaf adj-sid-label {
                            type uint32;
                            description
                              "Adjacency SID Label";
                          }
    
                          leaf protected-adj-sid {
                            type boolean;
                            description
                              "Adjacency SID Protection";
                          }
    
                          leaf adj-sid-is-active {
                            type boolean;
                            description
                              "Adj sid is allocated to a neighbor";
                          }
    
                          leaf adj-sid-inactive-reason {
                            type Ospf-sr-adj-sid-inactive-reason;
                            description
                              "Adjacency SID Inactive Reason";
                          }
                        }  // list sr-adj-sid
                      }  // list interface
                    }  // container interfaces
                  }  // list area
                }  // container areas
    
                container database {
                  description
                    "OSPF Link State Database";
                  container database-areas {
                    description
                      "Per-Area view of Link state database";
                    list database-area {
                      key "area-id";
                      description
                        "Per-Area Link State Database data";
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description "Area ID";
                      }
    
                      container lsas {
                        description
                          "Link State Database Table";
                        list lsa {
                          description
                            "Link State Advertisement information";
                          leaf area-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Area ID";
                          }
    
                          leaf ls-type {
                            type Ospf-ls;
                            description
                              "Link state type";
                          }
    
                          leaf ls-id {
                            type inet:ipv4-address-no-zone;
                            description
                              "Link state ID";
                          }
    
                          leaf advertising-router {
                            type inet:ipv4-address-no-zone;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Name of the Interface";
                          }
    
                          container lsa-header {
                            description
                              "Header information";
                            leaf ls-type {
                              type Lsa;
                              description
                                "LSA type";
                            }
    
                            leaf lsid {
                              type inet:ipv4-address;
                              description
                                "LS ID";
                            }
    
                            leaf advertising-router {
                              type inet:ipv4-address;
                              description
                                "Router ID of Advertising Router";
                            }
    
                            leaf lsa-area-id {
                              type string {
                                length "0..16";
                              }
                              description
                                "Area ID in decimal or dotted-decimal format";
                            }
    
                            leaf lsa-age {
                              type uint16;
                              description
                                "LSA's Age (s)";
                            }
    
                            leaf dn-age-lsa {
                              type boolean;
                              description
                                "If true, Do Not Age this LSA";
                            }
    
                            leaf nsf {
                              type boolean;
                              description
                                "If true,  LSA received from neighbor during NSF";
                            }
    
                            leaf sequence-number {
                              type uint32;
                              description
                                "Current Sequence number";
                            }
    
                            leaf checksum {
                              type uint16;
                              description
                                "Checksum value";
                            }
                          }  // container lsa-header
    
                          container lsa-detail-data {
                            description
                              "Detailed LSA Information";
                            container lsa-throttle-timer {
                              description
                                "LSA throttle timer table information";
                              leaf timer-location {
                                type Timer-table;
                                description
                                  "Timer table";
                              }
    
                              leaf timer-type {
                                type Timer;
                                description
                                  "Timer type - whether maxage, refresh or checksum
    timer";
                              }
    
                              leaf second-table-index {
                                type uint8;
                                units "second";
                                description
                                  "Index of the Seconds table";
                              }
    
                              leaf minute-table-index {
                                type uint8;
                                units "minute";
                                description
                                  "Index of the Minutes table";
                              }
    
                              leaf last-inst-second-table-index {
                                type uint8;
                                units "second";
                                description
                                  "Last Seconds table index processed";
                              }
    
                              leaf last-inst-minute-table-index {
                                type uint8;
                                units "minute";
                                description
                                  "Last Minutes table index processed";
                              }
                            }  // container lsa-throttle-timer
    
                            container lsa-last-updated-time {
                              description
                                "Time LSA was last updated";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container lsa-last-updated-time
    
                            container lsadb-base-time-stamp {
                              description
                                "Current time stamp";
                              leaf second {
                                type uint32;
                                description
                                  "Second";
                              }
    
                              leaf nanosecond {
                                type uint32;
                                description
                                  "Nanosecond";
                              }
                            }  // container lsadb-base-time-stamp
    
                            container not-delete {
                              description
                                "Reason why LSA is not deleted";
                              leaf free-time {
                                type uint32;
                                description
                                  "The amount of time since the last check was made
    to free this LSA (s)";
                              }
    
                              leaf no-delete {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because delete flag not set on this LSA";
                              }
    
                              leaf neighbor-exchange {
                                type boolean;
                                description
                                  "If true, the reason  not to delete this LSA is
    because neighbor is in exchange state";
                              }
    
                              leaf routing-table {
                                type boolean;
                                description
                                  "If true, the reason  not to delete this LSA is
    because it has a contributing entry in the
    routing table";
                              }
    
                              leaf acknowledgement {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because it's Acknowledgement list is not empty";
                              }
    
                              leaf maximum-age {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because it is in Maxage Queue";
                              }
    
                              leaf partial-spf {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because it is in partial SPF queue";
                              }
    
                              leaf flood-pending {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because waiting for flooding or retransmission";
                              }
    
                              leaf rate-limit {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because waiting for next wait-interval to expire";
                              }
    
                              leaf nsr-ack-pending {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because NSR ACK from standby is pending";
                              }
    
                              leaf sum-orig-pending {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because it is pending summary LSA originating";
                              }
    
                              leaf nsr-flood-required {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because it is pending flooding on switchover";
                              }
    
                              leaf link-state-q {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because it is used in Link State Q";
                              }
    
                              leaf used-in-uloop {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because it is used in uloop";
                              }
    
                              leaf added-in-ulooplist {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because it is Added in uloopdblist";
                              }
    
                              leaf used-as-parent {
                                type boolean;
                                description
                                  "If true, the reason not to delete this LSA is
    because it is used in parent_path_lsdb";
                              }
                            }  // container not-delete
    
                            leaf tos-capable {
                              type boolean;
                              description
                                "If true, type of service capable indicated by
    LSA's option field";
                            }
    
                            leaf nssa-translation {
                              type boolean;
                              description
                                "If true,  capable of type 7 to 5 translation
    indicated by LSA's option field";
                            }
    
                            leaf demand-circuit {
                              type boolean;
                              description
                                "If true, capable of demand circuit as indicated
    by LSA's option field";
                            }
    
                            leaf dn-bit {
                              type boolean;
                              description
                                "if true, DN bit set on the summary LSA indicated
    by LSA's option field";
                            }
    
                            leaf lsa-rate-limit-due-time {
                              type uint32;
                              description
                                "Due time for rate-limit timer (ms)";
                            }
    
                            leaf lsadb-base-clock {
                              type uint64;
                              description
                                "Clock stamp since boot";
                            }
    
                            leaf routing-bit {
                              type boolean;
                              description
                                "If true, Routing Bit set on the LSA";
                            }
    
                            leaf advertising-router-reachable {
                              type boolean;
                              description
                                "If true, Advertising Router is reachable";
                            }
    
                            leaf length {
                              type uint16;
                              description
                                "Length of the LSA";
                            }
    
                            leaf sum-origin {
                              type uint16;
                              description
                                "Summary Origin";
                            }
    
                            leaf ase-origin {
                              type uint16;
                              description
                                "External Origin";
                            }
    
                            leaf in-sync {
                              type uint8;
                              description
                                "Not In Sync With Active";
                            }
    
                            leaf lsa-prefix-priority {
                              type uint8;
                              description
                                "Current prefix priority";
                            }
    
                            leaf new-lsa-prefix-priority {
                              type uint8;
                              description
                                "New prefix priority to be set after the current
    SPF";
                            }
    
                            leaf lsa-flood-required-post-fail-over {
                              type boolean;
                              description
                                "LSA flood required after FO";
                            }
                          }  // container lsa-detail-data
    
                          container lsa-internal-data {
                            description
                              "Information pertaining to a specific LSA type";
                            container router-lsa-type {
                              when
                                "../internal-lsa-type = 'mgmt-rtr-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_RTR_TYPE'";
                              }
                              description
                                "Router LSA";
                              leaf router-asbr {
                                type boolean;
                                description
                                  "If True, router is an Autonomous system Border
    Router";
                              }
    
                              leaf router-abr {
                                type boolean;
                                description
                                  "If True, router is an Area Border Router";
                              }
    
                              leaf internal-lsa {
                                type boolean;
                                description
                                  "If true, internal LSA";
                              }
    
                              list link {
                                description
                                  "List of links in this LSA";
                                leaf link-id {
                                  type inet:ipv4-address;
                                  description
                                    "Link ID";
                                }
    
                                leaf link-data {
                                  type inet:ipv4-address;
                                  description
                                    "Link Data";
                                }
    
                                leaf link-type {
                                  type Ospf-link-types;
                                  description
                                    "Type of link";
                                }
    
                                leaf link-metric {
                                  type uint16;
                                  description
                                    "Cost for using this link";
                                }
    
                                list link-tos {
                                  description
                                    "List of type of service metrics";
                                  leaf router-tos {
                                    type uint16;
                                    description
                                      "Type of Service";
                                  }
    
                                  leaf tos-cost {
                                    type uint16;
                                    description
                                      "Type of service specific metric";
                                  }
                                }  // list link-tos
                              }  // list link
    
                              list internal-link {
                                description
                                  "List of links for internal LSA";
                                leaf link-id {
                                  type inet:ipv4-address;
                                  description
                                    "Link ID";
                                }
    
                                leaf link-data {
                                  type inet:ipv4-address;
                                  description
                                    "Link Data";
                                }
    
                                leaf link-type {
                                  type Ospf-link-types;
                                  description
                                    "Type of link";
                                }
    
                                leaf link-metric {
                                  type uint16;
                                  description
                                    "Cost for using this link";
                                }
    
                                list link-tos {
                                  description
                                    "List of type of service metrics";
                                  leaf router-tos {
                                    type uint16;
                                    description
                                      "Type of Service";
                                  }
    
                                  leaf tos-cost {
                                    type uint16;
                                    description
                                      "Type of service specific metric";
                                  }
                                }  // list link-tos
                              }  // list internal-link
                            }  // container router-lsa-type
    
                            container network-lsa-type {
                              when
                                "../internal-lsa-type = 'mgmt-ntwk-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_NTWK_TYPE'";
                              }
                              description
                                "Network LSA";
                              leaf network-prefix-length {
                                type uint32;
                                description
                                  "Prefix length of the Network";
                              }
    
                              list neighbor-router {
                                description
                                  "Neighbor router list";
                                leaf entry {
                                  type inet:ipv4-address;
                                  description
                                    "Neighbor router list";
                                }
                              }  // list neighbor-router
                            }  // container network-lsa-type
    
                            container summary-lsa-type {
                              when
                                "../internal-lsa-type = 'mgmt-sum-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_SUM_TYPE'";
                              }
                              description
                                "Summary LSA";
                              leaf summary-prefix-length {
                                type uint32;
                                description
                                  "Prefix length of the Summary LSA";
                              }
    
                              leaf internal-sum-lsa {
                                type boolean;
                                description
                                  "If true, internal max-metric LSA";
                              }
    
                              list summary-lsa-metric {
                                description
                                  "Metric";
                                leaf entry {
                                  type uint32;
                                  description
                                    "Metric";
                                }
                              }  // list summary-lsa-metric
                            }  // container summary-lsa-type
    
                            container external-lsa-type {
                              when
                                "../internal-lsa-type = 'mgmt-ext-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_EXT_TYPE'";
                              }
                              description
                                "External LSA";
                              leaf external-prefix-length {
                                type uint32;
                                description
                                  "Prefix length";
                              }
    
                              leaf internal-external-lsa {
                                type boolean;
                                description
                                  "If true, internal max-metric LSA";
                              }
    
                              list external-tos-metric {
                                description
                                  "Type of service information";
                                leaf external-metric {
                                  type uint32;
                                  description
                                    "Cost of this route";
                                }
    
                                leaf external-metric-type {
                                  type Ex-metric;
                                  description
                                    "External LSA metric type - whether type 1 or
    type 2";
                                }
    
                                leaf external-tos {
                                  type uint32;
                                  description
                                    "Type of Service";
                                }
    
                                leaf forwarding-address {
                                  type inet:ipv4-address;
                                  description
                                    "Forwarding Address on the External LSA";
                                }
    
                                leaf external-tag {
                                  type uint32;
                                  description
                                    "Route Tag";
                                }
                              }  // list external-tos-metric
                            }  // container external-lsa-type
    
                            container opaque-link-lsa-type {
                              when
                                "../internal-lsa-type = 'mgmt-opq-link-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_OPQ_LINK_TYPE'";
                              }
                              description
                                "Opaque-Link LSA";
                              leaf opaque-interface-name {
                                type xr:Interface-name;
                                description
                                  "Interface on which the Opaque link LSA is
    received";
                              }
                            }  // container opaque-link-lsa-type
    
                            container opaque-mpls-te-lsa-type {
                              when
                                "../internal-lsa-type = 'mgmt-opq-rrr-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_OPQ_RRR_TYPE'";
                              }
                              description
                                "Opaque-Area, opaque type 1 LSA";
                              list tlv {
                                description
                                  "List of TLVs";
                                leaf tlv-type {
                                  type uint16;
                                  description
                                    "Type of top-level TLV";
                                }
    
                                leaf tlv-length {
                                  type uint16;
                                  description
                                    "Length of top-level TLV";
                                }
    
                                leaf mpls-router-id {
                                  type inet:ipv4-address;
                                  description
                                    "MPLS-TE Router ID";
                                }
    
                                leaf mpls-dste-link {
                                  type boolean;
                                  description
                                    "MPLS DS-TE supported";
                                }
    
                                leaf tlv-data {
                                  type yang:hex-string;
                                  description
                                    "TLV direct data";
                                }
    
                                list te-link-sub-tlv {
                                  description
                                    "List of Sub-TLVs";
                                  leaf sub-tlv-type {
                                    type Stlv;
                                    description
                                      "Type of sub TLV";
                                  }
    
                                  leaf sub-tlv-length {
                                    type uint16;
                                    description
                                      "Length of sub TLV";
                                  }
    
                                  leaf sub-tlv-value {
                                    type yang:hex-string;
                                    description
                                      "Value of sub TLV";
                                  }
                                }  // list te-link-sub-tlv
                              }  // list tlv
                            }  // container opaque-mpls-te-lsa-type
    
                            container opaque-grace-lsa {
                              when
                                "../internal-lsa-type = 'mgmt-opq-gr-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_OPQ_GR_TYPE'";
                              }
                              description
                                "Opaque-link, opaque type 3 Grace LSA";
                              leaf grace-period {
                                type uint32;
                                description
                                  "The amount of time the router's neighbor should
    advertise it fully adjacent (s)";
                              }
    
                              leaf grace-reason {
                                type Ospf-gr-reason;
                                description
                                  "Reason for router restart";
                              }
    
                              leaf ip-address {
                                type inet:ipv4-address;
                                description
                                  "IP interface address on the subnet associated
    with the grace LSA";
                              }
                            }  // container opaque-grace-lsa
    
                            container opaque-router-info-lsa-type {
                              when
                                "../internal-lsa-type = 'mgmt-opq-ri-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_OPQ_RI_TYPE'";
                              }
                              description
                                "Opaque Router Information LSA";
                              leaf opaque-rilsa-scope {
                                type Ospf-lsa-opq-ri-scope;
                                description
                                  "Opaque LSA flooding scope, a.k.a., Opaque LSA
    Type";
                              }
    
                              leaf opaque-ri-interface-name {
                                type xr:Interface-name;
                                description
                                  "Interface on which this Link-Local Opaque link
    LSA is received";
                              }
    
                              list opaque-ritlv {
                                description
                                  "Router Information TLV";
                                container unknown-tlv {
                                  when
                                    "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-unknown'" {
                                    description
                                      "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_UNKNOWN'";
                                  }
                                  description
                                    "Unknown Rtr Info TLV";
                                  leaf ri-gen-tlv-type {
                                    type uint16;
                                    description
                                      "Type of TLV";
                                  }
    
                                  leaf ri-gen-tlv-length {
                                    type uint16;
                                    description
                                      "Length of TLV";
                                  }
    
                                  leaf ri-genvalue {
                                    type yang:hex-string;
                                    description
                                      "Data in TLV";
                                  }
                                }  // container unknown-tlv
    
                                container rtr-cap-tlv {
                                  when
                                    "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-rtrcap'" {
                                    description
                                      "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_RTRCAP'";
                                  }
                                  description
                                    "Rtr Cap TLV";
                                  leaf rtr-cap-tlv-length {
                                    type uint16;
                                    description
                                      "Length of TLV";
                                  }
    
                                  leaf rtr-cap-graceful-restart {
                                    type boolean;
                                    description
                                      "Graceful Restart Capability";
                                  }
    
                                  leaf rtr-cap-graceful-restart-helper {
                                    type boolean;
                                    description
                                      "Graceful Restart Helper Capability";
                                  }
    
                                  leaf rtr-cap-stub-rtr {
                                    type boolean;
                                    description
                                      "Stub Router capability";
                                  }
    
                                  leaf rtr-cap-area-te {
                                    type boolean;
                                    description
                                      "Traffic Engineering capability of area";
                                  }
    
                                  leaf rtr-cap-p2plan {
                                    type boolean;
                                    description
                                      "P2P LAN Capability";
                                  }
    
                                  leaf rtr-cap-te-exp {
                                    type boolean;
                                    description
                                      "TE Experimental bit";
                                  }
    
                                  leaf rtr-cap-all-bits {
                                    type uint32;
                                    description
                                      "All capability bits";
                                  }
    
                                  leaf rtr-cap-additional-info {
                                    type yang:hex-string;
                                    description
                                      "Additional Information in TLV";
                                  }
                                }  // container rtr-cap-tlv
    
                                container pcedtlv {
                                  when
                                    "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-pce-discovery'" {
                                    description
                                      "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_PCEDISCOVERY'";
                                  }
                                  description
                                    "PCE Discovery TLV";
                                  container pced-addr {
                                    description
                                      "PCE Address";
                                    container pce-addr-unknown-tlv {
                                      when
                                        "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-invalid'" {
                                        description
                                          "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_INVALID'";
                                      }
                                      description
                                        "Unknown PCE Addr TLV";
                                      leaf ri-gen-tlv-type {
                                        type uint16;
                                        description
                                          "Type of TLV";
                                      }
    
                                      leaf ri-gen-tlv-length {
                                        type uint16;
                                        description
                                          "Length of TLV";
                                      }
    
                                      leaf ri-genvalue {
                                        type yang:hex-string;
                                        description
                                          "Data in TLV";
                                      }
                                    }  // container pce-addr-unknown-tlv
    
                                    container ipv4pce-addr {
                                      when
                                        "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv4'" {
                                        description
                                          "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV4'";
                                      }
                                      description
                                        "IPv4 PCE Address";
                                      leaf pceipv4-addr {
                                        type inet:ipv4-address;
                                        description
                                          "PCE IPv4 Address";
                                      }
                                    }  // container ipv4pce-addr
    
                                    container ipv6pce-addr {
                                      when
                                        "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv6'" {
                                        description
                                          "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV6'";
                                      }
                                      description
                                        "IPv6 PCE Address";
                                      leaf pceipv6-addr {
                                        type inet:ipv6-address;
                                        description
                                          "PCE IPv6 Address";
                                      }
                                    }  // container ipv6pce-addr
    
                                    leaf pce-addr-type {
                                      type Ospf-sh-opq-ri-pce-addr-types;
                                      description
                                        "PCEAddrType";
                                    }
                                  }  // container pced-addr
    
                                  container pced-scope {
                                    description
                                      "PCE Scope Information";
                                    leaf lbit {
                                      type boolean;
                                      description
                                        "L Bit";
                                    }
    
                                    leaf rbit {
                                      type boolean;
                                      description
                                        "R Bit";
                                    }
    
                                    leaf rd-bit {
                                      type boolean;
                                      description
                                        "Rd Bit";
                                    }
    
                                    leaf sbit {
                                      type boolean;
                                      description
                                        "S Bit";
                                    }
    
                                    leaf sd-bit {
                                      type boolean;
                                      description
                                        "Sd Bit";
                                    }
    
                                    leaf ybit {
                                      type boolean;
                                      description
                                        "Y Bit";
                                    }
    
                                    leaf pref-l {
                                      type uint8;
                                      description
                                        "Pref L";
                                    }
    
                                    leaf pref-r {
                                      type uint8;
                                      description
                                        "Pref R";
                                    }
    
                                    leaf pref-s {
                                      type uint8;
                                      description
                                        "Pref S";
                                    }
    
                                    leaf pref-y {
                                      type uint8;
                                      description
                                        "Pref Y";
                                    }
    
                                    leaf all-scope-info-bits {
                                      type uint32;
                                      description
                                        "PCE Scope Information";
                                    }
                                  }  // container pced-scope
    
                                  leaf pcedtlv-length {
                                    type uint16;
                                    description
                                      "Length of TLV";
                                  }
                                }  // container pcedtlv
    
                                container sr-algo-tlv {
                                  when
                                    "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-algo'" {
                                    description
                                      "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_ALGO'";
                                  }
                                  description
                                    "SR Algorithm TLV";
                                  list sr-algo-value {
                                    description
                                      "SR Algorithms";
                                    leaf entry {
                                      type uint8;
                                      description
                                        "SR Algorithms";
                                    }
                                  }  // list sr-algo-value
                                }  // container sr-algo-tlv
    
                                container sr-range-tlv {
                                  when
                                    "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-range'" {
                                    description
                                      "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_RANGE'";
                                  }
                                  description
                                    "SR Range TLV";
                                  container sidtlv {
                                    description
                                      "SID sub-TLV";
                                    leaf sr-sid-length {
                                      type uint16;
                                      description
                                        "Length of sub-TLV";
                                    }
    
                                    leaf sr-sid-value {
                                      type uint32;
                                      description
                                        "SID Value";
                                    }
                                  }  // container sidtlv
    
                                  leaf sr-range-length {
                                    type uint16;
                                    description
                                      "Length of TLV";
                                  }
    
                                  leaf sr-range-size {
                                    type uint32;
                                    description
                                      "SR Range Size";
                                  }
                                }  // container sr-range-tlv
    
                                container node-msdtlv {
                                  when
                                    "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-node-msd'" {
                                    description
                                      "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_NODE_MSD'";
                                  }
                                  description
                                    "Node MSD TLV";
                                  container node-msd-sub-types {
                                    description
                                      "Node MSD Subtypes";
                                    leaf msd-sub-type {
                                      type uint8;
                                      description
                                        "MSD SubType";
                                    }
    
                                    leaf msd-value {
                                      type uint8;
                                      description
                                        "MSD Value";
                                    }
                                  }  // container node-msd-sub-types
    
                                  leaf node-msdtlv-length {
                                    type uint16;
                                    description
                                      "Length of TLV";
                                  }
                                }  // container node-msdtlv
    
                                container srlbtlv {
                                  when
                                    "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-srlb'" {
                                    description
                                      "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SRLB'";
                                  }
                                  description
                                    "SRLB Range TLV";
                                  container sidtlv {
                                    description
                                      "SID sub-TLV";
                                    leaf sr-sid-length {
                                      type uint16;
                                      description
                                        "Length of sub-TLV";
                                    }
    
                                    leaf sr-sid-value {
                                      type uint32;
                                      description
                                        "SID Value";
                                    }
                                  }  // container sidtlv
    
                                  leaf srlbtlv-length {
                                    type uint16;
                                    description
                                      "Length of TLV";
                                  }
    
                                  leaf srlb-range-size {
                                    type uint32;
                                    description
                                      "SRLB Range Size";
                                  }
                                }  // container srlbtlv
    
                                container fadlv {
                                  when
                                    "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-fad'" {
                                    description
                                      "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_FAD'";
                                  }
                                  description
                                    "FAD TLV";
                                  container exclude-attribute {
                                    description
                                      "Exclude sub-TLV";
                                    leaf fad-sub-tlv-length {
                                      type uint16;
                                      description
                                        "Length of sub-TLV";
                                    }
    
                                    list fad-admin-group {
                                      description
                                        "FAD Admin Group";
                                      leaf entry {
                                        type uint32;
                                        description
                                          "FAD Admin Group";
                                      }
                                    }  // list fad-admin-group
                                  }  // container exclude-attribute
    
                                  container include-any-attribute {
                                    description
                                      "Include any sub-TLV";
                                    leaf fad-sub-tlv-length {
                                      type uint16;
                                      description
                                        "Length of sub-TLV";
                                    }
    
                                    list fad-admin-group {
                                      description
                                        "FAD Admin Group";
                                      leaf entry {
                                        type uint32;
                                        description
                                          "FAD Admin Group";
                                      }
                                    }  // list fad-admin-group
                                  }  // container include-any-attribute
    
                                  container include-all-attribute {
                                    description
                                      "Include all sub-TLV";
                                    leaf fad-sub-tlv-length {
                                      type uint16;
                                      description
                                        "Length of sub-TLV";
                                    }
    
                                    list fad-admin-group {
                                      description
                                        "FAD Admin Group";
                                      leaf entry {
                                        type uint32;
                                        description
                                          "FAD Admin Group";
                                      }
                                    }  // list fad-admin-group
                                  }  // container include-all-attribute
    
                                  container fad-unsupported-tlv {
                                    description
                                      "Felx Algo unsupported TLV";
                                    leaf fad-sub-tlv-length {
                                      type uint16;
                                      description
                                        "Length of sub-TLV";
                                    }
    
                                    list fad-unknown-data {
                                      description
                                        "FAD unknown TLV data";
                                      leaf entry {
                                        type uint8;
                                        description
                                          "FAD unknown TLV data";
                                      }
                                    }  // list fad-unknown-data
                                  }  // container fad-unsupported-tlv
    
                                  leaf fad-length {
                                    type uint16;
                                    description
                                      "Length of TLV";
                                  }
    
                                  leaf fad-algo {
                                    type uint8;
                                    description
                                      "Flex ALgo number";
                                  }
    
                                  leaf fad-metric-type {
                                    type uint8;
                                    description
                                      "Flex Algo Metric Type";
                                  }
    
                                  leaf fad-algo-type {
                                    type uint8;
                                    description
                                      "Flex Algo Calc type";
                                  }
    
                                  leaf fad-priority {
                                    type uint8;
                                    description
                                      "Flex Algo Priority";
                                  }
    
                                  leaf fad-unsupported-tlv-type {
                                    type uint8;
                                    description
                                      "Flex Algo unsupported TLV type";
                                  }
                                }  // container fadlv
    
                                container host-name {
                                  when
                                    "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-host-name'" {
                                    description
                                      "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_HOSTNAME'";
                                  }
                                  description
                                    "Hostname string ";
                                  leaf router-host-name {
                                    type string {
                                      length
                                        "0..256";
                                    }
                                    description
                                      "Hostname string";
                                  }
                                }  // container host-name
    
                                leaf ritlv-internal-type {
                                  type Ospf-sh-opq-ri-tlv-types;
                                  description
                                    "RITLVInternalType";
                                }
                              }  // list opaque-ritlv
                            }  // container opaque-router-info-lsa-type
    
                            container opaque-ep-lsa-type {
                              when
                                "../internal-lsa-type = 'mgmt-opq-epl-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_OPQ_EPL_TYPE'";
                              }
                              description
                                "Extende Prefix LSA type";
                              list tlv {
                                description
                                  "List of TLVs";
                                leaf tlv-type {
                                  type uint16;
                                  description
                                    "Type of top-level TLV";
                                }
    
                                leaf tlv-length {
                                  type uint16;
                                  description
                                    "Length of top-level TLV";
                                }
    
                                leaf mpls-router-id {
                                  type inet:ipv4-address;
                                  description
                                    "MPLS-TE Router ID";
                                }
    
                                leaf mpls-dste-link {
                                  type boolean;
                                  description
                                    "MPLS DS-TE supported";
                                }
    
                                leaf tlv-data {
                                  type yang:hex-string;
                                  description
                                    "TLV direct data";
                                }
    
                                list te-link-sub-tlv {
                                  description
                                    "List of Sub-TLVs";
                                  leaf sub-tlv-type {
                                    type Stlv;
                                    description
                                      "Type of sub TLV";
                                  }
    
                                  leaf sub-tlv-length {
                                    type uint16;
                                    description
                                      "Length of sub TLV";
                                  }
    
                                  leaf sub-tlv-value {
                                    type yang:hex-string;
                                    description
                                      "Value of sub TLV";
                                  }
                                }  // list te-link-sub-tlv
                              }  // list tlv
                            }  // container opaque-ep-lsa-type
    
                            container opaque-el-lsa-type {
                              when
                                "../internal-lsa-type = 'mgmt-opq-ell-type'" {
                                description
                                  "../InternalLSAType = 'MGMT_OPQ_ELL_TYPE'";
                              }
                              description
                                "Extended Link LSA type";
                              list tlv {
                                description
                                  "List of TLVs";
                                leaf tlv-type {
                                  type uint16;
                                  description
                                    "Type of top-level TLV";
                                }
    
                                leaf tlv-length {
                                  type uint16;
                                  description
                                    "Length of top-level TLV";
                                }
    
                                leaf mpls-router-id {
                                  type inet:ipv4-address;
                                  description
                                    "MPLS-TE Router ID";
                                }
    
                                leaf mpls-dste-link {
                                  type boolean;
                                  description
                                    "MPLS DS-TE supported";
                                }
    
                                leaf tlv-data {
                                  type yang:hex-string;
                                  description
                                    "TLV direct data";
                                }
    
                                list te-link-sub-tlv {
                                  description
                                    "List of Sub-TLVs";
                                  leaf sub-tlv-type {
                                    type Stlv;
                                    description
                                      "Type of sub TLV";
                                  }
    
                                  leaf sub-tlv-length {
                                    type uint16;
                                    description
                                      "Length of sub TLV";
                                  }
    
                                  leaf sub-tlv-value {
                                    type yang:hex-string;
                                    description
                                      "Value of sub TLV";
                                  }
                                }  // list te-link-sub-tlv
                              }  // list tlv
                            }  // container opaque-el-lsa-type
    
                            leaf internal-lsa-type {
                              type Ospf-internal-lsa-types;
                              description
                                "InternalLSAType";
                            }
                          }  // container lsa-internal-data
                        }  // list lsa
                      }  // container lsas
    
                      container lsa-summaries {
                        description
                          "Link state advertisement summary table";
                        list lsa-summary {
                          description
                            "LSA summary information";
                          leaf area-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Area ID";
                          }
    
                          leaf ls-type {
                            type Ospf-ls;
                            description
                              "Link state type";
                          }
    
                          leaf ls-id {
                            type inet:ipv4-address-no-zone;
                            description
                              "Link state ID";
                          }
    
                          leaf advertising-router {
                            type inet:ipv4-address-no-zone;
                            description
                              "Router ID of the Advertising Router";
                          }
    
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Name of the Interface";
                          }
    
                          container lsa-header {
                            description
                              "LSA header information";
                            leaf ls-type {
                              type Lsa;
                              description
                                "LSA type";
                            }
    
                            leaf lsid {
                              type inet:ipv4-address;
                              description
                                "LS ID";
                            }
    
                            leaf advertising-router {
                              type inet:ipv4-address;
                              description
                                "Router ID of Advertising Router";
                            }
    
                            leaf lsa-area-id {
                              type string {
                                length "0..16";
                              }
                              description
                                "Area ID in decimal or dotted-decimal format";
                            }
    
                            leaf lsa-age {
                              type uint16;
                              description
                                "LSA's Age (s)";
                            }
    
                            leaf dn-age-lsa {
                              type boolean;
                              description
                                "If true, Do Not Age this LSA";
                            }
    
                            leaf nsf {
                              type boolean;
                              description
                                "If true,  LSA received from neighbor during NSF";
                            }
    
                            leaf sequence-number {
                              type uint32;
                              description
                                "Current Sequence number";
                            }
    
                            leaf checksum {
                              type uint16;
                              description
                                "Checksum value";
                            }
                          }  // container lsa-header
    
                          leaf external-tag {
                            type uint32;
                            description
                              "Route Tag";
                          }
    
                          leaf link-count {
                            type uint16;
                            description
                              "Number of links";
                          }
                        }  // list lsa-summary
                      }  // container lsa-summaries
                    }  // list database-area
                  }  // container database-areas
    
                  container database-summaries {
                    description
                      "Link State database summary table";
                    list database-summary {
                      key "area-id";
                      description
                        "Link State Database summary for a particular
    area";
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description "Area ID";
                      }
    
                      leaf dbase-sum-area-id-string {
                        type string {
                          length "0..16";
                        }
                        description "Area id";
                      }
    
                      list area-lsa-counter {
                        description
                          "Summary counters for Area scope LSAs";
                        leaf lsa-type {
                          type Lsa;
                          description
                            "Type of LSAs";
                        }
    
                        leaf lsa-count {
                          type int32;
                          description
                            "Number of LSAs of this type";
                        }
    
                        leaf lsa-delete-count {
                          type int32;
                          description
                            "Number of deleted LSAs of this type";
                        }
    
                        leaf lsa-maxage-count {
                          type int32;
                          description
                            "Number of MaxAged LSAs of this type";
                        }
    
                        leaf lsa-self-count {
                          type int32;
                          description
                            "Number of self-generated LSAs";
                        }
                      }  // list area-lsa-counter
                    }  // list database-summary
                  }  // container database-summaries
    
                  container database-summary-as {
                    description
                      "Link State Database summary for the AS";
                    list as-lsa-counter {
                      description
                        "Summary counter for AS scope LSAs";
                      leaf lsa-type {
                        type Lsa;
                        description
                          "Type of LSAs";
                      }
    
                      leaf lsa-count {
                        type int32;
                        description
                          "Number of LSAs of this type";
                      }
    
                      leaf lsa-delete-count {
                        type int32;
                        description
                          "Number of deleted LSAs of this type";
                      }
    
                      leaf lsa-maxage-count {
                        type int32;
                        description
                          "Number of MaxAged LSAs of this type";
                      }
    
                      leaf lsa-self-count {
                        type int32;
                        description
                          "Number of self-generated LSAs";
                      }
                    }  // list as-lsa-counter
                  }  // container database-summary-as
    
                  container lsas {
                    description
                      "Link State Database Table";
                    list lsa {
                      description
                        "Link State Advertisement information";
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description "Area ID";
                      }
    
                      leaf ls-type {
                        type Ospf-ls;
                        description
                          "Link state type";
                      }
    
                      leaf ls-id {
                        type inet:ipv4-address-no-zone;
                        description
                          "Link state ID";
                      }
    
                      leaf advertising-router {
                        type inet:ipv4-address-no-zone;
                        description
                          "Router ID of the Advertising Router";
                      }
    
                      leaf interface-name {
                        type xr:Interface-name;
                        description
                          "Name of the Interface";
                      }
    
                      container lsa-header {
                        description
                          "Header information";
                        leaf ls-type {
                          type Lsa;
                          description "LSA type";
                        }
    
                        leaf lsid {
                          type inet:ipv4-address;
                          description "LS ID";
                        }
    
                        leaf advertising-router {
                          type inet:ipv4-address;
                          description
                            "Router ID of Advertising Router";
                        }
    
                        leaf lsa-area-id {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID in decimal or dotted-decimal format";
                        }
    
                        leaf lsa-age {
                          type uint16;
                          description
                            "LSA's Age (s)";
                        }
    
                        leaf dn-age-lsa {
                          type boolean;
                          description
                            "If true, Do Not Age this LSA";
                        }
    
                        leaf nsf {
                          type boolean;
                          description
                            "If true,  LSA received from neighbor during NSF";
                        }
    
                        leaf sequence-number {
                          type uint32;
                          description
                            "Current Sequence number";
                        }
    
                        leaf checksum {
                          type uint16;
                          description
                            "Checksum value";
                        }
                      }  // container lsa-header
    
                      container lsa-detail-data {
                        description
                          "Detailed LSA Information";
                        container lsa-throttle-timer {
                          description
                            "LSA throttle timer table information";
                          leaf timer-location {
                            type Timer-table;
                            description
                              "Timer table";
                          }
    
                          leaf timer-type {
                            type Timer;
                            description
                              "Timer type - whether maxage, refresh or checksum
    timer";
                          }
    
                          leaf second-table-index {
                            type uint8;
                            units "second";
                            description
                              "Index of the Seconds table";
                          }
    
                          leaf minute-table-index {
                            type uint8;
                            units "minute";
                            description
                              "Index of the Minutes table";
                          }
    
                          leaf last-inst-second-table-index {
                            type uint8;
                            units "second";
                            description
                              "Last Seconds table index processed";
                          }
    
                          leaf last-inst-minute-table-index {
                            type uint8;
                            units "minute";
                            description
                              "Last Minutes table index processed";
                          }
                        }  // container lsa-throttle-timer
    
                        container lsa-last-updated-time {
                          description
                            "Time LSA was last updated";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container lsa-last-updated-time
    
                        container lsadb-base-time-stamp {
                          description
                            "Current time stamp";
                          leaf second {
                            type uint32;
                            description "Second";
                          }
    
                          leaf nanosecond {
                            type uint32;
                            description
                              "Nanosecond";
                          }
                        }  // container lsadb-base-time-stamp
    
                        container not-delete {
                          description
                            "Reason why LSA is not deleted";
                          leaf free-time {
                            type uint32;
                            description
                              "The amount of time since the last check was made
    to free this LSA (s)";
                          }
    
                          leaf no-delete {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because delete flag not set on this LSA";
                          }
    
                          leaf neighbor-exchange {
                            type boolean;
                            description
                              "If true, the reason  not to delete this LSA is
    because neighbor is in exchange state";
                          }
    
                          leaf routing-table {
                            type boolean;
                            description
                              "If true, the reason  not to delete this LSA is
    because it has a contributing entry in the
    routing table";
                          }
    
                          leaf acknowledgement {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because it's Acknowledgement list is not empty";
                          }
    
                          leaf maximum-age {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because it is in Maxage Queue";
                          }
    
                          leaf partial-spf {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because it is in partial SPF queue";
                          }
    
                          leaf flood-pending {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because waiting for flooding or retransmission";
                          }
    
                          leaf rate-limit {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because waiting for next wait-interval to expire";
                          }
    
                          leaf nsr-ack-pending {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because NSR ACK from standby is pending";
                          }
    
                          leaf sum-orig-pending {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because it is pending summary LSA originating";
                          }
    
                          leaf nsr-flood-required {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because it is pending flooding on switchover";
                          }
    
                          leaf link-state-q {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because it is used in Link State Q";
                          }
    
                          leaf used-in-uloop {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because it is used in uloop";
                          }
    
                          leaf added-in-ulooplist {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because it is Added in uloopdblist";
                          }
    
                          leaf used-as-parent {
                            type boolean;
                            description
                              "If true, the reason not to delete this LSA is
    because it is used in parent_path_lsdb";
                          }
                        }  // container not-delete
    
                        leaf tos-capable {
                          type boolean;
                          description
                            "If true, type of service capable indicated by
    LSA's option field";
                        }
    
                        leaf nssa-translation {
                          type boolean;
                          description
                            "If true,  capable of type 7 to 5 translation
    indicated by LSA's option field";
                        }
    
                        leaf demand-circuit {
                          type boolean;
                          description
                            "If true, capable of demand circuit as indicated
    by LSA's option field";
                        }
    
                        leaf dn-bit {
                          type boolean;
                          description
                            "if true, DN bit set on the summary LSA indicated
    by LSA's option field";
                        }
    
                        leaf lsa-rate-limit-due-time {
                          type uint32;
                          description
                            "Due time for rate-limit timer (ms)";
                        }
    
                        leaf lsadb-base-clock {
                          type uint64;
                          description
                            "Clock stamp since boot";
                        }
    
                        leaf routing-bit {
                          type boolean;
                          description
                            "If true, Routing Bit set on the LSA";
                        }
    
                        leaf advertising-router-reachable {
                          type boolean;
                          description
                            "If true, Advertising Router is reachable";
                        }
    
                        leaf length {
                          type uint16;
                          description
                            "Length of the LSA";
                        }
    
                        leaf sum-origin {
                          type uint16;
                          description
                            "Summary Origin";
                        }
    
                        leaf ase-origin {
                          type uint16;
                          description
                            "External Origin";
                        }
    
                        leaf in-sync {
                          type uint8;
                          description
                            "Not In Sync With Active";
                        }
    
                        leaf lsa-prefix-priority {
                          type uint8;
                          description
                            "Current prefix priority";
                        }
    
                        leaf new-lsa-prefix-priority {
                          type uint8;
                          description
                            "New prefix priority to be set after the current
    SPF";
                        }
    
                        leaf lsa-flood-required-post-fail-over {
                          type boolean;
                          description
                            "LSA flood required after FO";
                        }
                      }  // container lsa-detail-data
    
                      container lsa-internal-data {
                        description
                          "Information pertaining to a specific LSA type";
                        container router-lsa-type {
                          when
                            "../internal-lsa-type = 'mgmt-rtr-type'" {
                            description
                              "../InternalLSAType = 'MGMT_RTR_TYPE'";
                          }
                          description
                            "Router LSA";
                          leaf router-asbr {
                            type boolean;
                            description
                              "If True, router is an Autonomous system Border
    Router";
                          }
    
                          leaf router-abr {
                            type boolean;
                            description
                              "If True, router is an Area Border Router";
                          }
    
                          leaf internal-lsa {
                            type boolean;
                            description
                              "If true, internal LSA";
                          }
    
                          list link {
                            description
                              "List of links in this LSA";
                            leaf link-id {
                              type inet:ipv4-address;
                              description
                                "Link ID";
                            }
    
                            leaf link-data {
                              type inet:ipv4-address;
                              description
                                "Link Data";
                            }
    
                            leaf link-type {
                              type Ospf-link-types;
                              description
                                "Type of link";
                            }
    
                            leaf link-metric {
                              type uint16;
                              description
                                "Cost for using this link";
                            }
    
                            list link-tos {
                              description
                                "List of type of service metrics";
                              leaf router-tos {
                                type uint16;
                                description
                                  "Type of Service";
                              }
    
                              leaf tos-cost {
                                type uint16;
                                description
                                  "Type of service specific metric";
                              }
                            }  // list link-tos
                          }  // list link
    
                          list internal-link {
                            description
                              "List of links for internal LSA";
                            leaf link-id {
                              type inet:ipv4-address;
                              description
                                "Link ID";
                            }
    
                            leaf link-data {
                              type inet:ipv4-address;
                              description
                                "Link Data";
                            }
    
                            leaf link-type {
                              type Ospf-link-types;
                              description
                                "Type of link";
                            }
    
                            leaf link-metric {
                              type uint16;
                              description
                                "Cost for using this link";
                            }
    
                            list link-tos {
                              description
                                "List of type of service metrics";
                              leaf router-tos {
                                type uint16;
                                description
                                  "Type of Service";
                              }
    
                              leaf tos-cost {
                                type uint16;
                                description
                                  "Type of service specific metric";
                              }
                            }  // list link-tos
                          }  // list internal-link
                        }  // container router-lsa-type
    
                        container network-lsa-type {
                          when
                            "../internal-lsa-type = 'mgmt-ntwk-type'" {
                            description
                              "../InternalLSAType = 'MGMT_NTWK_TYPE'";
                          }
                          description
                            "Network LSA";
                          leaf network-prefix-length {
                            type uint32;
                            description
                              "Prefix length of the Network";
                          }
    
                          list neighbor-router {
                            description
                              "Neighbor router list";
                            leaf entry {
                              type inet:ipv4-address;
                              description
                                "Neighbor router list";
                            }
                          }  // list neighbor-router
                        }  // container network-lsa-type
    
                        container summary-lsa-type {
                          when
                            "../internal-lsa-type = 'mgmt-sum-type'" {
                            description
                              "../InternalLSAType = 'MGMT_SUM_TYPE'";
                          }
                          description
                            "Summary LSA";
                          leaf summary-prefix-length {
                            type uint32;
                            description
                              "Prefix length of the Summary LSA";
                          }
    
                          leaf internal-sum-lsa {
                            type boolean;
                            description
                              "If true, internal max-metric LSA";
                          }
    
                          list summary-lsa-metric {
                            description "Metric";
                            leaf entry {
                              type uint32;
                              description
                                "Metric";
                            }
                          }  // list summary-lsa-metric
                        }  // container summary-lsa-type
    
                        container external-lsa-type {
                          when
                            "../internal-lsa-type = 'mgmt-ext-type'" {
                            description
                              "../InternalLSAType = 'MGMT_EXT_TYPE'";
                          }
                          description
                            "External LSA";
                          leaf external-prefix-length {
                            type uint32;
                            description
                              "Prefix length";
                          }
    
                          leaf internal-external-lsa {
                            type boolean;
                            description
                              "If true, internal max-metric LSA";
                          }
    
                          list external-tos-metric {
                            description
                              "Type of service information";
                            leaf external-metric {
                              type uint32;
                              description
                                "Cost of this route";
                            }
    
                            leaf external-metric-type {
                              type Ex-metric;
                              description
                                "External LSA metric type - whether type 1 or
    type 2";
                            }
    
                            leaf external-tos {
                              type uint32;
                              description
                                "Type of Service";
                            }
    
                            leaf forwarding-address {
                              type inet:ipv4-address;
                              description
                                "Forwarding Address on the External LSA";
                            }
    
                            leaf external-tag {
                              type uint32;
                              description
                                "Route Tag";
                            }
                          }  // list external-tos-metric
                        }  // container external-lsa-type
    
                        container opaque-link-lsa-type {
                          when
                            "../internal-lsa-type = 'mgmt-opq-link-type'" {
                            description
                              "../InternalLSAType = 'MGMT_OPQ_LINK_TYPE'";
                          }
                          description
                            "Opaque-Link LSA";
                          leaf opaque-interface-name {
                            type xr:Interface-name;
                            description
                              "Interface on which the Opaque link LSA is
    received";
                          }
                        }  // container opaque-link-lsa-type
    
                        container opaque-mpls-te-lsa-type {
                          when
                            "../internal-lsa-type = 'mgmt-opq-rrr-type'" {
                            description
                              "../InternalLSAType = 'MGMT_OPQ_RRR_TYPE'";
                          }
                          description
                            "Opaque-Area, opaque type 1 LSA";
                          list tlv {
                            description
                              "List of TLVs";
                            leaf tlv-type {
                              type uint16;
                              description
                                "Type of top-level TLV";
                            }
    
                            leaf tlv-length {
                              type uint16;
                              description
                                "Length of top-level TLV";
                            }
    
                            leaf mpls-router-id {
                              type inet:ipv4-address;
                              description
                                "MPLS-TE Router ID";
                            }
    
                            leaf mpls-dste-link {
                              type boolean;
                              description
                                "MPLS DS-TE supported";
                            }
    
                            leaf tlv-data {
                              type yang:hex-string;
                              description
                                "TLV direct data";
                            }
    
                            list te-link-sub-tlv {
                              description
                                "List of Sub-TLVs";
                              leaf sub-tlv-type {
                                type Stlv;
                                description
                                  "Type of sub TLV";
                              }
    
                              leaf sub-tlv-length {
                                type uint16;
                                description
                                  "Length of sub TLV";
                              }
    
                              leaf sub-tlv-value {
                                type yang:hex-string;
                                description
                                  "Value of sub TLV";
                              }
                            }  // list te-link-sub-tlv
                          }  // list tlv
                        }  // container opaque-mpls-te-lsa-type
    
                        container opaque-grace-lsa {
                          when
                            "../internal-lsa-type = 'mgmt-opq-gr-type'" {
                            description
                              "../InternalLSAType = 'MGMT_OPQ_GR_TYPE'";
                          }
                          description
                            "Opaque-link, opaque type 3 Grace LSA";
                          leaf grace-period {
                            type uint32;
                            description
                              "The amount of time the router's neighbor should
    advertise it fully adjacent (s)";
                          }
    
                          leaf grace-reason {
                            type Ospf-gr-reason;
                            description
                              "Reason for router restart";
                          }
    
                          leaf ip-address {
                            type inet:ipv4-address;
                            description
                              "IP interface address on the subnet associated
    with the grace LSA";
                          }
                        }  // container opaque-grace-lsa
    
                        container opaque-router-info-lsa-type {
                          when
                            "../internal-lsa-type = 'mgmt-opq-ri-type'" {
                            description
                              "../InternalLSAType = 'MGMT_OPQ_RI_TYPE'";
                          }
                          description
                            "Opaque Router Information LSA";
                          leaf opaque-rilsa-scope {
                            type Ospf-lsa-opq-ri-scope;
                            description
                              "Opaque LSA flooding scope, a.k.a., Opaque LSA
    Type";
                          }
    
                          leaf opaque-ri-interface-name {
                            type xr:Interface-name;
                            description
                              "Interface on which this Link-Local Opaque link
    LSA is received";
                          }
    
                          list opaque-ritlv {
                            description
                              "Router Information TLV";
                            container unknown-tlv {
                              when
                                "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-unknown'" {
                                description
                                  "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_UNKNOWN'";
                              }
                              description
                                "Unknown Rtr Info TLV";
                              leaf ri-gen-tlv-type {
                                type uint16;
                                description
                                  "Type of TLV";
                              }
    
                              leaf ri-gen-tlv-length {
                                type uint16;
                                description
                                  "Length of TLV";
                              }
    
                              leaf ri-genvalue {
                                type yang:hex-string;
                                description
                                  "Data in TLV";
                              }
                            }  // container unknown-tlv
    
                            container rtr-cap-tlv {
                              when
                                "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-rtrcap'" {
                                description
                                  "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_RTRCAP'";
                              }
                              description
                                "Rtr Cap TLV";
                              leaf rtr-cap-tlv-length {
                                type uint16;
                                description
                                  "Length of TLV";
                              }
    
                              leaf rtr-cap-graceful-restart {
                                type boolean;
                                description
                                  "Graceful Restart Capability";
                              }
    
                              leaf rtr-cap-graceful-restart-helper {
                                type boolean;
                                description
                                  "Graceful Restart Helper Capability";
                              }
    
                              leaf rtr-cap-stub-rtr {
                                type boolean;
                                description
                                  "Stub Router capability";
                              }
    
                              leaf rtr-cap-area-te {
                                type boolean;
                                description
                                  "Traffic Engineering capability of area";
                              }
    
                              leaf rtr-cap-p2plan {
                                type boolean;
                                description
                                  "P2P LAN Capability";
                              }
    
                              leaf rtr-cap-te-exp {
                                type boolean;
                                description
                                  "TE Experimental bit";
                              }
    
                              leaf rtr-cap-all-bits {
                                type uint32;
                                description
                                  "All capability bits";
                              }
    
                              leaf rtr-cap-additional-info {
                                type yang:hex-string;
                                description
                                  "Additional Information in TLV";
                              }
                            }  // container rtr-cap-tlv
    
                            container pcedtlv {
                              when
                                "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-pce-discovery'" {
                                description
                                  "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_PCEDISCOVERY'";
                              }
                              description
                                "PCE Discovery TLV";
                              container pced-addr {
                                description
                                  "PCE Address";
                                container pce-addr-unknown-tlv {
                                  when
                                    "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-invalid'" {
                                    description
                                      "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_INVALID'";
                                  }
                                  description
                                    "Unknown PCE Addr TLV";
                                  leaf ri-gen-tlv-type {
                                    type uint16;
                                    description
                                      "Type of TLV";
                                  }
    
                                  leaf ri-gen-tlv-length {
                                    type uint16;
                                    description
                                      "Length of TLV";
                                  }
    
                                  leaf ri-genvalue {
                                    type yang:hex-string;
                                    description
                                      "Data in TLV";
                                  }
                                }  // container pce-addr-unknown-tlv
    
                                container ipv4pce-addr {
                                  when
                                    "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv4'" {
                                    description
                                      "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV4'";
                                  }
                                  description
                                    "IPv4 PCE Address";
                                  leaf pceipv4-addr {
                                    type inet:ipv4-address;
                                    description
                                      "PCE IPv4 Address";
                                  }
                                }  // container ipv4pce-addr
    
                                container ipv6pce-addr {
                                  when
                                    "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv6'" {
                                    description
                                      "../PCEAddrType =
    'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV6'";
                                  }
                                  description
                                    "IPv6 PCE Address";
                                  leaf pceipv6-addr {
                                    type inet:ipv6-address;
                                    description
                                      "PCE IPv6 Address";
                                  }
                                }  // container ipv6pce-addr
    
                                leaf pce-addr-type {
                                  type Ospf-sh-opq-ri-pce-addr-types;
                                  description
                                    "PCEAddrType";
                                }
                              }  // container pced-addr
    
                              container pced-scope {
                                description
                                  "PCE Scope Information";
                                leaf lbit {
                                  type boolean;
                                  description
                                    "L Bit";
                                }
    
                                leaf rbit {
                                  type boolean;
                                  description
                                    "R Bit";
                                }
    
                                leaf rd-bit {
                                  type boolean;
                                  description
                                    "Rd Bit";
                                }
    
                                leaf sbit {
                                  type boolean;
                                  description
                                    "S Bit";
                                }
    
                                leaf sd-bit {
                                  type boolean;
                                  description
                                    "Sd Bit";
                                }
    
                                leaf ybit {
                                  type boolean;
                                  description
                                    "Y Bit";
                                }
    
                                leaf pref-l {
                                  type uint8;
                                  description
                                    "Pref L";
                                }
    
                                leaf pref-r {
                                  type uint8;
                                  description
                                    "Pref R";
                                }
    
                                leaf pref-s {
                                  type uint8;
                                  description
                                    "Pref S";
                                }
    
                                leaf pref-y {
                                  type uint8;
                                  description
                                    "Pref Y";
                                }
    
                                leaf all-scope-info-bits {
                                  type uint32;
                                  description
                                    "PCE Scope Information";
                                }
                              }  // container pced-scope
    
                              leaf pcedtlv-length {
                                type uint16;
                                description
                                  "Length of TLV";
                              }
                            }  // container pcedtlv
    
                            container sr-algo-tlv {
                              when
                                "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-algo'" {
                                description
                                  "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_ALGO'";
                              }
                              description
                                "SR Algorithm TLV";
                              list sr-algo-value {
                                description
                                  "SR Algorithms";
                                leaf entry {
                                  type uint8;
                                  description
                                    "SR Algorithms";
                                }
                              }  // list sr-algo-value
                            }  // container sr-algo-tlv
    
                            container sr-range-tlv {
                              when
                                "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-range'" {
                                description
                                  "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_RANGE'";
                              }
                              description
                                "SR Range TLV";
                              container sidtlv {
                                description
                                  "SID sub-TLV";
                                leaf sr-sid-length {
                                  type uint16;
                                  description
                                    "Length of sub-TLV";
                                }
    
                                leaf sr-sid-value {
                                  type uint32;
                                  description
                                    "SID Value";
                                }
                              }  // container sidtlv
    
                              leaf sr-range-length {
                                type uint16;
                                description
                                  "Length of TLV";
                              }
    
                              leaf sr-range-size {
                                type uint32;
                                description
                                  "SR Range Size";
                              }
                            }  // container sr-range-tlv
    
                            container node-msdtlv {
                              when
                                "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-node-msd'" {
                                description
                                  "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_NODE_MSD'";
                              }
                              description
                                "Node MSD TLV";
                              container node-msd-sub-types {
                                description
                                  "Node MSD Subtypes";
                                leaf msd-sub-type {
                                  type uint8;
                                  description
                                    "MSD SubType";
                                }
    
                                leaf msd-value {
                                  type uint8;
                                  description
                                    "MSD Value";
                                }
                              }  // container node-msd-sub-types
    
                              leaf node-msdtlv-length {
                                type uint16;
                                description
                                  "Length of TLV";
                              }
                            }  // container node-msdtlv
    
                            container srlbtlv {
                              when
                                "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-srlb'" {
                                description
                                  "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_SRLB'";
                              }
                              description
                                "SRLB Range TLV";
                              container sidtlv {
                                description
                                  "SID sub-TLV";
                                leaf sr-sid-length {
                                  type uint16;
                                  description
                                    "Length of sub-TLV";
                                }
    
                                leaf sr-sid-value {
                                  type uint32;
                                  description
                                    "SID Value";
                                }
                              }  // container sidtlv
    
                              leaf srlbtlv-length {
                                type uint16;
                                description
                                  "Length of TLV";
                              }
    
                              leaf srlb-range-size {
                                type uint32;
                                description
                                  "SRLB Range Size";
                              }
                            }  // container srlbtlv
    
                            container fadlv {
                              when
                                "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-fad'" {
                                description
                                  "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_FAD'";
                              }
                              description
                                "FAD TLV";
                              container exclude-attribute {
                                description
                                  "Exclude sub-TLV";
                                leaf fad-sub-tlv-length {
                                  type uint16;
                                  description
                                    "Length of sub-TLV";
                                }
    
                                list fad-admin-group {
                                  description
                                    "FAD Admin Group";
                                  leaf entry {
                                    type uint32;
                                    description
                                      "FAD Admin Group";
                                  }
                                }  // list fad-admin-group
                              }  // container exclude-attribute
    
                              container include-any-attribute {
                                description
                                  "Include any sub-TLV";
                                leaf fad-sub-tlv-length {
                                  type uint16;
                                  description
                                    "Length of sub-TLV";
                                }
    
                                list fad-admin-group {
                                  description
                                    "FAD Admin Group";
                                  leaf entry {
                                    type uint32;
                                    description
                                      "FAD Admin Group";
                                  }
                                }  // list fad-admin-group
                              }  // container include-any-attribute
    
                              container include-all-attribute {
                                description
                                  "Include all sub-TLV";
                                leaf fad-sub-tlv-length {
                                  type uint16;
                                  description
                                    "Length of sub-TLV";
                                }
    
                                list fad-admin-group {
                                  description
                                    "FAD Admin Group";
                                  leaf entry {
                                    type uint32;
                                    description
                                      "FAD Admin Group";
                                  }
                                }  // list fad-admin-group
                              }  // container include-all-attribute
    
                              container fad-unsupported-tlv {
                                description
                                  "Felx Algo unsupported TLV";
                                leaf fad-sub-tlv-length {
                                  type uint16;
                                  description
                                    "Length of sub-TLV";
                                }
    
                                list fad-unknown-data {
                                  description
                                    "FAD unknown TLV data";
                                  leaf entry {
                                    type uint8;
                                    description
                                      "FAD unknown TLV data";
                                  }
                                }  // list fad-unknown-data
                              }  // container fad-unsupported-tlv
    
                              leaf fad-length {
                                type uint16;
                                description
                                  "Length of TLV";
                              }
    
                              leaf fad-algo {
                                type uint8;
                                description
                                  "Flex ALgo number";
                              }
    
                              leaf fad-metric-type {
                                type uint8;
                                description
                                  "Flex Algo Metric Type";
                              }
    
                              leaf fad-algo-type {
                                type uint8;
                                description
                                  "Flex Algo Calc type";
                              }
    
                              leaf fad-priority {
                                type uint8;
                                description
                                  "Flex Algo Priority";
                              }
    
                              leaf fad-unsupported-tlv-type {
                                type uint8;
                                description
                                  "Flex Algo unsupported TLV type";
                              }
                            }  // container fadlv
    
                            container host-name {
                              when
                                "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-host-name'" {
                                description
                                  "../RITLVInternalType =
    'MGMT_OSPF_OPQ_RI_TLV_TYPE_HOSTNAME'";
                              }
                              description
                                "Hostname string ";
                              leaf router-host-name {
                                type string {
                                  length
                                    "0..256";
                                }
                                description
                                  "Hostname string";
                              }
                            }  // container host-name
    
                            leaf ritlv-internal-type {
                              type Ospf-sh-opq-ri-tlv-types;
                              description
                                "RITLVInternalType";
                            }
                          }  // list opaque-ritlv
                        }  // container opaque-router-info-lsa-type
    
                        container opaque-ep-lsa-type {
                          when
                            "../internal-lsa-type = 'mgmt-opq-epl-type'" {
                            description
                              "../InternalLSAType = 'MGMT_OPQ_EPL_TYPE'";
                          }
                          description
                            "Extende Prefix LSA type";
                          list tlv {
                            description
                              "List of TLVs";
                            leaf tlv-type {
                              type uint16;
                              description
                                "Type of top-level TLV";
                            }
    
                            leaf tlv-length {
                              type uint16;
                              description
                                "Length of top-level TLV";
                            }
    
                            leaf mpls-router-id {
                              type inet:ipv4-address;
                              description
                                "MPLS-TE Router ID";
                            }
    
                            leaf mpls-dste-link {
                              type boolean;
                              description
                                "MPLS DS-TE supported";
                            }
    
                            leaf tlv-data {
                              type yang:hex-string;
                              description
                                "TLV direct data";
                            }
    
                            list te-link-sub-tlv {
                              description
                                "List of Sub-TLVs";
                              leaf sub-tlv-type {
                                type Stlv;
                                description
                                  "Type of sub TLV";
                              }
    
                              leaf sub-tlv-length {
                                type uint16;
                                description
                                  "Length of sub TLV";
                              }
    
                              leaf sub-tlv-value {
                                type yang:hex-string;
                                description
                                  "Value of sub TLV";
                              }
                            }  // list te-link-sub-tlv
                          }  // list tlv
                        }  // container opaque-ep-lsa-type
    
                        container opaque-el-lsa-type {
                          when
                            "../internal-lsa-type = 'mgmt-opq-ell-type'" {
                            description
                              "../InternalLSAType = 'MGMT_OPQ_ELL_TYPE'";
                          }
                          description
                            "Extended Link LSA type";
                          list tlv {
                            description
                              "List of TLVs";
                            leaf tlv-type {
                              type uint16;
                              description
                                "Type of top-level TLV";
                            }
    
                            leaf tlv-length {
                              type uint16;
                              description
                                "Length of top-level TLV";
                            }
    
                            leaf mpls-router-id {
                              type inet:ipv4-address;
                              description
                                "MPLS-TE Router ID";
                            }
    
                            leaf mpls-dste-link {
                              type boolean;
                              description
                                "MPLS DS-TE supported";
                            }
    
                            leaf tlv-data {
                              type yang:hex-string;
                              description
                                "TLV direct data";
                            }
    
                            list te-link-sub-tlv {
                              description
                                "List of Sub-TLVs";
                              leaf sub-tlv-type {
                                type Stlv;
                                description
                                  "Type of sub TLV";
                              }
    
                              leaf sub-tlv-length {
                                type uint16;
                                description
                                  "Length of sub TLV";
                              }
    
                              leaf sub-tlv-value {
                                type yang:hex-string;
                                description
                                  "Value of sub TLV";
                              }
                            }  // list te-link-sub-tlv
                          }  // list tlv
                        }  // container opaque-el-lsa-type
    
                        leaf internal-lsa-type {
                          type Ospf-internal-lsa-types;
                          description
                            "InternalLSAType";
                        }
                      }  // container lsa-internal-data
                    }  // list lsa
                  }  // container lsas
    
                  container lsa-summaries {
                    description
                      "Link state advertisement summary table";
                    list lsa-summary {
                      description
                        "LSA summary information";
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description "Area ID";
                      }
    
                      leaf ls-type {
                        type Ospf-ls;
                        description
                          "Link state type";
                      }
    
                      leaf ls-id {
                        type inet:ipv4-address-no-zone;
                        description
                          "Link state ID";
                      }
    
                      leaf advertising-router {
                        type inet:ipv4-address-no-zone;
                        description
                          "Router ID of the Advertising Router";
                      }
    
                      leaf interface-name {
                        type xr:Interface-name;
                        description
                          "Name of the Interface";
                      }
    
                      container lsa-header {
                        description
                          "LSA header information";
                        leaf ls-type {
                          type Lsa;
                          description "LSA type";
                        }
    
                        leaf lsid {
                          type inet:ipv4-address;
                          description "LS ID";
                        }
    
                        leaf advertising-router {
                          type inet:ipv4-address;
                          description
                            "Router ID of Advertising Router";
                        }
    
                        leaf lsa-area-id {
                          type string {
                            length "0..16";
                          }
                          description
                            "Area ID in decimal or dotted-decimal format";
                        }
    
                        leaf lsa-age {
                          type uint16;
                          description
                            "LSA's Age (s)";
                        }
    
                        leaf dn-age-lsa {
                          type boolean;
                          description
                            "If true, Do Not Age this LSA";
                        }
    
                        leaf nsf {
                          type boolean;
                          description
                            "If true,  LSA received from neighbor during NSF";
                        }
    
                        leaf sequence-number {
                          type uint32;
                          description
                            "Current Sequence number";
                        }
    
                        leaf checksum {
                          type uint16;
                          description
                            "Checksum value";
                        }
                      }  // container lsa-header
    
                      leaf external-tag {
                        type uint32;
                        description "Route Tag";
                      }
    
                      leaf link-count {
                        type uint16;
                        description
                          "Number of links";
                      }
                    }  // list lsa-summary
                  }  // container lsa-summaries
                }  // container database
    
                container summary-prefixes {
                  description
                    "Summary prefix table";
                  list summary-prefix {
                    description
                      "Summary prefix information";
                    leaf prefix {
                      type inet:ipv4-address-no-zone;
                      description
                        "Summary Prefix";
                    }
    
                    leaf netmask {
                      type inet:ipv4-address-no-zone;
                      description "Summary Mask";
                    }
    
                    leaf summary-prefix {
                      type inet:ipv4-address;
                      description
                        "Ipv4 Summary prefix";
                    }
    
                    leaf summary-mask {
                      type inet:ipv4-address;
                      description
                        "subnet mask of Summary prefix";
                    }
    
                    leaf summary-metric {
                      type uint32;
                      description
                        "Cost of Summary";
                    }
    
                    leaf summary-metric-type {
                      type Ex-metric;
                      description
                        "Type of Metric";
                    }
    
                    leaf summary-tag {
                      type uint32;
                      description
                        "Tag associated with this summary prefix";
                    }
                  }  // list summary-prefix
                }  // container summary-prefixes
    
                container ospf-summary {
                  description
                    "Fast-reroute topology information";
                  leaf num-nbrs {
                    type uint32;
                    description
                      "Count of neighbors";
                  }
    
                  leaf num-nbrs-up {
                    type uint32;
                    description
                      "Count of neighbors that are UP";
                  }
    
                  leaf num-interfaces {
                    type uint32;
                    description
                      "Count of interfaces";
                  }
    
                  leaf num-interfaces-up {
                    type uint32;
                    description
                      "Count of interfaces that are UP";
                  }
    
                  leaf num-virtual-intfaces-up {
                    type uint32;
                    description
                      "Count of virtual interfaces that are UP";
                  }
    
                  leaf num-shamlink-interfaces-up {
                    type uint32;
                    description
                      "Count of shamlinks that are UP";
                  }
    
                  leaf num-areas {
                    type uint32;
                    description "Count of areas";
                  }
    
                  leaf num-router-lsas {
                    type uint32;
                    description
                      "Count of Router LSAs";
                  }
    
                  leaf num-network-lsas {
                    type uint32;
                    description
                      "Count of Network LSAs";
                  }
    
                  leaf num-network-summary-lsas {
                    type uint32;
                    description
                      "Count of Network Summary LSAs";
                  }
    
                  leaf num-asbr-summary-lsas {
                    type uint32;
                    description
                      "Count of ASBR Summary LSAs";
                  }
    
                  leaf num-as-external-lsas {
                    type uint32;
                    description
                      "Count of AS External LSAs";
                  }
    
                  leaf num-mospf-lsas {
                    type uint32;
                    description
                      "Count of MOSPF LSAs";
                  }
    
                  leaf num-nssa-external-lsas {
                    type uint32;
                    description
                      "Count of NSSA External LSAs";
                  }
    
                  leaf num-ignored-type8-lsas {
                    type uint32;
                    description
                      "Count of ignored Type 8 LSAs";
                  }
    
                  leaf num-opaque-link-lsas {
                    type uint32;
                    description
                      "Count of Opaque link-scoped LSAs";
                  }
    
                  leaf num-opaque-area-lsas {
                    type uint32;
                    description
                      "Count of Opaque area-scoped LSAs";
                  }
    
                  leaf num-opaque-as-lsas {
                    type uint32;
                    description
                      "Count of Opaque AS-scoped LSAs";
                  }
                }  // container ospf-summary
    
                container fast-reroute {
                  description
                    "Container for FastReroute";
                  container topologies {
                    description
                      "Fast-reroute topology information table";
                    list topology {
                      key "remote-router-id area-id";
                      description
                        "Fast-reroute topology information";
                      leaf remote-router-id {
                        type inet:ipv4-address-no-zone;
                        description
                          "Remote Node Router ID";
                      }
    
                      leaf area-id {
                        type uint32 {
                          range "0..4294967295";
                        }
                        description "Area ID";
                      }
    
                      leaf ipfrr-topo-area-id {
                        type string {
                          length "0..16";
                        }
                        description
                          "Area ID string in decimal or dotted decimal
    format";
                      }
    
                      leaf ipfrr-local-router-id {
                        type inet:ipv4-address;
                        description
                          "OSPF Local Node Router ID";
                      }
    
                      leaf ipfrr-area-revision {
                        type uint32;
                        description
                          "IPFRR Topology Revision";
                      }
    
                      list ipfrr-topo {
                        description
                          "IPFRR Topology entries";
                        leaf node-id {
                          type inet:ipv4-address;
                          description
                            "IPFRR Topology Node ID";
                        }
    
                        leaf distance {
                          type uint32;
                          description
                            "IPFRR Topology Distance";
                        }
    
                        leaf distance-reverse {
                          type uint32;
                          description
                            "IPFRR Topology Reverse Distance";
                        }
    
                        leaf type4 {
                          type boolean;
                          description
                            "IPFRR Topoogy Type-4 entry";
                        }
    
                        leaf revision {
                          type uint32;
                          description
                            "IPFRR Topology Revision";
                        }
    
                        leaf neighbor-sourced {
                          type boolean;
                          description
                            "IPFRR Topology Neighbor Sourced";
                        }
    
                        leaf dr {
                          type boolean;
                          description
                            "IPFRR Topology DR entry";
                        }
    
                        leaf poison {
                          type boolean;
                          description
                            "IPFRR Topology rSPT poison";
                        }
                      }  // list ipfrr-topo
                    }  // list topology
                  }  // container topologies
                }  // container fast-reroute
              }  // container default-vrf
    
              leaf process-name {
                type xr:Cisco-ios-xr-string;
                description "OSPF process";
              }
            }  // list process
          }  // container processes
        }  // container ospf
      }  // module Cisco-IOS-XR-ipv4-ospf-oper
    

© 2024 YumaWorks, Inc. All rights reserved.